{"version":3,"file":"main.js","mappings":"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AAe,EAAE,IAAI;EACrBg4C,SAAS,EAAE,KAAK;EAChB/5J,OAAO,EAAE6Q,6DAAqC;EAC9CpX,SAAS,EAAE,gBAAgB;EAC3B0B,OAAO,EAAE,iCAAiC;EAC1C+d,iBAAiB,EAAE,sDAAsD;EACzElmB,GAAG,EAAE;IACH;IACAC,QAAQ,EAAE,4FAA4F;IACtGS,WAAW,EAAE,iCAAiC;IAC9CC,qBAAqB,EAAE,iCAAiC;IACxDR,SAAS,EAAE,CAAC,sFAAsF,EAAE,gBAAgB,CAAC;IACrHJ,SAAS,EAAE,uFAAuF;IAClGU,QAAQ,EAAE;GACX;EACDJ,GAAG,EAAE;IACHC,IAAI,EAAE,uDAAuD;IAC7DiiB,KAAK,EAAE;GACR;EACDlK,WAAW,EAAE;IACXD,kBAAkB,EAAE;;CAEvB;;;;;;;;;;;;;;;;;AC7B8C;AAGF;AACY;AAEzD,IAAI37B,6EAAsB,EAAE;EAC1BuqL,6DAAc,EAAE;;AAGlBC,sEAAA,EAAwB,CAACE,eAAe,CAACp5J,sDAAS,CAAC;;;;;;;;;;ACVnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;ACvSA","sources":["./src/app/account/account.component.html","./src/app/account/account.component.ts","./src/app/account/account.module.ts","./src/app/account/activation/accountActivation.component.ts","./src/app/account/activation/accountActivation.component.html","./src/app/account/activation/dob.component.ts","./src/app/account/activation/dob.component.html","./src/app/account/activation/model/ActivationType.ts","./src/app/account/activation/preregActivation.component.ts","./src/app/account/activation/PreregActivation.component.html","./src/app/account/activation/registrantActivation.component.ts","./src/app/account/activation/registrantActivation.component.html","./src/app/account/activation/studentActivation.component.ts","./src/app/account/activation/studentActivation.component.html","./src/app/account/activation/technician-confirmation.component.html","./src/app/account/activation/technician-confirmation.component.ts","./src/app/account/activation/technicianActivation.component.ts","./src/app/account/activation/technicianActivation.component.html","./src/app/account/address.component.ts","./src/app/account/address.component.html","./src/app/account/addressEdit.component.ts","./src/app/account/addressEdit.component.html","./src/app/account/addressEditable.component.ts","./src/app/account/addressEditable.component.html","./src/app/account/addressSearch.component.ts","./src/app/account/addressSearch.component.html","./src/app/account/applicant.component.ts","./src/app/account/applicant.component.html","./src/app/account/browser-dialog/browser-dialog.component.ts","./src/app/account/browser-dialog/browser-dialog.component.html","./src/app/account/commsPreferences.component.ts","./src/app/account/commsPreferences.component.html","./src/app/account/contact.component.html","./src/app/account/contact.component.ts","./src/app/account/contactEdit.component.ts","./src/app/account/contactEdit.component.html","./src/app/account/contactEditable.component.ts","./src/app/account/contactEditable.component.html","./src/app/account/edi.component.ts","./src/app/account/edi.component.html","./src/app/account/ediSummary.component.html","./src/app/account/ediSummary.component.ts","./src/app/account/emailConfirmation.component.ts","./src/app/account/emailConfirmation.component.html","./src/app/account/hasCheckedRegistrationDialog.component.ts","./src/app/account/hasCheckedRegistrationDialog.component.html","./src/app/account/login.component.ts","./src/app/account/login.component.html","./src/app/account/model/Address.ts","./src/app/account/model/Contact.ts","./src/app/account/model/LoggedInState.ts","./src/app/account/model/NotificationType.ts","./src/app/account/model/SaveState.ts","./src/app/account/model/User.ts","./src/app/account/notifications/notificationContent.component.ts","./src/app/account/notifications/notificationContent.component.html","./src/app/account/notifications/notifications.component.ts","./src/app/account/notifications/notifications.component.html","./src/app/account/preferenceDialog.component.ts","./src/app/account/preferenceDialog.component.html","./src/app/account/preferenceEditable.component.ts","./src/app/account/preferenceEditable.component.html","./src/app/account/service/account.service.ts","./src/app/account/service/edi.service.ts","./src/app/account/signinFaq.component.ts","./src/app/account/signinFaq.component.html","./src/app/account/userBadge.component.ts","./src/app/account/userBadge.component.html","./src/app/app-config.ts","./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/core/branding.component.ts","./src/app/core/branding.component.html","./src/app/core/core.module.ts","./src/app/core/diagnostics.component.ts","./src/app/core/diagnostics.component.html","./src/app/core/model/BannerState.ts","./src/app/core/model/LogLevel.ts","./src/app/core/model/UserActivity.ts","./src/app/core/model/paymentType.ts","./src/app/core/nav.component.ts","./src/app/core/nav.component.html","./src/app/core/notFound.component.ts","./src/app/core/notFound.component.html","./src/app/core/privacyPolicy.component.ts","./src/app/core/privacyPolicy.component.html","./src/app/core/reviewerDashboard.component.ts","./src/app/core/reviewerDashboard.component.html","./src/app/core/service/AppInsight/app-insight.service.ts","./src/app/core/service/CustomErrorHandler.ts","./src/app/core/service/MSALInterceptorExtended.ts","./src/app/core/service/assessmentRegistration.service.ts","./src/app/core/service/assessmentReport.service.ts","./src/app/core/service/auth.service.ts","./src/app/core/service/ccps.service.ts","./src/app/core/service/dev.service.ts","./src/app/core/service/finalDeclaration.service.ts","./src/app/core/service/independentPrescriber.service.ts","./src/app/core/service/layout.service.ts","./src/app/core/service/log.service.ts","./src/app/core/service/maintenanceMessage.service.ts","./src/app/core/service/prereg.service.ts","./src/app/core/service/prereg/currentApplication.service.ts","./src/app/core/service/public.service.ts","./src/app/core/service/registration.service.ts","./src/app/core/service/renewal.service.ts","./src/app/core/service/returnToRegister.service.ts","./src/app/core/service/revalidation.service.ts","./src/app/core/service/review.service.ts","./src/app/core/service/service.base.ts","./src/app/core/service/student.service.ts","./src/app/core/service/technician.service.ts","./src/app/core/service/tracking.service.ts","./src/app/core/service/updater.service.ts","./src/app/core/service/upload.service.ts","./src/app/core/service/voluntaryRemoval.service.ts","./src/app/core/tooltip/tooltip.component.ts","./src/app/core/tooltip/tooltip.component.html","./src/app/core/tooltip/tooltip.directive.ts","./src/app/core/tooltip/tooltip.module.ts","./src/app/core/tooltip/tooltip.service.ts","./src/app/core/tooltip/tooltipContainer.component.html","./src/app/core/tooltip/tooltipContainer.component.ts","./src/app/core/tooltip/tooltipContext.directive.ts","./src/app/dashboard/studentDashboard.component.ts","./src/app/dashboard/studentDashboard.component.html","./src/app/dynamic/dynamic.module.ts","./src/app/dynamic/followupQuestion.component.ts","./src/app/dynamic/followupQuestion.component.html","./src/app/dynamic/formAlternative.component.ts","./src/app/dynamic/formAlternative.component.html","./src/app/dynamic/formQuestion.component.ts","./src/app/dynamic/formQuestion.component.html","./src/app/dynamic/formQuestionControl.component.ts","./src/app/dynamic/formQuestionControl.component.html","./src/app/dynamic/model/AnswerType.ts","./src/app/dynamic/model/Form.ts","./src/app/dynamic/model/FormGroupType.ts","./src/app/dynamic/model/FormQuestion.ts","./src/app/dynamic/model/FormType.ts","./src/app/dynamic/service/FormValidator.ts","./src/app/dynamic/service/formValidationService.ts","./src/app/guard/AccountActivation.guard.ts","./src/app/guard/CanDeactivate.guard.ts","./src/app/guard/Letter.guard.ts","./src/app/guard/LoggedInOnly.guard.ts","./src/app/guard/NotRevalidationExempt.guard.ts","./src/app/guard/PreregOnly.guard.ts","./src/app/guard/RegistrantsOnly.guard.ts","./src/app/guard/ReviewersOnly.guard.ts","./src/app/guard/StudentsOnly.guard.ts","./src/app/guard/TechnicianApplicantOnly.guard.ts","./src/app/guard/UserLoaded.guard.ts","./src/app/guard/preregAssessmentRegistration.guard.ts","./src/app/home.component.html","./src/app/home.component.ts","./src/app/payment/model/CollectionMethod.ts","./src/app/payment/model/Payment.ts","./src/app/payment/model/PaymentChannel.ts","./src/app/payment/model/PaymentMethod.ts","./src/app/payment/model/PaymentStatus.ts","./src/app/payment/receipt.component.html","./src/app/payment/receipt.component.ts","./src/app/payment/receipts.component.ts","./src/app/payment/receipts.component.html","./src/app/payment/service/payment.service.ts","./src/app/prereg/assessment-registration/assessmentRegistrationApplication.component.ts","./src/app/prereg/assessment-registration/assessmentRegistrationApplication.component.html","./src/app/prereg/assessment-registration/model/AssessmentRegistration.ts","./src/app/prereg/assessment-registration/model/AssessmentRegistrationApplicationForm.ts","./src/app/prereg/assessment-registration/model/AssessmentRegistrationStep.ts","./src/app/prereg/assessment-registration/steps/declarations/assessmentRegistrationDeclaration.component.ts","./src/app/prereg/assessment-registration/steps/declarations/assessmentRegistrationDeclaration.component.html","./src/app/prereg/assessment-registration/steps/payment/assessmentRegistrationPaymentStep.component.ts","./src/app/prereg/assessment-registration/steps/payment/assessmentRegistrationPaymentStep.component.html","./src/app/prereg/assessment-registration/steps/personalDetails/assessmentRegistrationPersonalDetails.component.ts","./src/app/prereg/assessment-registration/steps/personalDetails/assessmentRegistrationPersonalDetails.component.html","./src/app/prereg/assessment-registration/steps/regulations/assessmentRegistrationRegulationStep.component.ts","./src/app/prereg/assessment-registration/steps/regulations/assessmentRegistrationRegulationStep.component.html","./src/app/prereg/assessment-registration/steps/review/assessmentRegistrationReview.component.ts","./src/app/prereg/assessment-registration/steps/review/assessmentRegistrationReview.component.html","./src/app/prereg/assessment-registration/steps/review/assessmentRegistrationReviewStep.component.ts","./src/app/prereg/assessment-registration/steps/review/assessmentRegistrationReviewStep.component.html","./src/app/prereg/assessment-registration/steps/submit/assessmentRegistrationSubmit.component.ts","./src/app/prereg/assessment-registration/steps/submit/assessmentRegistrationSubmit.component.html","./src/app/prereg/assessment-registration/steps/supportingDocuments/assessmentRegistrationSupportingDocumentsStep.component.ts","./src/app/prereg/assessment-registration/steps/supportingDocuments/assessmentRegistrationSupportingDocumentsStep.component.html","./src/app/prereg/assessment-report/assessmentReport.component.ts","./src/app/prereg/assessment-report/assessmentReport.component.html","./src/app/prereg/assessment-report/models/AssessmentApplicationStatus.ts","./src/app/prereg/assessment-report/models/AssessmentReport.ts","./src/app/prereg/assessment-report/models/AssessmentReportApplicationForm.ts","./src/app/prereg/assessment-report/models/AssessmentReportStep.ts","./src/app/prereg/assessment-report/steps/countersigning/assessmentReportCountersigningStep.component.ts","./src/app/prereg/assessment-report/steps/countersigning/assessmentReportCountersigningStep.component.html","./src/app/prereg/assessment-report/steps/declaration/assessmentReportDeclarationSummary.component.ts","./src/app/prereg/assessment-report/steps/declaration/assessmentReportDeclarationSummary.component.html","./src/app/prereg/assessment-report/steps/declaration/assessmentReportFtpDeclarationStep.component.ts","./src/app/prereg/assessment-report/steps/declaration/assessmentReportFtpDeclarationStep.component.html","./src/app/prereg/assessment-report/steps/declaration/assessmentReportOverallDeclarationStep.component.ts","./src/app/prereg/assessment-report/steps/declaration/assessmentReportOverallDeclarationStep.component.html","./src/app/prereg/assessment-report/steps/review/assessmentReportReview.component.ts","./src/app/prereg/assessment-report/steps/review/assessmentReportReview.component.html","./src/app/prereg/assessment-report/steps/review/assessmentReportReviewStep.component.ts","./src/app/prereg/assessment-report/steps/review/assessmentReportReviewStep.component.html","./src/app/prereg/assessment-report/steps/submit/assessmentReportSubmitStep.component.ts","./src/app/prereg/assessment-report/steps/submit/assessmentReportSubmitStep.component.html","./src/app/prereg/assessment-report/steps/temporaryRegistration/assessmentReportTemporaryRegistrationStep.component.ts","./src/app/prereg/assessment-report/steps/temporaryRegistration/assessmentReportTemporaryRegistrationStep.component.html","./src/app/prereg/assessment-report/steps/training/assessmentReportConfirmTrainingStep.component.ts","./src/app/prereg/assessment-report/steps/training/assessmentReportConfirmTrainingStep.component.html","./src/app/prereg/assessment-report/steps/training/assessmentReportTraineePlacement.component.ts","./src/app/prereg/assessment-report/steps/training/assessmentReportTraineePlacement.component.html","./src/app/prereg/final-declaration/finalDeclaration.component.ts","./src/app/prereg/final-declaration/finalDeclaration.component.html","./src/app/prereg/final-declaration/model/FinalDeclaration.ts","./src/app/prereg/final-declaration/model/FinalDeclarationApplicationForm.ts","./src/app/prereg/final-declaration/model/FinalDeclarationStep.ts","./src/app/prereg/final-declaration/steps/countersigning/finalDeclarationCountersigningStep.component.ts","./src/app/prereg/final-declaration/steps/countersigning/finalDeclarationCountersigningStep.component.html","./src/app/prereg/final-declaration/steps/declaration/finalDeclarationFtpStep.component.ts","./src/app/prereg/final-declaration/steps/declaration/finalDeclarationFtpStep.component.html","./src/app/prereg/final-declaration/steps/declaration/finalDeclarationOverallConfirmationStep.component.ts","./src/app/prereg/final-declaration/steps/declaration/finalDeclarationOverallConfirmationStep.component.html","./src/app/prereg/final-declaration/steps/declaration/finalDeclarationSummaryStep.component.ts","./src/app/prereg/final-declaration/steps/declaration/finalDeclarationSummaryStep.component.html","./src/app/prereg/final-declaration/steps/review/finalDeclarationReview.component.ts","./src/app/prereg/final-declaration/steps/review/finalDeclarationReview.component.html","./src/app/prereg/final-declaration/steps/review/finalDeclarationReviewStep.component.ts","./src/app/prereg/final-declaration/steps/review/finalDeclarationReviewStep.component.html","./src/app/prereg/final-declaration/steps/submit/finalDeclarationSubmitStep.component.ts","./src/app/prereg/final-declaration/steps/submit/finalDeclarationSubmitStep.component.html","./src/app/prereg/final-declaration/steps/temporaryRegistration/finalDeclarationTemporaryRegistrationStep.component.ts","./src/app/prereg/final-declaration/steps/temporaryRegistration/finalDeclarationTemporaryRegistrationStep.component.html","./src/app/prereg/final-declaration/steps/training/finalDeclarationConfirmTrainingStep.component.ts","./src/app/prereg/final-declaration/steps/training/finalDeclarationConfirmTrainingStep.component.html","./src/app/prereg/final-declaration/steps/training/finalDeclarationTraineePlacement.component.ts","./src/app/prereg/final-declaration/steps/training/finalDeclarationTraineePlacement.component.html","./src/app/prereg/firstYearPayment.component.ts","./src/app/prereg/firstYearPayment.component.html","./src/app/prereg/model/ApplicationFormMode.ts","./src/app/prereg/model/ApplicationStatus.ts","./src/app/prereg/model/CountersignatureOutcome.ts","./src/app/prereg/model/FinalTrainingReport.ts","./src/app/prereg/model/RegApplication.ts","./src/app/prereg/model/RegApplicationForm.ts","./src/app/prereg/model/RegApplicationStep.ts","./src/app/prereg/model/TraineeReportType.ts","./src/app/prereg/pastApplication.component.ts","./src/app/prereg/pastApplication.component.html","./src/app/prereg/prereg.component.ts","./src/app/prereg/prereg.component.html","./src/app/prereg/prereg.module.ts","./src/app/prereg/prereg.routing.module.ts","./src/app/prereg/preregDashboard.component.ts","./src/app/prereg/preregDashboard.component.html","./src/app/prereg/regApplication.component.ts","./src/app/prereg/regApplication.component.html","./src/app/prereg/steps/countersigning/countersigningStep.component.ts","./src/app/prereg/steps/countersigning/countersigningStep.component.html","./src/app/prereg/steps/declaration/declarationSummary.component.ts","./src/app/prereg/steps/declaration/declarationSummary.component.html","./src/app/prereg/steps/declaration/ftpDeclarationStep.component.ts","./src/app/prereg/steps/declaration/ftpDeclarationStep.component.html","./src/app/prereg/steps/declaration/overallDeclarationStep.component.ts","./src/app/prereg/steps/declaration/overallDeclarationStep.component.html","./src/app/prereg/steps/equalityDiversityStep.component.ts","./src/app/prereg/steps/equalityDiversityStep.component.html","./src/app/prereg/steps/guidance/guidance.component.ts","./src/app/prereg/steps/guidance/guidance.component.html","./src/app/prereg/steps/letterStep.component.ts","./src/app/prereg/steps/letterStep.component.html","./src/app/prereg/steps/letterSummary.component.html","./src/app/prereg/steps/letterSummary.component.ts","./src/app/prereg/steps/paymentStep.component.ts","./src/app/prereg/steps/paymentStep.component.html","./src/app/prereg/steps/personalDetailsStep.component.ts","./src/app/prereg/steps/personalDetailsStep.component.html","./src/app/prereg/steps/regApplicationReview.component.ts","./src/app/prereg/steps/regApplicationReview.component.html","./src/app/prereg/steps/reviewStep.component.ts","./src/app/prereg/steps/reviewStep.component.html","./src/app/prereg/steps/sittingConfirmation/sittingConfirmationStep.component.ts","./src/app/prereg/steps/sittingConfirmation/sittingConfirmationStep.component.html","./src/app/prereg/steps/submitStep.component.ts","./src/app/prereg/steps/submitStep.component.html","./src/app/prereg/steps/supportingDocumentsStep.component.ts","./src/app/prereg/steps/supportingDocumentsStep.component.html","./src/app/prereg/steps/training/confirmTrainingStep.component.ts","./src/app/prereg/steps/training/confirmTrainingStep.component.html","./src/app/prereg/steps/training/traineeAssessment.component.html","./src/app/prereg/steps/training/traineeAssessment.component.ts","./src/app/prereg/steps/training/traineePlacement.component.ts","./src/app/prereg/steps/training/traineePlacement.component.html","./src/app/registration/applicationsDashboard.component.ts","./src/app/registration/applicationsDashboard.component.html","./src/app/registration/assessment-report/assessmentCountersignResponse.component.ts","./src/app/registration/assessment-report/assessmentCountersignResponse.component.html","./src/app/registration/ccps/ccps.component.ts","./src/app/registration/ccps/ccps.component.html","./src/app/registration/ccps/model/CCPSDetails.ts","./src/app/registration/ccps/model/ccpsApplication.ts","./src/app/registration/ccps/model/ccpsApplicationStep.ts","./src/app/registration/ccps/model/ccpsForm.ts","./src/app/registration/ccps/model/initialPharmacyQualificationDetail.ts","./src/app/registration/ccps/steps/ccps-declarations/ccps-declarations.component.ts","./src/app/registration/ccps/steps/ccps-declarations/ccps-declarations.component.html","./src/app/registration/ccps/steps/ccps-edi/ccps-edi.component.ts","./src/app/registration/ccps/steps/ccps-edi/ccps-edi.component.html","./src/app/registration/ccps/steps/ccps-guidance/ccps-guidance.component.ts","./src/app/registration/ccps/steps/ccps-guidance/ccps-guidance.component.html","./src/app/registration/ccps/steps/ccps-personal-details/ccps-personal-details.component.ts","./src/app/registration/ccps/steps/ccps-personal-details/ccps-personal-details.component.html","./src/app/registration/ccps/steps/ccps-review/ccps-review.component.ts","./src/app/registration/ccps/steps/ccps-review/ccps-review.component.html","./src/app/registration/ccps/steps/ccps-review/ccpsApplicationReview.component.ts","./src/app/registration/ccps/steps/ccps-review/ccpsApplicationReview.component.html","./src/app/registration/ccps/steps/ftp-declarations/declarationSummary.component.ts","./src/app/registration/ccps/steps/ftp-declarations/declarationSummary.component.html","./src/app/registration/ccps/steps/ftp-declarations/ftp-declarations.component.ts","./src/app/registration/ccps/steps/ftp-declarations/ftp-declarations.component.html","./src/app/registration/ccps/steps/initial-pharmacy-qualification-details/initial-pharmacy-qualification-details.component.ts","./src/app/registration/ccps/steps/initial-pharmacy-qualification-details/initial-pharmacy-qualification-details.component.html","./src/app/registration/ccps/steps/initial-pharmacy-qualification-details/training-details/training-details.component.ts","./src/app/registration/ccps/steps/initial-pharmacy-qualification-details/training-details/training-details.component.html","./src/app/registration/ccps/steps/overseas-regular-details/overseas-regular-details.component.ts","./src/app/registration/ccps/steps/overseas-regular-details/overseas-regular-details.component.html","./src/app/registration/ccps/steps/payment/payment.component.ts","./src/app/registration/ccps/steps/payment/payment.component.html","./src/app/registration/countersign.component.ts","./src/app/registration/countersign.component.html","./src/app/registration/final-declaration/finalDeclarationCountersignResponse.component.ts","./src/app/registration/final-declaration/finalDeclarationCountersignResponse.component.html","./src/app/registration/independent-precriber/independentPrescriberApplication.component.ts","./src/app/registration/independent-precriber/independentPrescriberApplication.component.html","./src/app/registration/independent-precriber/model/IndependentPrescriberApplication.ts","./src/app/registration/independent-precriber/model/IndependentPrescriberApplicationStep.ts","./src/app/registration/independent-precriber/model/IndependentPrescriberForm.ts","./src/app/registration/independent-precriber/steps/counter-signature-step/counter-signature-step.component.ts","./src/app/registration/independent-precriber/steps/counter-signature-step/counter-signature-step.component.html","./src/app/registration/independent-precriber/steps/declarations-step/declarations-step.component.ts","./src/app/registration/independent-precriber/steps/declarations-step/declarations-step.component.html","./src/app/registration/independent-precriber/steps/edi-step/edi-step.component.ts","./src/app/registration/independent-precriber/steps/edi-step/edi-step.component.html","./src/app/registration/independent-precriber/steps/final-review-step/independentPrescriberApplicationFinalReview.component.ts","./src/app/registration/independent-precriber/steps/final-review-step/independentPrescriberApplicationFinalReview.component.html","./src/app/registration/independent-precriber/steps/payment-step/payment-step.component.ts","./src/app/registration/independent-precriber/steps/payment-step/payment-step.component.html","./src/app/registration/independent-precriber/steps/qualification-step/qualification-step.component.ts","./src/app/registration/independent-precriber/steps/qualification-step/qualification-step.component.html","./src/app/registration/independent-prescriber-mentor/independentPrescriberMentorCountersignin.component.ts","./src/app/registration/independent-prescriber-mentor/independentPrescriberMentorCountersignin.component.html","./src/app/registration/learningContractResponse.component.ts","./src/app/registration/learningContractResponse.component.html","./src/app/registration/letter.component.ts","./src/app/registration/letter.component.html","./src/app/registration/letter/assessment-results/assessmentAttemptPassLetter.component.html","./src/app/registration/letter/assessment-results/assessmentAttemptPassLetter.component.ts","./src/app/registration/letter/assessment-results/assessmentFirstAndSecondAttemptFailLetter.component.html","./src/app/registration/letter/assessment-results/assessmentFirstAndSecondAttemptFailLetter.component.ts","./src/app/registration/letter/assessment-results/assessmentThirdAttemptFailLetter.component.html","./src/app/registration/letter/assessment-results/assessmentThirdAttemptFailLetter.component.ts","./src/app/registration/letter/assessmentApproveLetter.component.html","./src/app/registration/letter/assessmentApproveLetter.component.ts","./src/app/registration/letter/letterFooter.component.html","./src/app/registration/letter/letterFooter.component.ts","./src/app/registration/letter/letterHeader.component.html","./src/app/registration/letter/letterHeader.component.ts","./src/app/registration/letter/nor.component.ts","./src/app/registration/letter/nor.component.html","./src/app/registration/letter/noticeOfEntry.component.ts","./src/app/registration/letter/noticeOfEntry.component.html","./src/app/registration/letter/noticeOfIntendedRemoval.component.ts","./src/app/registration/letter/noticeOfIntendedRemoval.component.html","./src/app/registration/letter/noticeOfRemediation.component.ts","./src/app/registration/letter/noticeOfRemediation.component.html","./src/app/registration/letter/renewalCardLetter.component.ts","./src/app/registration/letter/renewalCardLetter.component.html","./src/app/registration/letter/renewalDDLetter.component.html","./src/app/registration/letter/renewalDDLetter.component.ts","./src/app/registration/letter/renewalLetter.component.ts","./src/app/registration/letter/renewalLetter.component.html","./src/app/registration/letter/trainingRecord.component.ts","./src/app/registration/letter/trainingRecord.component.html","./src/app/registration/letter/vrConfirmationLetter.component.html","./src/app/registration/letter/vrConfirmationLetter.component.ts","./src/app/registration/model/AnnotationType.ts","./src/app/registration/model/FormScope.ts","./src/app/registration/model/IndependentPrescriberData.ts","./src/app/registration/model/LetterType.ts","./src/app/registration/model/PremisesSearchParams.ts","./src/app/registration/model/RegisterSearchParams.ts","./src/app/registration/model/Registrant.ts","./src/app/registration/model/RegistrantStatus.ts","./src/app/registration/model/RegistrantType.ts","./src/app/registration/registrantBadge.component.ts","./src/app/registration/registrantBadge.component.html","./src/app/registration/registrantDashboard.component.ts","./src/app/registration/registrantDashboard.component.html","./src/app/registration/registration.component.ts","./src/app/registration/registration.component.html","./src/app/registration/registration.module.ts","./src/app/registration/restorationFeePayment.component.ts","./src/app/registration/restorationFeePayment.component.html","./src/app/registration/return-to-register/model/FtPDeclaration.ts","./src/app/registration/return-to-register/model/ReturnToRegister.ts","./src/app/registration/return-to-register/model/ReturnToRegisterApplicationForm.ts","./src/app/registration/return-to-register/model/ReturnToRegisterDetails.ts","./src/app/registration/return-to-register/model/ReturnToRegisterStep.ts","./src/app/registration/return-to-register/return-to-register-application.component.ts","./src/app/registration/return-to-register/return-to-register-application.component.html","./src/app/registration/return-to-register/steps/application-declarations/application-declarations.component.ts","./src/app/registration/return-to-register/steps/application-declarations/application-declarations.component.html","./src/app/registration/return-to-register/steps/equality-diversity/equality-diversity.component.ts","./src/app/registration/return-to-register/steps/equality-diversity/equality-diversity.component.html","./src/app/registration/return-to-register/steps/ftp-declarations/declarationSummary.component.ts","./src/app/registration/return-to-register/steps/ftp-declarations/declarationSummary.component.html","./src/app/registration/return-to-register/steps/ftp-declarations/ftp-declarations-one.component.ts","./src/app/registration/return-to-register/steps/ftp-declarations/ftp-declarations-one.component.html","./src/app/registration/return-to-register/steps/ftp-declarations/ftp-declarations-two.component.ts","./src/app/registration/return-to-register/steps/ftp-declarations/ftp-declarations-two.component.html","./src/app/registration/return-to-register/steps/guidance/guidance.component.ts","./src/app/registration/return-to-register/steps/guidance/guidance.component.html","./src/app/registration/return-to-register/steps/letter-of-good-standing/letter-of-good-standing.component.ts","./src/app/registration/return-to-register/steps/letter-of-good-standing/letter-of-good-standing.component.html","./src/app/registration/return-to-register/steps/payment/rtr-payment-step.component.ts","./src/app/registration/return-to-register/steps/payment/rtr-payment-step.component.html","./src/app/registration/return-to-register/steps/personal-details/personal-details.component.ts","./src/app/registration/return-to-register/steps/personal-details/personal-details.component.html","./src/app/registration/return-to-register/steps/registration-details/registration-details.component.ts","./src/app/registration/return-to-register/steps/registration-details/registration-details.component.html","./src/app/registration/return-to-register/steps/revalidation-record-outstanding/revalidation-record-outstanding.component.ts","./src/app/registration/return-to-register/steps/revalidation-record-outstanding/revalidation-record-outstanding.component.html","./src/app/registration/return-to-register/steps/review/rtrApplicationReview.component.ts","./src/app/registration/return-to-register/steps/review/rtrApplicationReview.component.html","./src/app/registration/return-to-register/steps/review/rtrReviewStep.component.ts","./src/app/registration/return-to-register/steps/review/rtrReviewStep.component.html","./src/app/registration/voluntary-removal/model/VoluntaryRemovalApplication.ts","./src/app/registration/voluntary-removal/model/VoluntaryRemovalApplicationForm.ts","./src/app/registration/voluntary-removal/model/VoluntaryRemovalApplicationStep.ts","./src/app/registration/voluntary-removal/steps/vr-application-declarations-step/vr-application-declarations-step.component.ts","./src/app/registration/voluntary-removal/steps/vr-application-declarations-step/vr-application-declarations-step.component.html","./src/app/registration/voluntary-removal/steps/vr-application-review-step/vr-application-review-step.component.ts","./src/app/registration/voluntary-removal/steps/vr-application-review-step/vr-application-review-step.component.html","./src/app/registration/voluntary-removal/steps/vr-application-review-step/vr-application-review.component.ts","./src/app/registration/voluntary-removal/steps/vr-application-review-step/vr-application-review.component.html","./src/app/registration/voluntary-removal/steps/vr-date-reason-for-removal-required-step/vr-date-reason-for-removal-required-step.component.ts","./src/app/registration/voluntary-removal/steps/vr-date-reason-for-removal-required-step/vr-date-reason-for-removal-required-step.component.html","./src/app/registration/voluntary-removal/steps/vr-edi-step/vr-edi-step.component.ts","./src/app/registration/voluntary-removal/steps/vr-edi-step/vr-edi-step.component.html","./src/app/registration/voluntary-removal/steps/vr-ftp-declaration-step/vr-declaration-summary.component.ts","./src/app/registration/voluntary-removal/steps/vr-ftp-declaration-step/vr-declaration-summary.component.html","./src/app/registration/voluntary-removal/steps/vr-ftp-declaration-step/vr-ftp-declaration-step.component.ts","./src/app/registration/voluntary-removal/steps/vr-ftp-declaration-step/vr-ftp-declaration-step.component.html","./src/app/registration/voluntary-removal/steps/vr-payment-step/vr-payment-step.component.ts","./src/app/registration/voluntary-removal/steps/vr-payment-step/vr-payment-step.component.html","./src/app/registration/voluntary-removal/voluntary-removal.component.ts","./src/app/registration/voluntary-removal/voluntary-removal.component.html","./src/app/renewal/declaration.component.ts","./src/app/renewal/declaration.component.html","./src/app/renewal/declarationQuestion.component.html","./src/app/renewal/declarationQuestion.component.ts","./src/app/renewal/model/CreditCard.ts","./src/app/renewal/model/RenewalPaymentMethod.ts","./src/app/renewal/model/RenewalStatus.ts","./src/app/renewal/model/WorldpayCartId.ts","./src/app/renewal/payment.component.ts","./src/app/renewal/payment.component.html","./src/app/renewal/renewal.component.ts","./src/app/renewal/renewal.component.html","./src/app/renewal/renewal.module.ts","./src/app/renewal/renewalFaq.component.ts","./src/app/renewal/renewalFaq.component.html","./src/app/renewal/renewalSplash.component.ts","./src/app/renewal/renewalSplash.component.html","./src/app/review/model/PerformanceIndicator.ts","./src/app/review/model/Review.ts","./src/app/review/model/ReviewStage.ts","./src/app/review/model/ReviewSummaryItem.ts","./src/app/shared/autocomplete.component.ts","./src/app/shared/autocomplete.component.html","./src/app/shared/banner.component.ts","./src/app/shared/banner.component.html","./src/app/shared/banner2.component.ts","./src/app/shared/banner2.component.html","./src/app/shared/carousel-nav.component.ts","./src/app/shared/carousel-nav.component.html","./src/app/shared/carousel.component.ts","./src/app/shared/carousel.component.html","./src/app/shared/collapsible.component.ts","./src/app/shared/collapsible.component.html","./src/app/shared/confirmDialog.component.ts","./src/app/shared/confirmDialog.html","./src/app/shared/daterange.component.ts","./src/app/shared/daterange.component.html","./src/app/shared/faq.component.ts","./src/app/shared/faq.component.html","./src/app/shared/faq.directive.ts","./src/app/shared/faq.service.ts","./src/app/shared/faqLink.directive.ts","./src/app/shared/fileUpload.component.ts","./src/app/shared/fileUpload.component.html","./src/app/shared/formLayout.component.ts","./src/app/shared/formLayout.component.html","./src/app/shared/formReview.component.ts","./src/app/shared/formReview.component.html","./src/app/shared/formSection.component.ts","./src/app/shared/formSection.component.html","./src/app/shared/formStepper/formStep.component.ts","./src/app/shared/formStepper/formStepper.component.ts","./src/app/shared/formStepper/formStepper.component.html","./src/app/shared/formStepper/formStepper.service.ts","./src/app/shared/formStepper/formStepperMenu.component.ts","./src/app/shared/formStepper/formStepperMenu.component.html","./src/app/shared/fullscreenSpinner.component.ts","./src/app/shared/gphc-icon.component.ts","./src/app/shared/gphc-icon.component.html","./src/app/shared/inputValidator.directive.ts","./src/app/shared/lowercase.directive.ts","./src/app/shared/model/AttachmentType.ts","./src/app/shared/model/DateFormat.ts","./src/app/shared/model/UploadStatus.ts","./src/app/shared/model/UploadType.ts","./src/app/shared/model/revalidation/RevalidationItemType.ts","./src/app/shared/model/revalidation/RevalidationSubmission.ts","./src/app/shared/model/revalidation/revalidationItemTypes.ts","./src/app/shared/model/student/CourseType.ts","./src/app/shared/model/student/LearningContractResponse.ts","./src/app/shared/model/student/Placement.ts","./src/app/shared/model/student/PreregApplication.ts","./src/app/shared/model/student/PreregApplicationForm.ts","./src/app/shared/model/student/PreregApplicationStep.ts","./src/app/shared/overlay.component.ts","./src/app/shared/overlay.component.html","./src/app/shared/pipe/CaseSplit.pipe.ts","./src/app/shared/pipe/DobDate.pipe.ts","./src/app/shared/pipe/FriendlyBoolean.pipe.ts","./src/app/shared/pipe/ItemTypeFilter.pipe.ts","./src/app/shared/pipe/Keys.pipe.ts","./src/app/shared/pipe/Reverse.pipe.ts","./src/app/shared/pipe/StripHtml.pipe.ts","./src/app/shared/pipe/Submission.pipe.ts","./src/app/shared/pipe/Time.pipe.ts","./src/app/shared/pipe/UtcDate.pipe.ts","./src/app/shared/progressIndicator.component.ts","./src/app/shared/progressIndicator.component.html","./src/app/shared/renewal/renewalMessage.component.ts","./src/app/shared/renewal/renewalMessage.component.html","./src/app/shared/revalidation/cpdEntry.component.ts","./src/app/shared/revalidation/cpdEntry.component.html","./src/app/shared/revalidation/cpdEntryAnnotations.component.html","./src/app/shared/revalidation/cpdEntryAnnotations.component.ts","./src/app/shared/revalidation/cpdEntryAnswers.component.ts","./src/app/shared/revalidation/cpdEntryAnswers.component.html","./src/app/shared/round-progress/round-progress.component.ts","./src/app/shared/round-progress/round-progress.config.ts","./src/app/shared/round-progress/round-progress.ease.ts","./src/app/shared/round-progress/round-progress.module.ts","./src/app/shared/round-progress/round-progress.service.ts","./src/app/shared/service/revalidation/revalidationLogic.service.ts","./src/app/shared/service/utils.ts","./src/app/shared/shared.module.ts","./src/app/shared/spinner.component.ts","./src/app/shared/sticky.component.ts","./src/app/shared/sticky.component.html","./src/app/shared/supportingDocuments/supportingDocuments.service.ts","./src/app/shared/supportingDocuments/supportingDocumentsItem.component.ts","./src/app/shared/supportingDocuments/supportingDocumentsItem.component.html","./src/app/shared/supportingDocuments/supportingDocumentsSummary.component.ts","./src/app/shared/supportingDocuments/supportingDocumentsSummary.component.html","./src/app/shared/textEditor.component.ts","./src/app/shared/textEditor.component.html","./src/app/shared/toolbar.component.html","./src/app/shared/toolbar.component.ts","./src/app/shared/user-address/userAddress.ts","./src/app/shared/utcDatePicker.component.ts","./src/app/shared/utcDatePicker.component.html","./src/app/shared/validationErrors.component.html","./src/app/shared/validationErrors.component.ts","./src/app/shared/wizardSteps.component.html","./src/app/shared/wizardSteps.component.ts","./src/app/technician/model/ApplicationProcessType.ts","./src/app/technician/model/ApplicationStatus.ts","./src/app/technician/model/CountersignatureOutcome.ts","./src/app/technician/model/EvidenceType.ts","./src/app/technician/model/PreviousRegistrationType.ts","./src/app/technician/model/Technician.ts","./src/app/technician/model/TechnicianApplication.ts","./src/app/technician/model/TechnicianApplicationForm.ts","./src/app/technician/model/TechnicianApplicationStep.ts","./src/app/technician/model/TechnicianQualificationType.ts","./src/app/technician/model/WorkExperience.ts","./src/app/technician/steps/applicationType/applicationTypeStep.component.ts","./src/app/technician/steps/applicationType/applicationTypeStep.component.html","./src/app/technician/steps/countersigning/countersigningStep.component.ts","./src/app/technician/steps/countersigning/countersigningStep.component.html","./src/app/technician/steps/dashboard/technicianDashboard.component.ts","./src/app/technician/steps/dashboard/technicianDashboard.component.html","./src/app/technician/steps/declaration/declarationSummary.component.ts","./src/app/technician/steps/declaration/declarationSummary.component.html","./src/app/technician/steps/declaration/ftpDeclarationStep.component.ts","./src/app/technician/steps/declaration/ftpDeclarationStep.component.html","./src/app/technician/steps/declaration/overallDeclarationStep.component.ts","./src/app/technician/steps/declaration/overallDeclarationStep.component.html","./src/app/technician/steps/educationDetails/educationDetailsStep.component.ts","./src/app/technician/steps/educationDetails/educationDetailsStep.component.html","./src/app/technician/steps/equalityDiversity/equalityDiversityStep.component.ts","./src/app/technician/steps/equalityDiversity/equalityDiversityStep.component.html","./src/app/technician/steps/firstYearPayment/firstYearPayment.component.ts","./src/app/technician/steps/firstYearPayment/firstYearPayment.component.html","./src/app/technician/steps/guidance/guidance.component.ts","./src/app/technician/steps/guidance/guidance.component.html","./src/app/technician/steps/payment/paymentStep.component.ts","./src/app/technician/steps/payment/paymentStep.component.html","./src/app/technician/steps/personalDetails/address.component.ts","./src/app/technician/steps/personalDetails/address.component.html","./src/app/technician/steps/personalDetails/addressEdit.component.ts","./src/app/technician/steps/personalDetails/addressEdit.component.html","./src/app/technician/steps/personalDetails/addressEditable.component.ts","./src/app/technician/steps/personalDetails/addressEditable.component.html","./src/app/technician/steps/personalDetails/addressSearch.component.ts","./src/app/technician/steps/personalDetails/addressSearch.component.html","./src/app/technician/steps/personalDetails/personalDetailsStep.component.ts","./src/app/technician/steps/personalDetails/personalDetailsStep.component.html","./src/app/technician/steps/prevApplicationAndRegistrations/previousApplicationsAndRegistrations.component.ts","./src/app/technician/steps/prevApplicationAndRegistrations/previousApplicationsAndRegistrations.component.html","./src/app/technician/steps/review/technicianApplicationReview.component.ts","./src/app/technician/steps/review/technicianApplicationReview.component.html","./src/app/technician/steps/review/technicianReviewStep.component.ts","./src/app/technician/steps/review/technicianReviewStep.component.html","./src/app/technician/steps/summary/educationDetailsSummary.component.ts","./src/app/technician/steps/summary/educationDetailsSummray.component.html","./src/app/technician/steps/summary/previousApplicationsAndRegistrationsSummary.component.ts","./src/app/technician/steps/summary/previousApplicationsAndRegistrationsSummary.component.html","./src/app/technician/steps/supportingDocuments/supportingDocumentsStep.component.ts","./src/app/technician/steps/supportingDocuments/supportingDocumentsStep.component.html","./src/app/technician/steps/workExperience/selectPremises.component.ts","./src/app/technician/steps/workExperience/selectPremises.component.html","./src/app/technician/steps/workExperience/selectRegistrant.component.ts","./src/app/technician/steps/workExperience/selectRegistrant.component.html","./src/app/technician/steps/workExperience/workExperience.component.ts","./src/app/technician/steps/workExperience/workExperience.component.html","./src/app/technician/steps/workExperience/workExperienceStep.component.ts","./src/app/technician/steps/workExperience/workExperienceStep.component.html","./src/app/technician/technician-routing.module.ts","./src/app/technician/technician.module.ts","./src/app/technician/technicianApplication.component.ts","./src/app/technician/technicianApplication.component.html","./src/app/technician/technicianDetails.component.ts","./src/app/technician/technicianDetails.component.html","./src/environments/environment.cblocal.ts","./src/environments/environment.dev.ts","./src/main.ts","./node_modules/moment/locale/ sync ^\\.\\/.*$","ignored|D:\\a\\1\\s\\node_modules\\sjcl|crypto"],"sourcesContent":["\r\n
\r\n

Account

\r\n

\r\n Change your address, update your contact details and account preferences\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { User } from './model/User';\r\n\r\n@Component({\r\n selector: 'app-account',\r\n moduleId: module.id,\r\n templateUrl: './account.component.html'\r\n})\r\nexport class AccountComponent implements OnInit {\r\n\r\n loading = false;\r\n user: User;\r\n\r\n constructor(private authService: AuthService) {\r\n }\r\n\r\n ngOnInit() {\r\n this.user = this.authService.user;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { SharedModule } from '../shared/shared.module';\r\nimport { RouterModule } from '@angular/router';\r\nimport { AddressComponent } from './address.component';\r\nimport { AddressEditableComponent } from './addressEditable.component';\r\nimport { AddressEditComponent } from './addressEdit.component';\r\nimport { AddressSearchComponent } from './addressSearch.component';\r\nimport { ContactEditableComponent } from './contactEditable.component';\r\nimport { ContactEditComponent } from './contactEdit.component';\r\nimport { ContactComponent } from './contact.component';\r\nimport { PreferenceEditableComponent } from './preferenceEditable.component';\r\nimport { AccountComponent } from './account.component';\r\nimport { EmailConfirmationComponent } from './emailConfirmation.component';\r\nimport { AccountActivationComponent } from './activation/accountActivation.component';\r\nimport { RegistrantActivationComponent } from './activation/registrantActivation.component';\r\nimport { StudentActivationComponent } from './activation/studentActivation.component';\r\nimport { PreferenceDialogComponent } from './preferenceDialog.component';\r\nimport { LoginComponent } from './login.component';\r\nimport { SigninFaqComponent } from './signinFaq.component';\r\nimport { AccountService } from './service/account.service';\r\nimport { MatStepperModule } from '@angular/material/stepper';\r\nimport { DobComponent } from './activation/dob.component';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { UserBadgeComponent } from './userBadge.component';\r\nimport { EdiComponent } from './edi.component';\r\nimport { EdiSummaryComponent } from './ediSummary.component';\r\nimport { ApplicantComponent } from './applicant.component';\r\nimport { NotificationsComponent } from './notifications/notifications.component';\r\nimport { NotificationContentComponent } from './notifications/notificationContent.component';\r\nimport { CommsPreferencesComponent } from './commsPreferences.component';\r\nimport { HasCheckedRegistrationDialogComponent } from './hasCheckedRegistrationDialog.component';\r\nimport { PreregActivationComponent } from './activation/preregActivation.component';\r\nimport { TechnicianActivationComponent } from './activation/technicianActivation.component';\r\nimport { TechnicianConfirmationComponent } from './activation/technician-confirmation.component';\r\nimport { BrowserDialogComponent } from './browser-dialog/browser-dialog.component';\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n SharedModule,\r\n ReactiveFormsModule,\r\n MatStepperModule,\r\n MatFormFieldModule,\r\n RouterModule\r\n ],\r\n declarations: [\r\n LoginComponent,\r\n AccountComponent,\r\n EmailConfirmationComponent,\r\n AccountActivationComponent,\r\n RegistrantActivationComponent,\r\n StudentActivationComponent,\r\n PreregActivationComponent,\r\n TechnicianActivationComponent,\r\n AddressEditableComponent,\r\n AddressEditComponent,\r\n AddressSearchComponent,\r\n ContactEditableComponent,\r\n ContactEditComponent,\r\n ContactComponent,\r\n PreferenceEditableComponent,\r\n PreferenceDialogComponent,\r\n AddressComponent,\r\n DobComponent,\r\n UserBadgeComponent,\r\n SigninFaqComponent,\r\n CommsPreferencesComponent,\r\n HasCheckedRegistrationDialogComponent,\r\n EdiComponent,\r\n ApplicantComponent,\r\n NotificationsComponent,\r\n NotificationContentComponent,\r\n EdiSummaryComponent,\r\n TechnicianConfirmationComponent,\r\n BrowserDialogComponent,\r\n ],\r\n exports: [\r\n AddressEditableComponent,\r\n AddressEditComponent,\r\n AddressSearchComponent,\r\n AddressComponent,\r\n CommsPreferencesComponent,\r\n HasCheckedRegistrationDialogComponent,\r\n ContactEditableComponent,\r\n ContactEditComponent,\r\n ContactComponent,\r\n UserBadgeComponent,\r\n EdiComponent,\r\n ApplicantComponent,\r\n SigninFaqComponent,\r\n CommsPreferencesComponent,\r\n NotificationsComponent,\r\n EdiSummaryComponent\r\n ]\r\n})\r\n\r\nexport class AccountModule { }\r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { ActivationType } from './model/ActivationType';\r\nimport { LayoutService } from '../../core/service/layout.service';\r\nimport { TechnicianActivation } from './model/TechnicianActivation';\r\nimport { LogService } from '../../core/service/log.service';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n templateUrl: './accountActivation.component.html',\r\n styleUrls: ['./accountActivation.scss']\r\n})\r\nexport class AccountActivationComponent implements OnInit {\r\n\r\n ActivationType = ActivationType;\r\n selectedRole;\r\n currentStep;\r\n activation: any;\r\n steps = [0, 1, 2, 3, 4];\r\n preregActivationDisabled = false;\r\n\r\n constructor(private layout: LayoutService) { }\r\n\r\n ngOnInit() {\r\n this.layout.setAccountMode(true);\r\n }\r\n\r\n navigateTo(step) {\r\n this.currentStep = step;\r\n if (step === 0) {\r\n this.selectedRole = undefined;\r\n }\r\n }\r\n /*\r\n setPreregActivationDisabled() {\r\n // disabled between 3pm on 25th June until 7am on 2nd July\r\n // NB months are zero-indexed\r\n const disabledFrom = new Date(2018, 5, 25, 15);\r\n const disabledTo = new Date(2018, 6, 2, 7);\r\n const now = new Date();\r\n\r\n this.preregActivationDisabled = now > disabledFrom && now < disabledTo;\r\n this.log.info('prereg activation disabled from', disabledFrom.toString());\r\n this.log.info('prereg activation disabled to', disabledTo.toString());\r\n this.log.info('now', now.toString());\r\n this.log.info('prereg activation disabled ?', this.preregActivationDisabled);\r\n }\r\n */\r\n selectRole(role: ActivationType) {\r\n this.selectedRole = role;\r\n switch (role) {\r\n case ActivationType.Technician:\r\n this.activation = {\r\n forenames: '',\r\n surname: '',\r\n middleName: '',\r\n dob: ''\r\n };\r\n break;\r\n case ActivationType.Registrant:\r\n this.activation = {\r\n registrationNumber: '',\r\n name: '',\r\n confirmed: false,\r\n dob: '',\r\n postcode: '',\r\n activationCode: ''\r\n };\r\n break;\r\n case ActivationType.Prereg:\r\n this.activation = {\r\n lastname: '',\r\n dob: '',\r\n qualification: undefined\r\n };\r\n break;\r\n case ActivationType.Student:\r\n this.activation = {\r\n lastname: '',\r\n dob: '',\r\n qualification: undefined\r\n };\r\n }\r\n this.currentStep = 1;\r\n }\r\n\r\n}\r\n","\r\n
\r\n

Account activation

\r\n

\r\n Follow the steps below to activate your account\r\n

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

Please select your role

\r\n
    \r\n
  • \r\n \r\n
  • \r\n
  • \r\n \r\n
  • \r\n\r\n
  • \r\n \r\n
  • \r\n
  • \r\n \r\n
  • \r\n
\r\n\r\n
\r\n\r\n
0\">\r\n
\r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n","import { Component, Output, EventEmitter } from \"@angular/core\";\r\nimport * as moment from \"moment\";\r\n\r\n@Component({\r\n moduleId: module.id,\r\n selector: \"app-dob\",\r\n templateUrl: \"./dob.component.html\"\r\n})\r\nexport class DobComponent {\r\n @Output() selected = new EventEmitter();\r\n yearSupplied = false;\r\n invalid = false;\r\n dob = {\r\n value: \"\",\r\n day: \"\",\r\n month: 0,\r\n year: \"\"\r\n };\r\n months = [\r\n { id: 0, name: \"Month\", days: 0 },\r\n { id: 1, name: \"January\", days: 31 },\r\n { id: 2, name: \"February\", days: 29 },\r\n { id: 3, name: \"March\", days: 31 },\r\n { id: 4, name: \"April\", days: 30 },\r\n { id: 5, name: \"May\", days: 31 },\r\n { id: 6, name: \"June\", days: 30 },\r\n { id: 7, name: \"July\", days: 31 },\r\n { id: 8, name: \"August\", days: 31 },\r\n { id: 9, name: \"September\", days: 30 },\r\n { id: 10, name: \"October\", days: 31 },\r\n { id: 11, name: \"November\", days: 30 },\r\n { id: 12, name: \"December\", days: 31 }\r\n ];\r\n\r\n isValid() {\r\n if (!this.dob.month) {\r\n return false;\r\n }\r\n if (!this.dob.day) {\r\n return false;\r\n }\r\n if (!this.dob.year) {\r\n return false;\r\n }\r\n\r\n const selectedMonth = this.months.filter(\r\n month => month.id === this.dob.month\r\n )[0];\r\n\r\n const day = parseInt(this.dob.day, 10);\r\n if (isNaN(day) || day < 1 || day > selectedMonth.days) {\r\n return false;\r\n }\r\n this.dob.day = day.toString();\r\n\r\n if (this.dob.year.length > 4) {\r\n return false;\r\n }\r\n const year = parseInt(this.dob.year, 10);\r\n if (isNaN(year) || year < 1900) {\r\n return false;\r\n }\r\n if (!this.IsUserEighteen()) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n IsUserEighteen(): boolean {\r\n const dobMoment = moment(\r\n this.dob.year + \"-\" + this.dob.month + \"-\" + this.dob.day,\r\n \"YYYY-MM-DD\"\r\n );\r\n const monthDiff = moment(moment()).diff(dobMoment, \"months\", true);\r\n return monthDiff >= 216; // number of months in 18 yrs;\r\n }\r\n\r\n yearEntered() {\r\n this.yearSupplied = true;\r\n this.validate();\r\n }\r\n\r\n validateMonth($event){\r\n this.dob.month =this.months[$event].id;\r\n this.validate();\r\n }\r\n validate() {\r\n this.invalid = !this.isValid();\r\n if (this.invalid) {\r\n this.selected.emit(undefined);\r\n } else {\r\n this.dob.value = `${this.dob.year}-${this.dob.month}-${this.dob.day}`;\r\n this.selected.emit(this.dob.value);\r\n }\r\n }\r\n\r\n entered() {\r\n if (!this.dob.month) {\r\n return false;\r\n }\r\n if (!this.dob.day) {\r\n return false;\r\n }\r\n if (!this.yearSupplied) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n}\r\n","
\r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n

\r\n Please check that your date of birth has been entered correctly, you must\r\n be at least 18 years old at the time you create your myGPhC account.\r\n

\r\n
\r\n\r\n
","export enum ActivationType {\r\n Student,\r\n Prereg,\r\n Registrant,\r\n Technician\r\n}\r\n","\r\nimport {throwError as observableThrowError} from 'rxjs';\r\nimport { Component, Input, OnInit, Output, EventEmitter, ViewChildren } from '@angular/core';\r\nimport { AccountService } from '../service/account.service';\r\nimport { StudentService } from '../../core/service/student.service';\r\nimport { User } from '../model/User';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { ConfirmDialogComponent } from '../../shared/confirmDialog.component';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { LogService } from '../../core/service/log.service';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\n\r\n\r\nimport { PreregActivation } from './model/PreregActivation';\r\nimport { Qualification } from '../../shared/model/student/Qualification';\r\nimport { CourseType } from '../../shared/model/student/CourseType';\r\n\r\nimport utils from '../../core/service/utils';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n selector: 'app-prereg-activation',\r\n templateUrl: './PreregActivation.component.html',\r\n styleUrls: ['./accountActivation.scss']\r\n})\r\nexport class PreregActivationComponent implements OnInit {\r\n\r\n activationFailed = false;\r\n loading = false;\r\n saving = false;\r\n @Input() activation: PreregActivation;\r\n @Input() set active(isActive) {\r\n if (isActive) {\r\n this.setFocus();\r\n }\r\n }\r\n\r\n CourseType = CourseType;\r\n courseTypes = [];\r\n selectedCourseType;\r\n coursesForSelectedCourseType = [];\r\n\r\n qualifications: Array = [];\r\n @Input() step = 1;\r\n @Output() stepChange = new EventEmitter();\r\n invalidDetails = false;\r\n\r\n @ViewChildren('focus') vc;\r\n\r\n serverErrors = [];\r\n\r\n constructor(private service: AccountService, private studentService: StudentService,\r\n private auth: AuthService, private dialog: MatDialog, private log: LogService) {\r\n }\r\n\r\n dobSelected(dob) {\r\n this.activation.dob = dob;\r\n }\r\n prev() {\r\n this.stepChange.emit(this.step - 1);\r\n }\r\n\r\n ngOnInit() {\r\n this.courseTypes = Object.keys(CourseType)\r\n .filter(key => typeof CourseType[key] !== 'number')\r\n .map(key => ({\r\n value: (CourseType[key] === 'MPharmS') ?\r\n 'MPharm (integrated / sandwich)' : CourseType[key], key: parseInt(key, 10)\r\n }));\r\n\r\n this.setFocus();\r\n this.studentService.getQualifications().subscribe(qualifications => {\r\n this.qualifications = qualifications;\r\n });\r\n }\r\n\r\n populateCourses() {\r\n this.activation.qualificationId = 0;\r\n if (this.selectedCourseType && this.selectedCourseType !== 'undefined') {\r\n this.coursesForSelectedCourseType = this.qualifications\r\n .filter(q => q.courseType === this.selectedCourseType.key)\r\n .sort((a, b) => {\r\n if (a > b) { return 1; } else { return -1; }\r\n });\r\n }\r\n\r\n }\r\n\r\n setFocus() {\r\n setTimeout(function () {\r\n if (this.vc.first) {\r\n this.vc.first.nativeElement.focus();\r\n }\r\n }.bind(this), 600);\r\n }\r\n\r\n activate() {\r\n this.loading = true;\r\n this.invalidDetails = false;\r\n\r\n this.service.verifyPrereg(this.activation).subscribe(data => {\r\n this.confirm(data.fullName).beforeClosed().subscribe(response => {\r\n if(!response) { this.loading = false; return false;}\r\n this.activatePrereg();\r\n })\r\n }, error => {\r\n this.loading = false;\r\n this.serverErrors = error.validationErrors;\r\n this.activationFailed = true;\r\n });\r\n\r\n\r\n }\r\n\r\n activatePrereg() {\r\n this.service.activatePrereg(this.activation).catch(response => {\r\n setTimeout(() => {\r\n this.loading = false;\r\n this.activationFailed = true;\r\n this.invalidDetails = true;\r\n if (response.status === 400 && response.validationErrors) {\r\n this.serverErrors = response.validationErrors;\r\n }\r\n this.setFocus();\r\n }, 300);\r\n return observableThrowError(response);\r\n }).subscribe(() => {\r\n this.loading = false;\r\n this.stepChange.emit(2);\r\n });\r\n }\r\n\r\n confirm(fullname) {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n title: `Confirm user details`,\r\n message: `\r\n

You will be logged in as:

\r\n

${fullname}

\r\n

Please select yes if you are happy with the supplied details.

\r\n `\r\n }\r\n });\r\n return dialogRef;\r\n }\r\n\r\n logout() {\r\n this.auth.logout();\r\n }\r\n\r\n}\r\n","
\r\n\r\n
\r\n

Foundation trainee details

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

Account activated

\r\n

Congratulations! You have successfully activated your pre-registration trainee account.

\r\n

To complete the process you must now sign out and back in again.

\r\n\r\n \r\n
\r\n\r\n
","\r\nimport {throwError as observableThrowError} from 'rxjs';\r\nimport { Component, Input, Output, EventEmitter, OnInit, ViewChildren } from '@angular/core';\r\nimport { AccountService } from '../service/account.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { LogService } from '../../core/service/log.service';\r\nimport 'rxjs/add/operator/catch';\r\nimport { RegistrantActivation } from './model/RegistrantActivation';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n selector: 'app-registrant-activation',\r\n templateUrl: './registrantActivation.component.html',\r\n styleUrls: ['./accountActivation.scss']\r\n})\r\nexport class RegistrantActivationComponent implements OnInit {\r\n\r\n loading = false;\r\n\r\n @Input() activation: RegistrantActivation;\r\n @Input() set active(isActive) {\r\n if (isActive) {\r\n this.setFocus();\r\n }\r\n }\r\n @Input('step') step;\r\n @Output() stepChange = new EventEmitter();\r\n @Output() activationChange = new EventEmitter();\r\n invalidRegistrationNumber = false;\r\n activationFailed = false;\r\n\r\n @ViewChildren('focus') vc;\r\n\r\n validationErrors = [];\r\n\r\n constructor(private service: AccountService,\r\n private auth: AuthService, private dialog: MatDialog, private log: LogService) {\r\n }\r\n\r\n dobSelected(dob) {\r\n this.activation.dob = dob;\r\n }\r\n\r\n ngOnInit() {\r\n this.activationChange.emit(this.activation);\r\n }\r\n\r\n setFocus() {\r\n setTimeout(function () {\r\n if (this.vc.first && this.vc.first.nativeElement) {\r\n this.vc.first.nativeElement.focus();\r\n }\r\n }.bind(this), 600);\r\n }\r\n\r\n clearErrors() {\r\n this.invalidRegistrationNumber = false;\r\n this.validationErrors = [];\r\n }\r\n\r\n verifyRegistrationNumber() {\r\n\r\n\r\n if (!this.activation.registrationNumber) { return; }\r\n this.loading = true;\r\n this.invalidRegistrationNumber = false;\r\n this.service.verifyRegistrationNumber(this.activation.registrationNumber)\r\n .catch(err => {\r\n if (err.status === 404) {\r\n setTimeout(() => {\r\n this.loading = false;\r\n this.invalidRegistrationNumber = true;\r\n this.setFocus();\r\n }, 100);\r\n }\r\n return observableThrowError(err);\r\n }).subscribe(name => {\r\n this.activation.name = name;\r\n this.stepChange.emit(2);\r\n this.activationChange.emit(this.activation);\r\n this.loading = false;\r\n this.setFocus();\r\n });\r\n }\r\n\r\n confirm() {\r\n this.activation.confirmed = true;\r\n this.setFocus();\r\n this.stepChange.emit(3);\r\n this.activationChange.emit(this.activation);\r\n }\r\n\r\n prev() {\r\n this.stepChange.emit(this.step - 1);\r\n }\r\n\r\n incorrect() {\r\n this.activation.confirmed = false;\r\n this.stepChange.emit(1);\r\n this.activation.registrationNumber = '';\r\n this.activationChange.emit(this.activation);\r\n this.setFocus();\r\n }\r\n\r\n activate() {\r\n this.loading = true;\r\n this.validationErrors = [];\r\n this.activationFailed = false;\r\n this.service.activateRegistration(this.activation).catch(response => {\r\n setTimeout(() => {\r\n this.loading = false;\r\n this.activationFailed = true;\r\n if (response.status === 400 && response.validationErrors) {\r\n this.validationErrors = response.validationErrors;\r\n }\r\n this.setFocus();\r\n }, 300);\r\n return observableThrowError(response);\r\n }).subscribe(() => {\r\n this.loading = false;\r\n this.stepChange.emit(4);\r\n });\r\n }\r\n\r\n logout() {\r\n this.auth.logout();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n

Verify your identity

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

\r\n The registration number you entered was not recognised.\r\n

\r\n
\r\n 0\">\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n

Confirm your identity

\r\n
\r\n

Your name is {{activation.name}}

\r\n

Is this correct ?

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

Registration details

\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n Activation failed.\r\n

Please check that you have entered the correct details.

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

Account activated

\r\n

Congratulations! You have successfully activated your account.

\r\n

To complete the process you must now sign out and back in again.

\r\n\r\n \r\n
\r\n\r\n
","\r\nimport { throwError as observableThrowError } from 'rxjs';\r\nimport { Component, Input, OnInit, Output, EventEmitter, ViewChildren } from '@angular/core';\r\nimport { AccountService } from '../service/account.service';\r\nimport { StudentService } from '../../core/service/student.service';\r\nimport { User } from '../model/User';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { ConfirmDialogComponent } from '../../shared/confirmDialog.component';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { LogService } from '../../core/service/log.service';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\n\r\n\r\nimport { StudentActivation } from './model/StudentActivation';\r\nimport { Qualification } from '../../shared/model/student/Qualification';\r\nimport { CourseType } from '../../shared/model/student/CourseType';\r\n\r\nimport utils from '../../core/service/utils';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n selector: 'app-student-activation',\r\n templateUrl: './studentActivation.component.html',\r\n styleUrls: ['./accountActivation.scss']\r\n})\r\nexport class StudentActivationComponent implements OnInit {\r\n\r\n activationFailed = false;\r\n loading = false;\r\n saving = false;\r\n @Input() activation: StudentActivation;\r\n @Input() set active(isActive) {\r\n if (isActive) {\r\n this.setFocus();\r\n }\r\n }\r\n\r\n CourseType = CourseType;\r\n courseTypes = [];\r\n selectedCourseType;\r\n coursesForSelectedCourseType = [];\r\n\r\n qualifications: Array = [];\r\n @Input() step = 1;\r\n @Output() stepChange = new EventEmitter();\r\n invalidDetails = false;\r\n\r\n @ViewChildren('focus') vc;\r\n\r\n serverErrors = [];\r\n\r\n constructor(private service: AccountService, private studentService: StudentService,\r\n private auth: AuthService, private dialog: MatDialog, private log: LogService) {\r\n }\r\n\r\n dobSelected(dob) {\r\n this.activation.dob = dob;\r\n }\r\n prev() {\r\n this.stepChange.emit(this.step - 1);\r\n }\r\n\r\n ngOnInit() {\r\n this.courseTypes = Object.keys(CourseType)\r\n .filter(key => typeof CourseType[key] !== 'number' && key !== '717750007')\r\n .map(key => ({\r\n value: CourseType[key], key: parseInt(key, 10)\r\n }));\r\n\r\n this.setFocus();\r\n this.studentService.getQualifications().subscribe(qualifications => {\r\n this.qualifications = qualifications;\r\n });\r\n }\r\n\r\n populateCourses() {\r\n this.activation.qualificationId = 0;\r\n if (this.selectedCourseType && this.selectedCourseType !== 'undefined') {\r\n this.coursesForSelectedCourseType = this.qualifications\r\n .filter(q => q.courseType === this.selectedCourseType.key)\r\n .sort((a, b) => {\r\n if (a > b) { return 1; } else { return -1; }\r\n });\r\n }\r\n\r\n }\r\n\r\n setFocus() {\r\n setTimeout(function () {\r\n if (this.vc.first) {\r\n this.vc.first.nativeElement.focus();\r\n }\r\n }.bind(this), 600);\r\n }\r\n\r\n activate() {\r\n this.loading = true;\r\n this.invalidDetails = false;\r\n\r\n this.service.verifyStudent(this.activation).subscribe(data => {\r\n this.confirm(data.fullName).beforeClosed().subscribe(response => {\r\n if (!response) { this.loading = false; return false; }\r\n this.activateStudent();\r\n });\r\n },\r\n error => {\r\n this.loading = false;\r\n this.serverErrors = error.validationErrors;\r\n this.activationFailed = true;\r\n });\r\n }\r\n\r\n activateStudent() {\r\n console.log('Activated account');\r\n this.service.activateStudent(this.activation).catch(response => {\r\n setTimeout(() => {\r\n this.loading = false;\r\n this.activationFailed = true;\r\n this.invalidDetails = true;\r\n if (response.status === 400 && response.validationErrors) {\r\n this.serverErrors = response.validationErrors;\r\n }\r\n this.setFocus();\r\n }, 300);\r\n return observableThrowError(response);\r\n }).subscribe(() => {\r\n this.loading = false;\r\n this.stepChange.emit(2);\r\n });\r\n }\r\n\r\n confirm(fullname) {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n title: `Confirm user details`,\r\n message: `\r\n

You will be logged in as:

\r\n

${fullname}

\r\n

Please select yes if you are happy with the supplied details.

\r\n `\r\n }\r\n });\r\n return dialogRef;\r\n }\r\n\r\n logout() {\r\n this.auth.logout();\r\n }\r\n\r\n}\r\n","
\r\n\r\n
\r\n

Student details

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

Account activated

\r\n

Congratulations! You have successfully activated your pre-registration trainee account.

\r\n

To complete the process you must now sign out and back in again.

\r\n\r\n \r\n
\r\n\r\n
","
\r\n\r\n\r\n \r\n
\r\n

Account activation

\r\n

\r\n Follow the steps below to activate your account\r\n

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

Please confirm your details

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
  • \r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
0\">\r\n
\r\n\r\n
\r\n

\r\n Your account is being confirmed, you will be logged out automatically\r\n when you have been confirmed.\r\n

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

\r\n Please contact the GPhC\r\n to update your details if they are incorrect.\r\n

\r\n\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 { AuthService } from '../../core/service/auth.service';\r\nimport { TechnicianService } from '../../core/service/technician.service';\r\nimport { TechnicianActivation } from './model/TechnicianActivation';\r\n\r\n@Component({\r\n selector: 'app-technician-confirmation',\r\n templateUrl: './technician-confirmation.component.html',\r\n styleUrls: ['./accountActivation.scss', './technician-confirmation.component.scss']\r\n})\r\nexport class TechnicianConfirmationComponent implements OnInit {\r\n\r\n steps = [0, 1];\r\n activation: TechnicianActivation;\r\n currentStep;\r\n selectedAnswer;\r\n loading = false;\r\n serverErrors;\r\n confirmationFailed = false;\r\n\r\n constructor(private auth: AuthService,\r\n private technicianService: TechnicianService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.loading = true;\r\n this.technicianService.getTechnicianDetails()\r\n .subscribe(technicianDetails => {\r\n this.activation = technicianDetails;\r\n this.loading = false;\r\n });\r\n }\r\n\r\n selectWhetherConfirmed(answer: boolean): void {\r\n this.selectedAnswer = answer;\r\n if (this.selectedAnswer) {\r\n this.technicianService.confirmTechnicianDetails(this.activation).subscribe(() => {\r\n setTimeout(() => {\r\n this.auth.logout();\r\n }, 3000);\r\n }, error => {\r\n this.confirmationFailed = true;\r\n this.serverErrors = error;\r\n });\r\n }\r\n this.currentStep = 1;\r\n }\r\n\r\n}\r\n","import { Component, Input, Output, EventEmitter, ViewChildren } from '@angular/core';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { Qualification } from '../../shared/model/student/Qualification';\r\nimport { TechnicianActivation } from './model/TechnicianActivation';\r\nimport { TechnicianService } from '../../core/service/technician.service';\r\nimport { throwError } from 'rxjs';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n selector: 'app-technician-activation',\r\n templateUrl: './technicianActivation.component.html',\r\n styleUrls: ['./accountActivation.scss']\r\n})\r\nexport class TechnicianActivationComponent {\r\n\r\n\r\n activationFailed = false;\r\n loading = false;\r\n saving = false;\r\n @Input() activation: TechnicianActivation;\r\n @Input() set active(isActive) {\r\n if (isActive) {\r\n this.setFocus();\r\n }\r\n }\r\n\r\n qualifications: Array = [];\r\n @Input() step = 1;\r\n @Output() stepChange = new EventEmitter();\r\n invalidDetails = false;\r\n\r\n @ViewChildren('focus') vc;\r\n\r\n serverErrors = [];\r\n\r\n constructor(private auth: AuthService,\r\n private service: TechnicianService\r\n ) {}\r\n\r\n dobSelected(dob) {\r\n this.activation.dob = dob;\r\n }\r\n\r\n setFocus() {\r\n setTimeout(function () {\r\n if (this.vc.first) {\r\n this.vc.first.nativeElement.focus();\r\n }\r\n }.bind(this), 600);\r\n }\r\n\r\n\r\n tempSignUp() {\r\n this.loading = true;\r\n this.service.tempSignUp(this.activation)\r\n .subscribe(() => {\r\n this.loading = false;\r\n this.stepChange.emit(2);\r\n },\r\n (error) => {\r\n setTimeout(() => {\r\n this.loading = false;\r\n this.activationFailed = true;\r\n this.invalidDetails = true;\r\n if (error.status === 400 && error.validationErrors) {\r\n this.serverErrors = error.validationErrors;\r\n }\r\n this.setFocus();\r\n }, 300);\r\n return throwError(error);\r\n });\r\n\r\n\r\n\r\n }\r\n\r\n logout() {\r\n this.auth.logout();\r\n }\r\n\r\n prev() {\r\n this.stepChange.emit(this.step - 1);\r\n }\r\n\r\n}\r\n","
\r\n\r\n
\r\n

Technician details

\r\n\r\n

\r\n Enter your name exactly as you would like it to appear on the register, \r\n see the \r\n application guidance document \r\n \r\n for further details.\r\n

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

A confirmation email has been sent

\r\n
\r\n\r\n
\r\n","import { Component, Input, ViewChildren,ViewChild, forwardRef, OnInit } from '@angular/core';\r\nimport { Address } from './model/Address';\r\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor, ControlContainer, NgForm } from '@angular/forms';\r\nimport { AccountService } from './service/account.service';\r\nimport { CountriesOfUK, getCountryName, HomeNationTypes, UK } from '../shared/user-address/userAddress';\r\nimport { Tooltip } from '../core/tooltip/Tooltip';\r\n\r\n@Component({\r\n selector: 'app-address',\r\n moduleId: module.id,\r\n templateUrl: './address.component.html',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => AddressComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class AddressComponent implements ControlValueAccessor, OnInit {\r\n address: Address = new Address();\r\n @Input() touched = false;\r\n @Input('address') set setAddress(value) {\r\n this.address = value || {};\r\n }\r\n manualInput = false;\r\n @Input('manualInput') set setManualInput(manualInput) {\r\n this.manualInput = manualInput;\r\n }\r\n @Input() lineOneEditable = false;\r\n @Input() set lineOneFocussed(value) {\r\n if (value) {\r\n this.setFocus();\r\n }\r\n }\r\n\r\n @ViewChildren('focus') vc;\r\n @ViewChild('form') form: NgForm;\r\n countries = [];\r\n \r\n UKcountries = CountriesOfUK;\r\n countryChange = false;\r\n currentAddress;\r\n uk_fullForm = UK;\r\n\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n\r\n constructor(private service: AccountService) {}\r\n ngOnInit() {\r\n this.getCountries();\r\n }\r\n\r\n getCountries() {\r\n if (!this.countries.length) {\r\n this.service.getCountries().subscribe(data => {\r\n this.countries = data;\r\n });\r\n }\r\n }\r\n\r\n setFocus() {\r\n setTimeout(function () {\r\n if (this.vc.first && this.vc.first.nativeElement) {\r\n this.vc.first.nativeElement.focus();\r\n }\r\n }.bind(this), 300);\r\n }\r\n\r\n\r\n propagate() {\r\n if (this.form.valid) {\r\n this.propagateChange(this.address);\r\n }\r\n this.checkIfAddressWasChanged(this.address);\r\n }\r\n\r\n get valid() {\r\n return this.form && this.form.valid;\r\n }\r\n\r\n writeValue(value: any) {\r\n if (value) {\r\n this.address = value;\r\n\r\n const emptyObj = {};\r\n this.currentAddress = Object.assign(emptyObj, this.address);\r\n\r\n if(!this.countries && this.countries.length === 0 ) {\r\n this.service.getCountries().subscribe(data => {\r\n this.countries = data;\r\n this.address.country = this.countries.filter( country => country.value === this.address.country )[0]?.value;\r\n });\r\n }\r\n }\r\n }\r\n propagateChange = (model: any) => { };\r\n registerOnChange(fn) {\r\n this.propagateChange = fn;\r\n }\r\n registerOnTouched() { }\r\n\r\n onCountryChange() {\r\n if(this.address?.country === this.uk_fullForm) {\r\n this.address.homeNation = null;\r\n } else {\r\n this.address.homeNation = HomeNationTypes.Other;\r\n }\r\n this.address.latitude = null;\r\n this.address.longitude = null;\r\n }\r\n\r\n residentCountry() {\r\n return getCountryName(this.address.homeNation);\r\n }\r\n\r\n checkIfAddressWasChanged(updateAddress) {\r\n if(this.currentAddress !==undefined && this.currentAddress) {\r\n if(JSON.stringify(this.currentAddress) !== JSON.stringify(updateAddress) ) {\r\n this.erasePreviousDetails();\r\n }\r\n }\r\n }\r\n\r\n erasePreviousDetails() {\r\n if(this.address?.countryCode) {\r\n this.address.countryCode = null;\r\n }\r\n if(this.address?.id) {\r\n this.address.id = null;\r\n }\r\n this.address.latitude = null;\r\n this.address.longitude = null;\r\n }\r\n}\r\n","
\r\n
\r\n

Please fill out your address.

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

\r\n Line 1 is mandatory\r\n

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

\r\n {{line1?.errors?.inputValidator}}\r\n

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

\r\n {{line2?.errors?.inputValidator}}\r\n

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

\r\n {{line3?.errors?.inputValidator}}\r\n

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

\r\n Town is mandatory\r\n

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

\r\n {{town?.errors?.inputValidator}}\r\n

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

\r\n {{county?.errors?.inputValidator}}\r\n

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

\r\n Postcode is mandatory\r\n

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

\r\n {{postcode?.errors?.inputValidator}}\r\n

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

\r\n Country is mandatory\r\n

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

\r\n {{country?.errors?.inputValidator}}\r\n

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

We will use this information in analysis of the register.

\r\n

If you are resident of Northern Ireland, Isle of Man or Channel Islands, please select option 'Other'

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

\r\n Resident country is mandatory\r\n

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

\r\n Line 1 is mandatory\r\n

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

\r\n {{line1?.errors?.inputValidator}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, Input, OnInit, forwardRef, ViewChild } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\r\nimport { AddressComponent } from './address.component';\r\nimport { Address } from './model/Address';\r\n\r\n@Component({\r\n selector: 'app-address-edit',\r\n moduleId: module.id,\r\n templateUrl: './addressEdit.component.html',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => AddressEditComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class AddressEditComponent {\r\n address: Address;\r\n @Input() manualInput = false;\r\n editing = false;\r\n lineOneFocussed = false;\r\n @Input() touched = false;\r\n @ViewChild('addressedit') addressedit: AddressComponent;\r\n\r\n reselect() {\r\n this.address = undefined;\r\n if (this.addressedit.valid) {\r\n this.propagateChange(this.address);\r\n }\r\n this.manualInput = false;\r\n this.editing = true;\r\n this.lineOneFocussed = false;\r\n }\r\n\r\n enableManualInput() {\r\n this.manualInput = true;\r\n this.lineOneFocussed = true;\r\n }\r\n\r\n writeValue(value: any) {\r\n if (value) {\r\n this.address = value;\r\n }\r\n }\r\n propagateChange = (model: any) => { };\r\n registerOnChange(fn) {\r\n this.propagateChange = fn;\r\n }\r\n registerOnTouched() { }\r\n\r\n onSelect(address) {\r\n this.address = address;\r\n this.lineOneFocussed = true;\r\n if (this.addressedit.valid) {\r\n this.propagateChange(address);\r\n }\r\n\r\n\r\n }\r\n\r\n}\r\n\r\n\r\n","\r\n \r\n \r\n\r\n\r\n\r\n \r\n

\r\n \r\n

\r\n

\r\n \r\n

\r\n
","import { Component, Input, OnInit, ViewChildren, ElementRef, AfterViewInit} from '@angular/core';\r\nimport { Address } from './model/Address';\r\nimport { FormControl } from '@angular/forms';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { AccountService } from './service/account.service';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { LogService } from '../core/service/log.service';\r\nimport { inputValidator, UK } from '../shared/user-address/userAddress';\r\n\r\n\r\n\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-address-editable',\r\n moduleId: module.id,\r\n templateUrl: './addressEditable.component.html',\r\n styleUrls: ['./addressEditable.scss']\r\n})\r\nexport class AddressEditableComponent {\r\n @Input() address: Address;\r\n selectedAddress = false;\r\n manualInput = false;\r\n editingAddress: Address;\r\n countries = [];\r\n @Input() creating = false;\r\n editing = false;\r\n saving = false;\r\n searching = false;\r\n confirmed = false;\r\n townChanged = false;\r\n\r\n constructor(private service: AccountService, private log: LogService, private auth: AuthService) { }\r\n\r\n\r\n cancel() {\r\n if (this.selectedAddress) {\r\n this.selectedAddress = undefined;\r\n } else {\r\n this.editing = false;\r\n }\r\n }\r\n\r\n get valid() {\r\n if(!this.editingAddress) {\r\n return;\r\n }\r\n let isValid = !!(this.editingAddress) &&\r\n (!!(this.editingAddress.line1) && inputValidator(this.editingAddress.line1)) &&\r\n (!!(this.editingAddress.town) && inputValidator(this.editingAddress.town)) &&\r\n !!(this.editingAddress.country);\r\n\r\n if(this.editingAddress.line2) {\r\n isValid = isValid && inputValidator(this.editingAddress.line2);\r\n }\r\n\r\n if(this.editingAddress.line3) {\r\n isValid = isValid && inputValidator(this.editingAddress.line3);\r\n }\r\n\r\n if(this.editingAddress.postcode) {\r\n isValid = isValid && inputValidator(this.editingAddress.postcode);\r\n }\r\n\r\n if(this.editingAddress.county) {\r\n isValid = isValid && inputValidator(this.editingAddress.county);\r\n }\r\n\r\n if((this.editingAddress?.country !== UK) ||\r\n (this.editingAddress?.country === UK &&\r\n this.editingAddress?.homeNation &&\r\n this.editingAddress?.latitude &&\r\n this.editingAddress?.longitude) ) {\r\n return isValid;\r\n }\r\n return isValid && this.editingAddress.homeNation;\r\n }\r\n\r\n enableManualInput() {\r\n this.manualInput = true;\r\n this.selectedAddress = false;\r\n this.editingAddress = new Address();\r\n }\r\n\r\n addressSelected(address) {\r\n this.selectedAddress = true;\r\n this.manualInput = false;\r\n this.editingAddress = address;\r\n }\r\n\r\n onEdit() {\r\n this.editing = true;\r\n }\r\n\r\n save() {\r\n this.saving = true;\r\n this.service.saveAddress(this.editingAddress)\r\n .subscribe(result => {\r\n this.townChanged = this.editingAddress.town !== this.address.town;\r\n this.address = this.editingAddress;\r\n this.auth.updateCachedAddress(this.address);\r\n this.selectedAddress = false;\r\n this.manualInput = false;\r\n this.editing = false;\r\n this.saving = false;\r\n }, error => {\r\n //console.log(error);\r\n });\r\n }\r\n\r\n}\r\n","\r\n Address\r\n
\r\n
\r\n
Your entry on the public register will be updated to show the changes you have made to your postal town. The update may take up to 24 hours to show.
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
","import { Component, Input, Output, EventEmitter, OnInit, ViewChildren } from '@angular/core';\r\nimport { Address } from './model/Address';\r\nimport { Validators, FormGroup, FormControl } from '@angular/forms';\r\nimport { AccountService } from './service/account.service';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { LogService } from '../core/service/log.service';\r\nimport { debounceTime } from 'rxjs/operators';\r\n\r\ninterface AddressSearch {\r\n countryCode?: string;\r\n postcode?: string;\r\n results?: any;\r\n}\r\n\r\n@Component({\r\n selector: 'app-address-search',\r\n moduleId: module.id,\r\n templateUrl: './addressSearch.component.html',\r\n styleUrls: ['./addressSearch.scss']\r\n})\r\nexport class AddressSearchComponent implements OnInit {\r\n\r\n @ViewChildren('focus') vc;\r\n countries = [];\r\n search: AddressSearch = {\r\n countryCode: 'GB'\r\n };\r\n\r\n @Input() set editing(editing) {\r\n if (this.postcode) {\r\n this.postcode.markAsUntouched();\r\n }\r\n\r\n if (editing) {\r\n this.setFocus();\r\n }\r\n }\r\n @Output() selected = new EventEmitter
();\r\n @Output() manualInput = new EventEmitter();\r\n\r\n searching = false;\r\n addressForm: FormGroup;\r\n\r\n isUK = true;\r\n\r\n constructor(private service: AccountService, private log: LogService, private auth: AuthService) { }\r\n\r\n get postcode() {\r\n return this.addressForm && this.addressForm.get('postcode');\r\n }\r\n get countryCode() {\r\n return this.addressForm && this.addressForm.get('countryCode');\r\n }\r\n\r\n ngOnInit() {\r\n /* tslint:disable: max-line-length*/\r\n const ukPostcodePattern = /([Gg][Ii][Rr] 0[Aa]{2})|((([A-Za-z][0-9]{1,2})|(([A-Za-z][A-Ha-hJ-Yj-y][0-9]{1,2})|(([A-Za-z][0-9][A-Za-z])|([A-Za-z][A-Ha-hJ-Yj-y][0-9]?[A-Za-z]))))\\s?[0-9][A-Za-z]{2})/g;\r\n\r\n this.addressForm = new FormGroup(\r\n {\r\n countryCode: new FormControl(this.search.countryCode),\r\n postcode: new FormControl(this.search.postcode, [Validators.required, Validators.pattern(ukPostcodePattern)])\r\n }\r\n );\r\n\r\n // debounce keystroke events\r\n this.postcode.valueChanges\r\n .pipe(debounceTime(1000))\r\n .subscribe(newValue => this.searchAddress());\r\n\r\n this.countryCode.valueChanges\r\n .subscribe(newValue => {\r\n \r\n if (newValue === 'GB') {\r\n this.addressForm.controls['postcode'].setValidators([Validators.required, Validators.pattern(ukPostcodePattern)]);\r\n } else {\r\n this.addressForm.controls['postcode'].setValidators([Validators.required]);\r\n }\r\n this.addressForm.controls['postcode'].setValue('');\r\n this.addressForm.controls['postcode'].markAsUntouched();\r\n });\r\n\r\n this.getCountries();\r\n\r\n }\r\n\r\n setFocus() {\r\n setTimeout(function () {\r\n if (this.vc.first) {\r\n this.vc.first.nativeElement.focus();\r\n }\r\n }.bind(this), 100);\r\n }\r\n\r\n getCountries() {\r\n if (!this.countries.length) {\r\n this.service.getCountries().subscribe(data => {\r\n this.countries = data;\r\n });\r\n }\r\n }\r\n\r\n enableManualInput() {\r\n this.manualInput.emit();\r\n }\r\n\r\n searchAddress() {\r\n this.postcode.markAsTouched();\r\n if (this.countryCode.value && this.postcode.valid) {\r\n this.searching = true;\r\n this.service.searchAddress(this.countryCode.value, this.postcode.value).subscribe(results => {\r\n this.search.results = results.filter(result => result.type === 'Address');\r\n this.searching = false;\r\n });\r\n }\r\n }\r\n\r\n select(id) {\r\n this.service.getAddress(id).subscribe(address => {\r\n this.selected.emit(address);\r\n });\r\n }\r\n}\r\n","
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n \r\n

\r\n Please check that you have entered your full postcode correctly\r\n

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

\r\n You must provide your postcode\r\n

\r\n
\r\n
\r\n\r\n \r\n
\r\n
Searching for addresses...
\r\n
\r\n
\r\n \r\n \r\n
    \r\n
  • \r\n \r\n
  • \r\n
\r\n\r\n

\r\n \r\n

\r\n\r\n
\r\n\r\n\r\n
","import { Component, Input, OnInit, ViewChild, ElementRef, AfterViewInit, forwardRef, EventEmitter } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, Validators, FormControl } from '@angular/forms';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { startWith, map } from 'rxjs/operators';\r\nimport { AccountService } from './service/account.service';\r\nimport { Applicant } from './model/Applicant';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-applicant',\r\n moduleId: module.id,\r\n templateUrl: './applicant.component.html',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => ApplicantComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class ApplicantComponent implements OnInit, ControlValueAccessor {\r\n\r\n @Input() isStudent = false;\r\n @Input() isTechnician = false;\r\n @Input() isAssessmentReport = false;\r\n @Input() isAssessmentRegistration = false;\r\n applicant: Applicant;\r\n salutations: Array<{ key: string; value: number }> = [];\r\n @ViewChild('salutationInput') salutationRef: ElementRef;\r\n salutation: FormControl = new FormControl();\r\n filteredSalutations: Observable;\r\n @Input() readonly = false;\r\n @Input() touched = false;\r\n nationalities = [];\r\n zero = 0;\r\n\r\n constructor(private service: AccountService) { }\r\n\r\n ngOnInit() {\r\n\r\n this.loadSalutations();\r\n this.loadNationalities();\r\n\r\n }\r\n\r\n get noNationality() {\r\n return !parseInt((this.applicant.equalityDiversity.nationality), 10);\r\n }\r\n\r\n loadSalutations() {\r\n this.service.getSalutations().subscribe(data => {\r\n for (const key in data) {\r\n this.salutations.push({ key, value: data[key] });\r\n }\r\n this.filteredSalutations = this.salutation.valueChanges\r\n .pipe(\r\n startWith(''),\r\n map(val => this.filter(val))\r\n );\r\n\r\n this.salutation.valueChanges.subscribe(value => {\r\n if (!value) {\r\n return false;\r\n } else {\r\n const selected = this.salutations.filter(item => item.key.toLowerCase() === value.toLowerCase());\r\n\r\n let newValue = { name: value, id: 981360000 };\r\n if (selected.length) {\r\n newValue = { name: selected[0].key, id: selected[0].value };\r\n }\r\n if (newValue.name !== this.applicant.title.name) {\r\n this.applicant.title = newValue;\r\n this.propagateChange(this.applicant);\r\n }\r\n }\r\n });\r\n });\r\n\r\n }\r\n\r\n loadNationalities() {\r\n this.service.getEdiOptions().subscribe(data => {\r\n this.nationalities = data.sections.find(section => section.name === 'Nationality').groups;\r\n });\r\n }\r\n\r\n\r\n writeValue(value: Applicant) {\r\n\r\n if (value) {\r\n this.applicant = value;\r\n this.applicant.equalityDiversity = this.applicant.equalityDiversity || {\r\n ethnicity: undefined,\r\n ethnicityOther: '',\r\n nationality: 0,\r\n religion: undefined,\r\n religionOther: '',\r\n disabled: undefined,\r\n disabilityDetails: '',\r\n gender: undefined,\r\n sexualOrientation: undefined\r\n };\r\n if (value.title) {\r\n this.salutation.setValue(value.title.name);\r\n }\r\n }\r\n }\r\n\r\n propagateChange = (model: any) => { };\r\n\r\n registerOnChange(fn) {\r\n this.propagateChange = fn;\r\n }\r\n\r\n registerOnTouched() { }\r\n\r\n filter(val: string): { key: string; value: number }[] {\r\n return this.salutations.filter(option =>\r\n option.key.toLowerCase().indexOf(val.toLowerCase()) === 0);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n\r\n\r\n \r\n \r\n {{ option.key }}\r\n \r\n \r\n\r\n\r\n \r\n

\r\n This is mandatory\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ option.key }}\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n

\r\n This is your name as it will appear on the register, if your application is successful. Your name is an important\r\n piece of information which we need to verify as part of your application, using your birth certificate.\r\n

\r\n

\r\n If you want to register using a name other than the one on your birth certificate (because you have married, or\r\n want to\r\n use a version of your name which does not include all your given names as shown on your birth certificate, for\r\n example), you\r\n must formally tell us by filling in a statutory declaration form.\r\n

\r\n

\r\n Read the application guidance to find out more\r\n

\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\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,Inject } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-browser-dialog',\r\n templateUrl: './browser-dialog.component.html',\r\n styleUrls: ['./browser-dialog.component.scss']\r\n})\r\nexport class BrowserDialogComponent implements OnInit {\r\n defaultMessage = 'Please change setting to allow third party cookies';\r\n defaultTitle = 'Your browser has blocked thirdparty cookies';\r\n defaultAlertTitle ='Important !';\r\n isNotEdge = false;\r\n isBlockedByCookies = false;\r\n\r\n get content(): string {\r\n if (this.data && this.data.content) {\r\n return this.data.content;\r\n }\r\n return this.defaultMessage;\r\n }\r\n\r\n get title(): string {\r\n if (this.data && this.data.title) {\r\n return this.data.title;\r\n }\r\n return this.defaultTitle;\r\n }\r\n\r\n get alertTitle(): string {\r\n if (this.data && this.data.alertTitle) {\r\n return this.data.alertTitle;\r\n }\r\n return this.defaultAlertTitle;\r\n }\r\n constructor(public dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) public data: any) {\r\n this.isNotEdge = data.isNotEdge;\r\n this.isBlockedByCookies = data.isBlockedByCookies;\r\n }\r\n\r\n ngOnInit() { \r\n }\r\n\r\n\r\nreload(){\r\n window.location.reload();\r\n}\r\n\r\n close() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","

\r\n {{alertTitle}}\r\n

\r\n

\r\n {{title}}\r\n

\r\n\r\n

\r\n {{content}}\r\n

\r\n

\r\n open in EDGE click here\r\n

\r\n

\r\n If you are still experiencing difficulties please click here\r\n to take you to our FAQ’s to help with logging in to your mygphc\r\n

\r\n
\r\n\r\n \r\n","import { Component, Input, Output, EventEmitter, OnInit, ViewChildren, QueryList, AfterViewInit } from '@angular/core';\r\nimport { Contact } from './model/Contact';\r\nimport { AccountService } from './service/account.service';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { UserPreference } from './model/UserPreference';\r\nimport { CommsPreference } from './model/CommsPreference';\r\nimport { User } from './model/User';\r\nimport { SaveState } from './model/SaveState';\r\n\r\nenum Warning {\r\n None,\r\n Three,\r\n Four,\r\n Five,\r\n Six,\r\n Seven\r\n}\r\n\r\n@Component({\r\n selector: 'app-comms-preferences',\r\n moduleId: module.id,\r\n templateUrl: './commsPreferences.component.html'\r\n})\r\nexport class CommsPreferencesComponent {\r\n\r\n\r\n Warning = Warning;\r\n warning: Warning = Warning.None;\r\n combinations = [\r\n // essential email, essentail text, important email, important text\r\n [true, true, true, true, Warning.None],\r\n [true, true, true, false, Warning.None],\r\n [true, true, false, true, Warning.None],\r\n [true, true, false, false, Warning.Five],\r\n [true, false, false, false, Warning.Six],\r\n [false, true, false, false, Warning.Six],\r\n [false, false, false, false, Warning.Seven],\r\n [true, false, true, false, Warning.Four],\r\n [true, false, false, true, Warning.Four],\r\n [false, true, true, false, Warning.Four],\r\n [false, true, true, true, Warning.Four],\r\n [false, true, false, true, Warning.Four],\r\n [false, false, true, false, Warning.Three],\r\n [false, false, false, true, Warning.Three],\r\n [false, false, true, true, Warning.Three],\r\n [true, false, true, true, Warning.Four]\r\n ];\r\n user: User;\r\n\r\n constructor(private service: AccountService, public auth: AuthService) {\r\n this.user = this.auth.user;\r\n }\r\n\r\n @Input() comms: CommsPreference;\r\n @Input() showWarnings = true;\r\n @Output() saveStateChange = new EventEmitter(true);\r\n\r\n SaveState = SaveState;\r\n saveState: SaveState = SaveState.untouched;\r\n @Input('saveState') set setState(state: SaveState) {\r\n if (state === this.saveState) { return; }\r\n this.saveState = state;\r\n if (state === SaveState.touched) {\r\n this.validate();\r\n }\r\n }\r\n\r\n get requireMobile() {\r\n return this.comms && (this.comms.essentialTexts || this.comms.importantTexts)\r\n && !this.user.contact.mobilePhone;\r\n }\r\n\r\n validate() {\r\n this.warning = this.combinations.filter(item =>\r\n this.comms.essentialEmails === item[0] &&\r\n this.comms.essentialTexts === item[1] &&\r\n this.comms.importantEmails === item[2] &&\r\n this.comms.importantTexts === item[3]\r\n )[0][4];\r\n\r\n this.saveState = this.warning === Warning.None ? SaveState.confirmed : SaveState.confirmationRequired;\r\n this.saveStateChange.emit(this.saveState);\r\n }\r\n\r\n}\r\n","
\r\n

I agree that the GPhC may contact me with:

\r\n

a) \r\n Receive essential information about my current registration or training (For example if you are a registered pharmacy professional, registration renewal and revalidation submission reminders, \r\n and if you are a pre-registration applicant updates on the status of your application and essential information about the registration assessment): \r\n

\r\n
\r\n \r\n email\r\n \r\n
\r\n \r\n text message\r\n \r\n
\r\n \r\n

b)\r\n Receive important information relevant to my current registration or training\r\n (such as updates on key regulatory changes, invitations to respond to consultations, and for pharmacist\r\n pre-registration trainees, the pre-registration bulletin) by: \r\n

\r\n
\r\n \r\n email\r\n \r\n
\r\n \r\n text message\r\n \r\n
\r\n \r\n
\r\n
Please add your UK mobile number in the\r\n Account section\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n

You have chosen not to receive\r\n any essential information about your registration by email and text message.

\r\n

This means that we will\r\n only contact you by post. Please be aware that you are responsible for making sure that you renew your registration\r\n and complete revalidation on time, and you may be removed from the register if you do not.

\r\n

Do you want to change your preferences?

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

You have chosen not to receive\r\n any essential information about your registration by\r\n email\r\n text message.

\r\n

This means that we will\r\n only contact you by\r\n email\r\n text message. Please be aware that you are responsible for making sure that you renew your registration and\r\n complete revalidation on time, and you may be removed from the register if you do not.

\r\n

Do you want to change your preferences?

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

You have chosen not to receive\r\n important information relevant to your registration. You may miss out on key information which sets out what\r\n is expected of you to remain on the register.\r\n

\r\n

Do you want to change your preferences?

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

You have chosen not to receive any essential information about your registration by\r\n email\r\n text message.

\r\n

This means that we will\r\n only contact you by\r\n email\r\n text message\r\n about your registration. Please be aware that you are responsible for making sure that you renew your registration and complete\r\n revalidation on time, and you may be removed from the register if you do not.

\r\n

\r\n You have also chosen not to receive\r\n important information relevant to your registration. You may miss out on key information which sets out what\r\n is expected of you to remain on the register.

\r\n

Do you want to change your preferences?

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

You have chosen not to receive\r\n any essential information about your registration by email and text message.

\r\n

\r\n This means that we will only contact you by post about your registration. Please be aware that you are responsible for making\r\n sure that you renew your registration and complete revalidation on time, and you may be removed from the register\r\n if you do not.\r\n

\r\n

\r\n You have also chosen not to receive\r\n important information relevant to your registration. You may miss out on key information which sets out what\r\n is expected of you to remain on the register.\r\n

\r\n

Do you want to change your preferences?

\r\n
\r\n\r\n
","
\r\n \r\n \r\n
\r\n
You have requested to change your email address, but have not yet responded to the confirmation email we sent to your\r\n new address.
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n","import { Component, Input, OnInit, ViewChildren } from '@angular/core';\r\nimport { Contact } from './model/Contact';\r\nimport { AccountService } from './service/account.service';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { ConfirmDialogComponent } from '../shared/confirmDialog.component';\r\n\r\n\r\n@Component({\r\n selector: 'app-contact',\r\n moduleId: module.id,\r\n templateUrl: './contact.component.html'\r\n})\r\nexport class ContactComponent {\r\n @Input() contact: Contact;\r\n\r\n getEmailValue() {\r\n if (this.contact.awaitingEmailConfirmation) {\r\n return this.contact.email + ' (change pending)';\r\n } else {\r\n return this.contact.email;\r\n }\r\n }\r\n\r\n}\r\n","import { Component, Input, OnInit, ViewChildren, ViewChild, forwardRef } from '@angular/core';\r\nimport { Contact } from './model/Contact';\r\nimport { AccountService } from './service/account.service';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { ConfirmDialogComponent } from '../shared/confirmDialog.component';\r\nimport { NgForm, NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\r\nimport { Tooltip } from '../core/tooltip/Tooltip';\r\n\r\n@Component({\r\n selector: 'app-contact-edit',\r\n moduleId: module.id,\r\n templateUrl: './contactEdit.component.html',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => ContactEditComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class ContactEditComponent implements ControlValueAccessor {\r\n @Input() contact: Contact = new Contact({});\r\n @Input() serverEmailErrors;\r\n @Input() emailReadonly = false;\r\n @Input() phoneNumberReadonly = false;\r\n @Input() emailNotRequire = false;\r\n touched = false;\r\n @ViewChildren('focus') vc;\r\n\r\n @ViewChild('form') form: NgForm;\r\n @Input() set editing(editing) {\r\n if (editing) {\r\n this.setFocus();\r\n }\r\n }\r\n ukMobTooltip: Tooltip = {\r\n id: 'help',\r\n content: `Enter a UK mobile number 8-11 numbers long, which begins with 07. We may use this number\r\n to contact you by SMS in future. If you agree to this in your communication preferences.\r\n You can manage these in the 'account' tab.\r\n `,\r\n width: 250,\r\n placement: 'left',\r\n order: -1\r\n };\r\n\r\n\r\n\r\n constructor(private service: AccountService, private auth: AuthService, private dialog: MatDialog) {\r\n }\r\n setFocus() {\r\n setTimeout(function () {\r\n if (this.vc.first) {\r\n this.vc.first.nativeElement.focus();\r\n }\r\n }.bind(this), 100);\r\n }\r\n\r\n propagate() {\r\n if (this.contact.mobilePhone !== null && this.contact.mobilePhone !== undefined\r\n && this.contact.mobilePhone.trim() === '') {\r\n this.contact.mobilePhone = null;\r\n }\r\n if (this.form.valid) {\r\n this.propagateChange(this.contact);\r\n }\r\n }\r\n\r\n get valid() {\r\n return this.form && this.form.valid;\r\n }\r\n\r\n\r\n writeValue(value: any) {\r\n if (value) {\r\n this.contact = value;\r\n }\r\n }\r\n propagateChange = (model: any) => { };\r\n registerOnChange(fn) {\r\n this.propagateChange = fn;\r\n }\r\n registerOnTouched() { }\r\n\r\n\r\n}\r\n","
\r\n
\r\n \r\n \r\n \r\n

\r\n {{error}}\r\n

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

\r\n Please check that you have entered your email address correctly\r\n

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

\r\n You must provide an email address\r\n

\r\n
\r\n \r\n
\r\n
If you change your email address, we will send an email to your new address. You will\r\n need to respond to the link\r\n in this email to activate the change.
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n

\r\n Please check that you have entered your UK mobile phone number correctly\r\n

\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
","import { Component, Input, OnInit, ViewChildren } from '@angular/core';\r\nimport { Contact } from './model/Contact';\r\nimport { AccountService } from './service/account.service';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { ConfirmDialogComponent } from '../shared/confirmDialog.component';\r\nimport { ValidationError } from '../core/model/ValidationError';\r\n@Component({\r\n selector: 'app-contact-editable',\r\n moduleId: module.id,\r\n templateUrl: './contactEditable.component.html'\r\n})\r\nexport class ContactEditableComponent implements OnInit {\r\n @Input() contact: Contact;\r\n @Input() creating = false;\r\n editing = false;\r\n saving = false;\r\n\r\n\r\n editableContact: Contact;\r\n validationErrors: Array = [];\r\n emailErrors: Array = [];\r\n constructor(private service: AccountService, private auth: AuthService, private dialog: MatDialog) {\r\n }\r\n\r\n ngOnInit() {\r\n this.editableContact = Object.assign({}, this.contact);\r\n }\r\n\r\n\r\n save() {\r\n this.saving = true;\r\n this.validationErrors = [];\r\n this.emailErrors = [];\r\n\r\n this.service.saveContact(this.editableContact)\r\n .subscribe(result => {\r\n if (this.contact.email !== this.editableContact.email) {\r\n this.service.requestEmailUpdate(this.editableContact.email).subscribe(emailResult => {\r\n this.editableContact.awaitingEmailConfirmation = true;\r\n this.editableContact.email = this.contact.email;\r\n this.editing = false;\r\n this.saving = false;\r\n this.contact = Object.assign({}, this.editableContact);\r\n this.auth.updateCachedContact(this.contact);\r\n }, error => {\r\n this.saving = false;\r\n const emailErrors = error.validationErrors.filter(e => e.property === 'Email' );\r\n if (emailErrors.length) {\r\n this.emailErrors = emailErrors[0].errors;\r\n }\r\n });\r\n } else {\r\n this.editing = false;\r\n this.saving = false;\r\n this.contact = Object.assign({}, this.editableContact);\r\n this.auth.updateCachedContact(this.contact);\r\n }\r\n },\r\n error => {\r\n this.saving = false;\r\n if (error.validationErrors) {\r\n this.validationErrors = error.validationErrors;\r\n }\r\n });\r\n }\r\n\r\n onEdit() {\r\n this.editing = true;\r\n }\r\n\r\n\r\n cancel() {\r\n this.editing = false;\r\n this.editableContact = Object.assign({}, this.contact);\r\n }\r\n}\r\n","\r\n Contact\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, ErrorHandler, Input, ViewChild, ViewChildren, ElementRef, QueryList, forwardRef } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { LogService } from '../core/service/log.service';\r\nimport { User } from './model/User';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { AccountService } from './service/account.service';\r\nimport { EqualityDiversity } from './model/EqualityDiversity';\r\nimport { EqualityDiversityOptions } from './model/EqualityDiversityOptions';\r\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\r\nimport { EdiService } from './service/edi.service';\r\n\r\n@Component({\r\n selector: 'app-edi',\r\n moduleId: module.id,\r\n templateUrl: './edi.component.html',\r\n styleUrls: ['./edi.scss'],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => EdiComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class EdiComponent implements OnInit, ControlValueAccessor {\r\n\r\n selection;\r\n\r\n @ViewChild('ethnicityOtherInput') ethnicityOtherInput: ElementRef;\r\n @ViewChildren('otherInput') sectionOtherInputs: QueryList;\r\n\r\n @Input() touched = false;\r\n @Input() valid: any = { };\r\n\r\n constructor(public service: EdiService) { }\r\n\r\n ngOnInit() {\r\n this.selection = this.service.notSelected();\r\n }\r\n writeValue(value: EqualityDiversity) {\r\n if (!value) { return; }\r\n this.selection = this.service.selectionFromModel(value);\r\n }\r\n\r\n ethnicitySelected(id) {\r\n if (this.service.isOtherEthnicity(id)) {\r\n setTimeout(() => {\r\n this.ethnicityOtherInput.nativeElement.focus();\r\n });\r\n }\r\n this.propagate();\r\n }\r\n\r\n sectionSelected(section, index, id) {\r\n if (this.service.isOtherSection(section, id)) {\r\n setTimeout(() => {\r\n // console.log(this.sectionOtherInputs.toArray());\r\n // this.sectionOtherInputs.toArray()[index].nativeElement.focus();\r\n });\r\n }\r\n this.propagate();\r\n }\r\n\r\n\r\n propagateChange = (model: EqualityDiversity) => { };\r\n registerOnChange(fn) {\r\n this.propagateChange = fn;\r\n }\r\n registerOnTouched() { }\r\n\r\n propagate() {\r\n const edi = this.service.selectionToModel(this.selection);\r\n this.propagateChange(edi);\r\n }\r\n\r\n\r\n}\r\n","
\r\n

Ethnicity

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

{{item.group}}

\r\n
\r\n
\r\n {{option.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 This is mandatory\r\n

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

{{section.name | caseSplit}}

\r\n
\r\n \r\n
\r\n
\r\n {{option.name}}\r\n \r\n
\r\n
\r\n
\r\n \r\n
10\" class=\"limit-width\">\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n\r\n \r\n

\r\n This is mandatory\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
","\r\n\r\n
\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n {{ item.value }}\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n {{ item.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
","import { Component, OnInit, ErrorHandler, Input, ViewChild, ViewChildren, ElementRef, QueryList, forwardRef } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { LogService } from '../core/service/log.service';\r\nimport { User } from './model/User';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { AccountService } from './service/account.service';\r\nimport { EqualityDiversity } from './model/EqualityDiversity';\r\nimport { EqualityDiversityOptions } from './model/EqualityDiversityOptions';\r\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\r\nimport { EdiService } from './service/edi.service';\r\n\r\n@Component({\r\n selector: 'app-edi-summary',\r\n moduleId: module.id,\r\n templateUrl: './ediSummary.component.html'\r\n})\r\nexport class EdiSummaryComponent implements OnInit {\r\n\r\n @Input() edi: EqualityDiversity;\r\n summary;\r\n constructor(public service: EdiService) { }\r\n loading = false;\r\n ngOnInit() {\r\n this.loading = true;\r\n this.service.getSummary(this.edi).subscribe(summary => {\r\n this.summary = summary;\r\n this.loading = false;\r\n });\r\n }\r\n\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { AccountService } from './service/account.service';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { LayoutService } from '../core/service/layout.service';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { Router } from '@angular/router';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { ConfirmDialogComponent } from '../shared/confirmDialog.component';\r\n\r\n\r\n@Component({\r\n moduleId: module.id,\r\n templateUrl: './emailConfirmation.component.html',\r\n styleUrls: ['./emailConfirmation.scss']\r\n})\r\nexport class EmailConfirmationComponent implements OnInit {\r\n\r\n loading = false;\r\n token: string;\r\n success: boolean;\r\n error: string;\r\n email: string;\r\n\r\n constructor(public auth: AuthService, private layout: LayoutService,\r\n private route: ActivatedRoute, private dialog: MatDialog, private router: Router) {\r\n this.token = this.route.snapshot.queryParams['token'];\r\n }\r\n\r\n ngOnInit() {\r\n this.layout.setAccountMode(true);\r\n this.loading = true;\r\n this.auth.confirmEmail(this.token).subscribe((result) => {\r\n this.loading = false;\r\n this.success = true;\r\n this.logout(result.updatedEmail);\r\n }, error => {\r\n this.loading = false;\r\n this.success = false;\r\n this.error = error && error.message ? error.message : 'Unknown error';\r\n });\r\n }\r\n\r\n logout(newEmailAddress) {\r\n\r\n let dialogRef;\r\n const isLoggedIn = this.auth.user && this.auth.userId;\r\n if (isLoggedIn) {\r\n if (this.auth.user) {\r\n this.auth.user.contact.email = newEmailAddress;\r\n this.auth.updateCachedContact(this.auth.user.contact);\r\n }\r\n dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n allowCancel: false,\r\n confirmText: 'Sign out',\r\n title: `Email address updated`,\r\n message: `

You have successfully updated your email address. Since your email\r\n address is also your account login, you will now be signed out of myGPhC.

\r\n

Remember to sign back in with your new email address: ${newEmailAddress}

`\r\n }\r\n });\r\n } else {\r\n dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n allowCancel: false,\r\n confirmText: 'OK',\r\n title: `Email address updated`,\r\n message: `

You have successfully updated your email address.

Remember to sign in\r\n with your new email address: ${newEmailAddress}

`\r\n }\r\n });\r\n }\r\n\r\n dialogRef.afterClosed().subscribe(() => {\r\n if (isLoggedIn) {\r\n this.auth.logout();\r\n } else {\r\n this.router.navigate(['/signin']);\r\n }\r\n });\r\n }\r\n}\r\n","\r\n
\r\n

Change of email address

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

\r\n Your email address could not be changed \r\n

\r\n

\r\n {{error}}\r\n

\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
","import { Component, Input, OnInit } from '@angular/core';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { User } from './model/User';\r\nimport { Router } from '@angular/router';\r\nimport { AccountService } from './service/account.service';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n templateUrl: './hasCheckedRegistrationDialog.component.html',\r\n styleUrls: ['./dialog.scss']\r\n})\r\nexport class HasCheckedRegistrationDialogComponent implements OnInit {\r\n\r\n user: User;\r\n hasViewedPage = false;\r\n\r\n constructor(private dialogRef: MatDialogRef,\r\n private router: Router, public auth: AuthService, private accountService: AccountService) {\r\n }\r\n\r\n ngOnInit() {\r\n this.user = this.auth.user;\r\n }\r\n\r\n checkDetails() {\r\n this.router.navigate(['/registration']).then(() => {\r\n this.accountService.hasCheckedRegistrationDetails().subscribe(() => {\r\n this.dialogRef.close();\r\n this.auth.updateCachedHasCheckedRegistrationDetails();\r\n }, error => {\r\n // do something ?\r\n this.dialogRef.close();\r\n });\r\n });\r\n }\r\n\r\n}\r\n","

Hello {{ user.forenames }}

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

\r\n Please confirm that your registration details are correct before continuing.\r\n

\r\n \r\n\r\n
\r\n","import { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { LayoutService } from '../core/service/layout.service';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { AccountService } from './service/account.service';\r\nimport { User } from './model/User';\r\nimport { environment } from '../../environments/environment';\r\nimport { LoggedInState } from './model/LoggedInState';\r\nimport { PreferenceDialogComponent } from './preferenceDialog.component';\r\nimport { HasCheckedRegistrationDialogComponent } from './hasCheckedRegistrationDialog.component';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { TechnicianService } from '../core/service/technician.service';\r\nimport { MaintenanceMessageService } from '../core/service/maintenanceMessage.service';\r\nimport { Router } from '@angular/router';\r\nimport { BrowserDialogComponent } from './browser-dialog/browser-dialog.component';\r\n\r\ninterface LoginChangeArgs {\r\n loggedIn: boolean;\r\n user?: User;\r\n error?: string;\r\n}\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['login.scss']\r\n})\r\nexport class LoginComponent implements OnInit, OnDestroy {\r\n\r\n userId: any;\r\n user: User;\r\n loading = false;\r\n redirecting = false;\r\n forgotPassword = false;\r\n acquireTokenFailed = false;\r\n loggedOut = true;\r\n loggedInStateSub;\r\n loginMessage = 'Loading...';\r\n error: any;\r\n showLogin = true;\r\n url: string;\r\n OSName;\r\n\r\n\r\n\r\n constructor(public authService: AuthService, private accountService: AccountService,\r\n private dialog: MatDialog, private layout: LayoutService,\r\n private technicianService: TechnicianService, public maintenance: MaintenanceMessageService,\r\n private router: Router,\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.showLogin = false;\r\n\r\n this.checkBrowserForPopup();\r\n\r\n this.layout.setAccountMode(true);\r\n this.loggedInStateSub = this.authService.loggedInState$.subscribe(this.onLoggedInStateChange.bind(this));\r\n\r\n if (this.authService.loggedInState === LoggedInState.loggedIn) {\r\n this.authService.enter();\r\n this.getNotifications();\r\n this.showPreferences();\r\n }\r\n this.checkLoggedInState();\r\n this.getOs();\r\n }\r\n\r\n getNotifications() {\r\n if (this.authService.loggedInState === LoggedInState.loggedIn) {\r\n this.accountService.startCheckingNotificationCount();\r\n }\r\n }\r\n\r\n showPreferences() {\r\n if (this.authService.user && this.authService.user.preferencesNotSet()) {\r\n this.showPreferenceModal();\r\n } else {\r\n this.checkHasCheckedRegistrationDetails();\r\n }\r\n }\r\n\r\n\r\n checkLoggedInState() {\r\n this.loginMessage = 'Verifying account...';\r\n this.loading = true;\r\n this.authService.checkLoggedInState().then(loggedIn => {\r\n this.authService.enter();\r\n this.getNotifications();\r\n this.showPreferences();\r\n this.loading = false;\r\n }).catch(error => {\r\n this.loading = false;\r\n if (error.status === 404) {\r\n this.tryGettingTechnicianDetails().subscribe(() => {\r\n this.authService.redirectToConfirmation();\r\n }, (cannotGetTechnicianDetails) => {\r\n this.authService.redirectToActivation();\r\n });\r\n }\r\n });\r\n }\r\n\r\n tryGettingTechnicianDetails() {\r\n return this.technicianService.getTechnicianDetails();\r\n }\r\n\r\n\r\n\r\n onLoggedInStateChange(state) {\r\n this.acquireTokenFailed = state === LoggedInState.acquireTokenFail;\r\n this.loggedOut = state === LoggedInState.loggedOut || this.acquireTokenFailed;\r\n if (state === LoggedInState.loginRedirect) {\r\n this.redirecting = true;\r\n }\r\n if (state === LoggedInState.forgotPassword) {\r\n this.forgotPassword = true;\r\n }\r\n this.loginMessage = this.getLoginMessage(state);\r\n /* // popup when browser failed to acquire token\r\n var browserDetail = this.getBrowser();\r\n //added additional condition for chrome browser running on iOS devices\r\n var iOSChrome = browserDetail.navigatorUserAgent.match(/CriOS/i);\r\n // added condition to check browser is chrome or not for windows\r\n var isChrome = navigator.userAgent.includes(\"Chrome\") && navigator.vendor.includes(\"Google Inc\");\r\n // added condition to check browser is IE or not for windows\r\n var isIE = navigator.userAgent.includes(\"Trident\");\r\n\r\n var iOSEdge = browserDetail.navigatorUserAgent.match(/EdgiOS/i);\r\n\r\n var isEdge = navigator.userAgent.includes(\"Edg\");\r\n\r\n var iOSFirefox = browserDetail.navigatorUserAgent.match(/FxiOS/i);\r\n\r\n //aaded popup's to show when browser failed to login\r\n if(Number.isNaN(parseInt(localStorage.getItem('tokenExpires'), 10)) && this.acquireTokenFailed){\r\n if(this.OSName === 'MacOS' && iOSChrome && browserDetail.browserName === \"Safari\"){\r\n this.dialog.open(BrowserDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n alertTitle: `Important Information !`,\r\n content: `If you experience any difficulties accessing myGPhC, please either use an alternative browser or change the settings on your device.\r\n Go to ‘Settings’ on your device, select ‘Chrome’, and then select the option ‘Allow Cross-Website Tracking’`,\r\n isBlockedByCookies: true\r\n }\r\n });\r\n }else if(this.OSName === 'MacOS' && browserDetail.browserName === \"Safari\" && browserDetail.majorVersion > 12 && !(Boolean(iOSChrome) || Boolean(iOSFirefox) || Boolean(iOSEdge))){\r\n this.dialog.open(BrowserDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n alertTitle: `Important Information !`,\r\n content: `If you experience any difficulties accessing myGPhC, please either use an alternative browser or change the settings on your device.\r\n Go to ‘Settings’ on your device, and select ‘Safari’. Under the ‘Privacy & Security’ heading, uncheck ‘Prevent Cross Site Tracking’`,\r\n isBlockedByCookies: true\r\n }\r\n });\r\n }else if(this.OSName === 'Windows' && isEdge){\r\n this.dialog.open(BrowserDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n alertTitle: `Important Information !`,\r\n content: `If you experience any difficulties accessing myGPhC, please use an alternative browser e.g. Microsoft Edge, Google Chrome or Mozilla Firefox. Alternatively,\r\n disable 'block third-party cookies' in browser settings.`,\r\n isBlockedByCookies: true\r\n }\r\n });\r\n } else if(this.OSName === 'Windows' && !isEdge ){\r\n this.dialog.open(BrowserDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n alertTitle: `Important Information !`,\r\n content: `If you experience any difficulties accessing myGPhC, please use an alternative browser e.g. Microsoft Edge, Google Chrome or Mozilla Firefox. Alternatively,\r\n disable 'block third-party cookies' in browser settings.`,\r\n isNotEdge: true,\r\n isBlockedByCookies: true\r\n }\r\n });\r\n }\r\n }*/\r\n }\r\n\r\n getLoginMessage(state: LoggedInState): string {\r\n switch (state) {\r\n case LoggedInState.attemptAcquireTokenSilently:\r\n return 'Authorising';\r\n case LoggedInState.loadingUser:\r\n return 'Loading your details';\r\n case LoggedInState.loginRedirect:\r\n return 'Redirecting to sign-in';\r\n case LoggedInState.forgotPassword:\r\n return 'Redirecting to forgot password';\r\n case LoggedInState.acquireTokenFail:\r\n return 'Authorisation failed';\r\n default:\r\n return 'Verifying your account';\r\n }\r\n }\r\n\r\n // cancelLogin() {\r\n // window.location.reload();\r\n // }\r\n\r\n showPreferenceModal() {\r\n const dialogRef = this.dialog.open(PreferenceDialogComponent, {\r\n disableClose: true\r\n });\r\n dialogRef.afterClosed().subscribe(() => {\r\n this.checkHasCheckedRegistrationDetails();\r\n });\r\n }\r\n\r\n checkHasCheckedRegistrationDetails() {\r\n if (environment.dev) {\r\n return;\r\n }\r\n if (this.authService.user && this.authService.user.isRegistrant && !this.authService.user.hasCheckedRegistration) {\r\n this.showHasCheckedRegistrationModal();\r\n }\r\n }\r\n\r\n showHasCheckedRegistrationModal() {\r\n const dialogRef = this.dialog.open(HasCheckedRegistrationDialogComponent, {\r\n disableClose: true\r\n });\r\n }\r\n\r\n signin() {\r\n this.error = false;\r\n this.authService.login();\r\n }\r\n\r\n ngOnDestroy() {\r\n // this.loggedInStateSub.unsubscribe();\r\n }\r\n\r\n goToSignInFaq() {\r\n this.router.navigate(['signin/faq']);\r\n }\r\n\r\n getOs() {\r\n this.OSName = 'Unknown';\r\n if (navigator.appVersion.indexOf('Win') !== -1) { this.OSName = 'Windows'; }\r\n if (navigator.appVersion.indexOf('Mac') !== -1) { this.OSName = 'MacOS'; }\r\n if (navigator.appVersion.indexOf('X11') !== -1) { this.OSName = 'UNIX'; }\r\n if (navigator.appVersion.indexOf('Linux') !== -1) { this.OSName = 'Linux'; }\r\n return this.OSName;\r\n }\r\n\r\n\r\n getBrowser() {\r\n try {\r\n\r\n\r\n const nVer = navigator.appVersion;\r\n const nAgt = navigator.userAgent;\r\n let browserName = navigator.appName;\r\n let fullVersion = '' + parseFloat(navigator.appVersion);\r\n let majorVersion = parseInt(navigator.appVersion, 10);\r\n let nameOffset, verOffset, ix;\r\n\r\n // In Opera, the true version is after 'Opera' or after 'Version'\r\n if ((verOffset = nAgt.indexOf('Opera')) !== -1) {\r\n browserName = 'Opera';\r\n fullVersion = nAgt.substring(verOffset + 6);\r\n if ((verOffset = nAgt.indexOf('Version')) !== -1) {\r\n fullVersion = nAgt.substring(verOffset + 8);\r\n }\r\n } else if ((verOffset = nAgt.indexOf('MSIE')) !== -1) {\r\n // In MSIE, the true version is after 'MSIE' in userAgent\r\n browserName = 'Microsoft Internet Explorer';\r\n fullVersion = nAgt.substring(verOffset + 5);\r\n } else if ((verOffset = nAgt.indexOf('Chrome')) !== -1) {\r\n // In Chrome, the true version is after 'Chrome'\r\n browserName = 'Chrome';\r\n fullVersion = nAgt.substring(verOffset + 7);\r\n } else if ((verOffset = nAgt.indexOf('Safari')) !== -1) {\r\n // In Safari, the true version is after 'Safari' or after 'Version'\r\n browserName = 'Safari';\r\n fullVersion = nAgt.substring(verOffset + 7);\r\n if ((verOffset = nAgt.indexOf('Version')) !== -1) {\r\n fullVersion = nAgt.substring(verOffset + 8);\r\n }\r\n } else if ((verOffset = nAgt.indexOf('Firefox')) !== -1) {\r\n // In Firefox, the true version is after 'Firefox'\r\n browserName = 'Firefox';\r\n fullVersion = nAgt.substring(verOffset + 8);\r\n } else if ((nameOffset = nAgt.lastIndexOf(' ') + 1) <\r\n (verOffset = nAgt.lastIndexOf('/'))) {\r\n // In most other browsers, 'name/version' is at the end of userAgent\r\n browserName = nAgt.substring(nameOffset, verOffset);\r\n fullVersion = nAgt.substring(verOffset + 1);\r\n if (browserName.toLowerCase() === browserName.toUpperCase()) {\r\n browserName = navigator.appName;\r\n }\r\n }\r\n // trim the fullVersion string at semicolon/space if present\r\n if ((ix = fullVersion.indexOf(';')) !== -1) {\r\n fullVersion = fullVersion.substring(0, ix);\r\n }\r\n if ((ix = fullVersion.indexOf(' ')) !== -1) {\r\n fullVersion = fullVersion.substring(0, ix);\r\n }\r\n majorVersion = parseInt('' + fullVersion, 10);\r\n if (isNaN(majorVersion)) {\r\n fullVersion = '' + parseFloat(navigator.appVersion);\r\n majorVersion = parseInt(navigator.appVersion, 10);\r\n }\r\n\r\n return {\r\n browserName,\r\n fullVersion,\r\n majorVersion,\r\n navigatorAppName: navigator.appName,\r\n navigatorUserAgent: navigator.userAgent\r\n };\r\n } catch (e) {\r\n // this.log.error('Error getting browser details', e);\r\n }\r\n\r\n }\r\n\r\n checkBrowserForPopup() {\r\n var obj = this.getBrowser();\r\n // to validate internet explorer browser\r\n var iE = obj.navigatorUserAgent.match(/Trident/i);\r\n /*//added additional condition for chrome browser running on iOS devices\r\n var iOSSafari = obj.navigatorUserAgent.match(/CriOS/i);\r\n // to validate Firefox browser on iOS devices\r\n var iOSFirefox = obj.navigatorUserAgent.match(/FxiOS/i);\r\n // to validate Edge browser on iOS devices\r\n var iOSEdge = obj.navigatorUserAgent.match(/EdgiOS/i);\r\n\r\n var chromeVersion=[];\r\n if (Boolean(iOSSafari)) //check the chrome version\r\n {\r\n var value = obj.navigatorUserAgent;\r\n var version = value.split(' ');\r\n version.forEach(element => {\r\n if (element.startsWith(\"CriOS\")) {\r\n chromeVersion = element.split('/');\r\n }\r\n });\r\n }\r\n\r\n if (obj.browserName === \"Safari\" && obj.majorVersion > 12 && !(Boolean(iOSSafari) || Boolean(iOSFirefox) || Boolean(iOSEdge))) {\r\n\r\n this.dialog.open(BrowserDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n alertTitle: `Important Information !`,\r\n title: `You are using Safari browser version 13 or higher`,\r\n content: `If you experience any difficulties accessing myGPhC, please either use an alternative browser or change the settings on your device.\r\n Go to ‘Settings’ on your device, and select ‘Safari’. Under the ‘Privacy & Security’ heading, uncheck ‘Prevent Cross Site Tracking’`,\r\n\r\n }\r\n });\r\n } else if (obj.browserName === \"Safari\" && parseInt(chromeVersion[chromeVersion.length - 1]) >= 86 && Boolean(iOSSafari)) {\r\n\r\n this.dialog.open(BrowserDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n alertTitle: `Important Information !`,\r\n title: `You are using chrome browser version 86`,\r\n content: `If you experience any difficulties accessing myGPhC, please either use an alternative browser or change the settings on your device. Go to ‘Settings’ on your device, select ‘Chrome’, and then select the option ‘Allow Cross-Website Tracking’`,\r\n }\r\n });\r\n }\r\n else*/ if(iE){\r\n this.dialog.open(BrowserDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n alertTitle: `Important Information !`,\r\n title:`You are using internet explorer browser`,\r\n content: `If you experience any difficulties accessing myGPhC, please use an alternative browser e.g. Microsoft Edge, Google Chrome or Mozilla Firefox`,\r\n }\r\n });\r\n }\r\n }\r\n}\r\n\r\n","
\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n
Sign in
\r\n Having problems signing in?\r\n
\r\n\r\n
\r\n\r\n
\r\n

{{ loginMessage }}

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

myGPhC is not currently available

\r\n
\r\n
","import { IAddress } from './IAddress';\r\n\r\nexport class Address implements IAddress {\r\n line1: string;\r\n line2: string;\r\n line3: string;\r\n town: string;\r\n county: string;\r\n postcode: string;\r\n country: string;\r\n resident?: string;\r\n homeNation?:number;\r\n latitude?:string;\r\n longitude?:string;\r\n countryCode?: string;\r\n id?:string;\r\n \r\n constructor(data?: any) {\r\n Object.assign(this, data);\r\n }\r\n\r\n private concat(item: string, delimiter) {\r\n return item ? item + delimiter : '';\r\n }\r\n\r\n toString(delimiter = ', ') {\r\n return this.concat(this.line1, delimiter) +\r\n this.concat(this.line2, delimiter) +\r\n this.concat(this.line3, delimiter) +\r\n this.concat(this.town, delimiter) +\r\n this.concat(this.county, delimiter) +\r\n this.concat(this.country, delimiter) +\r\n this.postcode;\r\n\r\n }\r\n}\r\n\r\n\r\n","import { IContact } from './IContact';\r\n\r\nexport class Contact implements IContact {\r\n email: string;\r\n awaitingEmailConfirmation: boolean;\r\n mobilePhone: string;\r\n telephone1: string;\r\n telephone2: string;\r\n\r\n constructor(data) {\r\n Object.assign(this, data);\r\n if (!!this.email) {\r\n this.email = this.email.toLowerCase();\r\n }\r\n }\r\n\r\n}\r\n","export enum LoggedInState {\r\n loggedOut,\r\n checking,\r\n loginRedirect,\r\n gotIdToken,\r\n attemptAcquireTokenSilently,\r\n acquireTokenPopup,\r\n acquireTokenFail,\r\n tokenAcquired,\r\n loadingUser,\r\n loggedIn,\r\n forgotPassword,\r\n error\r\n}\r\n","export enum NotificationType {\r\n Unknown = 0,\r\n RenewalReminder = 1,\r\n RenewalWindowOpening = 10,\r\n RevalidationReminder = 2,\r\n RevalidationReviewReminder = 3,\r\n RevalidationReviewBlockingReminder = 4,\r\n RevalidationReviewMessageReminder = 5,\r\n EmailChangeRequestNotification = 6,\r\n // ROS-252\r\n ApplicationApprovedPendingAssessmentNotification = 50,\r\n // ROS-256\r\n IneligibleBasedOnAssessmentNotification = 51,\r\n // ROS-157\r\n RegistrationPaymentRequiredNotification = 52,\r\n // ROS-255\r\n RegistryEntryNotification = 53,\r\n\r\n // ROS-249 - New Countersignature waiting for Pharmacist\r\n RegistrationFormCountersignatureRequested = 60,\r\n // ROS-250 - The countersigner countersigned.\r\n RegistrationFormCountersignatureApproved = 61,\r\n // ROS-516 - The countersigner refused to approve or reject for one reason or another.\r\n RegistrationFormCountersignatureRefused = 62,\r\n // ROS-251 - The countersigner rejected.\r\n RegistrationFormCountersignatureRejected = 63,\r\n // ROS-448 - Trainee recalled countersignature.\r\n RegistrationFormCountersignatureRecalled = 64,\r\n // ROS-633 - First year fee payment has been made\r\n RegistrationFormFirstYearFeeSuccessful = 65,\r\n // ROS-626 - Application fee successfully made\r\n RegistrationFormApplicationSubmitted = 66,\r\n\r\n // PROS (student & tutor) - learning contract notifications \r\n PreRegistrationFormLearningContractSignatureRequested = 70,\r\n PreRegistrationFormLearningContractApproved = 71,\r\n PreRegistrationFormLearningContractRefused = 72,\r\n PreRegistrationFormLearningContractRejected = 73,\r\n PreRegistrationFormLearningContractRecalled = 74,\r\n PreRegistrationFormPaymentRequired = 75,\r\n // https://mygphc.atlassian.net/browse/PROS-4\r\n PreRegistrationFormApproved = 76,\r\n // https://mygphc.atlassian.net/browse/PROS-62\r\n PreRegistrationFormWaitingForApplicant = 77,\r\n // https://mygphc.atlassian.net/browse/PROS-61\r\n PreRegistrationFormTerminated = 78,\r\n PreRegistrationFormPaymentReceivedAndSubmitted = 101,\r\n PreRegistrationFormApprovedWelcomeLetter = 79,\r\n PreRegistrationFormLearningContractSignatureRequestedReminder = 102,\r\n\r\n\r\n ExtenuatingCircumstancesSent = 80,\r\n ExtenuatingCircumstancesApproved = 81,\r\n ExtenuatingCircumstancesPartiallyApproved = 82,\r\n ExtenuatingCircumstancesRejected = 83,\r\n RevalidationSubmissionSubmit = 84,\r\n //MAE-40: Added new Notificationtype for EC resubmission\r\n ExtenuatingCircumstancesRequestResubmit = 85,\r\n RenewalRevalidationReminderSameDate = 90,\r\n RenewalRevalidationReminderPendingExtenuatingCircumstances = 91,\r\n RenewalRevalidationReminderExtensionGrantedRenewalDue = 92,\r\n RenewalRevalidationReminderExtensionGrantedRevalidationSubmissionDue = 93,\r\n RemediationEntered = 200,\r\n // Notification For When Registrant ends up in NoIR.\r\n NoIREntered = 201,\r\n\r\n // Notification for when NoR is issued on NoR dashboard\r\n NoRIssued = 202,\r\n TestNotification = 9999,\r\n\r\n RevalidationSelectedForReview = 20,\r\n RevalidationReviewFeedbackSent = 21,\r\n RevalidationReviewAvailable = 22,\r\n RevalidationReviewFeedbackRejected = 23,\r\n\r\n // technician notifications\r\n\r\n TechnicianApplicantCountersignatureRequested = 301,\r\n TechnicianApplicantCountersignatureApproved = 302,\r\n TechnicianApplicantCountersignatureRefused = 303,\r\n TechnicianApplicantCountersignatureRejected = 304,\r\n TechnicianApplicantCountersignatureRecalled = 305,\r\n TechnicianApplicantApplicationSubmitted = 306,\r\n TechnicianApplicantFirstYearFeePaymentSuccessful = 307,\r\n TechnicianApplicantFirstYearFeeAvailable = 308,\r\n TechnicianApplicantApplicationTerminated = 309,\r\n TechnicianApplicantNoticeOfEntry = 310,\r\n TechnicianApplicantApplicationWaitingForApplicant = 311,\r\n\r\n // AROS Notifications\r\n\r\n ProgressReportFormOpenNotification = 401,\r\n ProgressReportFormCountersignatureRequest = 402,\r\n ProgressReportFormCountersignatureRecalled = 403,\r\n ProgressReportFormCountersignatureApproved = 404,\r\n ProgressReportFormCountersignatureRefused = 405,\r\n ProgressReportFormCountersignatureRejected = 406,\r\n ProgressReportThirtNineWeekResultCleared = 407,\r\n ProgressReportTempRegistrationAccepted = 408,\r\n ProgressReportTempRegistrationRejected = 409,\r\n\r\n // Assessment Registration Notifictions\r\n AssessmentRegistrationApplicationAvailable = 420,\r\n AssessmentRegistrationApplicationPaymentSuccessful = 421,\r\n AssessmentAttemptApplicationApproved = 422,\r\n AssessmentAttemptResultPublished = 423,\r\n\r\n\r\n // 52 Week Final Declaration Notifications\r\n FiftyTwoWeekFinalDeclarationFormOpenNotification = 501,\r\n FinalDeclarationFormCountersignatureRequest = 502,\r\n FinalDeclarationFormCountersignatureRecalled = 503,\r\n FinalDeclarationFormCountersignatureApproved = 504,\r\n FinalDeclarationFormCountersignatureRefused = 505,\r\n FinalDeclarationFormCountersignatureRejected = 506,\r\n FinalDeclarationFormProvisionalAccepted = 507,\r\n FinalDeclarationFormProvisionalRejected = 508,\r\n FinalDeclarationFiftyTwoWeekResultCleared = 509,\r\n\r\n // Independent prescriber\r\n IndependentPrescriberEligibleForApplication = 601,\r\n IndependentPrescriberCountersignatureRequested = 602,\r\n IndependentPrescriberCountersignatureRecalled = 603,\r\n IndependentPrescriberMentorRequestApproved = 604,\r\n IndependentPrescriberMentorRequestDeclined = 605,\r\n IndependentPrescriberMentorRequestRefused = 606,\r\n IndependentPrescriberApplicationAutoApproved = 607,\r\n IndependentPrescriberApplicationNonAutoApproved = 608,\r\n IndependentPrescriberApplicationApproved = 609,\r\n\r\n //VR notifications\r\n VoluntaryRemovalApplicationReceived = 701,\r\n VoluntaryRemovalApplicationApproved = 702,\r\n VoluntaryRemovalApplicationAutoApproved = 703,\r\n VoluntaryRemovalRegistrationStatusUpdated = 704,\r\n \r\n //RTR notifications\r\n ReturnToRegisterApplicationPendingRestorationFee = 801,\r\n ReturnToRegisterApplicationReceivedRevalidationRequired = 802,\r\n ReturnToRegisterApplicationReceivedRevalidationNotRequired = 803,\r\n ReturnToRegisterApplicationTerminated = 804,\r\n ReturnToRegisterApplicationApproved = 805,\r\n ReturnToRegisterRegistrationStatusUpdated = 806,\r\n ReturnToRegisterApplicationTerminatedNonPayment = 807,\r\n ReturnToRegisterApplicationFeePaymentReminder = 808,\r\n\r\n //CCPS notification\r\n CertificateProfessionalStandingApplicationSubmitted = 901,\r\n CertificateProfessionalStandingWaitingForApplicant = 902,\r\n CertificateProfessionalStandingApplicationCompleted = 903\r\n}\r\n","export enum SaveState {\r\n untouched,\r\n touched,\r\n confirmationRequired,\r\n confirmed,\r\n saving,\r\n saved\r\n}\r\n","import { Address } from './Address';\r\nimport { Contact } from './Contact';\r\nimport { Registrant } from '../../registration/model/Registrant';\r\nimport { Student } from '../../shared/model/student/Student';\r\nimport { RegistrantStatus } from '../../registration/model/RegistrantStatus';\r\nimport { UserPreference } from './UserPreference';\r\nimport { Technician } from '../../technician/model/Technician';\r\nimport { TrainingPlacement } from '../../prereg/model/TrainingPlacement';\r\nimport { PreregForm } from './PreregForm';\r\n\r\n\r\nexport class User {\r\n title: string;\r\n forenames: string;\r\n surname: string;\r\n middleName: string;\r\n status: string;\r\n preference: UserPreference;\r\n registrationStatus: RegistrantStatus;\r\n showAccountTab = true;\r\n dateOfBirth: string;\r\n contact: Contact;\r\n address: Address;\r\n registrant: Registrant;\r\n reviewer: boolean;\r\n student: Student;\r\n technician: Technician;\r\n roles: Array;\r\n hasCheckedRegistration: boolean;\r\n training: TrainingPlacement;\r\n //prereg : Prereg;\r\n availableApplication: PreregForm;\r\n\r\n get isPrereg() {\r\n return this.roles && this.roles.indexOf('prereg') > -1;\r\n }\r\n get isStudent() {\r\n return this.roles && this.roles.indexOf('student') > -1;\r\n }\r\n get isTechnicianApplicant() {\r\n return this.roles && this.roles.indexOf('technician_applicant') > -1;\r\n }\r\n get isSandwichStudent() {\r\n return this.registrationStatus === RegistrantStatus.PreRegistrationTraineeS;\r\n }\r\n\r\n get isRegistrant() {\r\n return this.roles && this.roles.indexOf('registrant') > -1;\r\n }\r\n\r\n get isReviewer() {\r\n return this.roles && this.roles.indexOf('reviewer') > -1;\r\n }\r\n\r\n get isJustReviewer() {\r\n return this.isReviewer && !this.isRegistrant;\r\n }\r\n\r\n\r\n get showNoticeOfEntry() {\r\n if (this.isRegistrant) {\r\n const now = new Date();\r\n const joined = new Date(this.registrant.joinedDate);\r\n const joinedPlusOneYear = new Date(new Date(this.registrant.joinedDate)\r\n .setFullYear(joined.getFullYear() + 1));\r\n const golive = new Date('2018-04-01');\r\n return joined > golive && now < joinedPlusOneYear;\r\n }\r\n return false;\r\n }\r\n\r\n\r\n toJson() {\r\n return {\r\n name: this.title + ' ' + this.forenames + ' ' + this.surname\r\n };\r\n }\r\n // user.roles = ['prereg'];\r\n // delete user.registrant;\r\n constructor(user) {\r\n if (!user.title) {\r\n user.title = '';\r\n }\r\n Object.assign(this, user);\r\n this.address = new Address(user.address);\r\n this.contact = new Contact(user.contact);\r\n\r\n if (this.isStudent) {\r\n this.showAccountTab = false;\r\n }\r\n\r\n if (this.isRegistrant) {\r\n this.registrant = new Registrant(user.registrant);\r\n this.registrant.title = user.title;\r\n this.registrant.forenames = user.forenames;\r\n this.registrant.surname = user.surname;\r\n this.registrant.status = this.registrationStatus;\r\n this.registrant.postalTown = this.address.town;\r\n }\r\n if (this.isTechnicianApplicant) {\r\n this.technician = new Technician(user.registrant);\r\n this.technician.title = user.title;\r\n this.technician.forenames = user.forenames;\r\n this.technician.surname = user.surname;\r\n this.technician.status = this.registrationStatus;\r\n this.technician.postalTown = this.address.town;\r\n }\r\n if (this.isReviewer) {\r\n this.reviewer = true;\r\n }\r\n }\r\n\r\n toString() {\r\n return this.title +\r\n ' ' + this.forenames +\r\n ' ' + this.surname;\r\n }\r\n\r\n preferencesNotSet() {\r\n return !this.preference || !this.preference.comms ||\r\n (this.preference.comms.essentialEmails === null || this.preference.comms.essentialEmails === undefined ||\r\n this.preference.comms.essentialTexts === null || this.preference.comms.essentialTexts === undefined);\r\n }\r\n\r\n get showReceipts() {\r\n return this.isRegistrant || this.isPrereg || this.isStudent || this.isTechnicianApplicant;\r\n }\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { NotificationType } from '../model/NotificationType';\r\nimport { Notification } from '../model/Notification';\r\n\r\n@Component({\r\n selector: 'app-notification-content',\r\n moduleId: module.id,\r\n templateUrl: './notificationContent.component.html'\r\n})\r\nexport class NotificationContentComponent implements OnInit {\r\n\r\n NotificationType = NotificationType;\r\n\r\n @Input() item: Notification;\r\n \r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n get type() {\r\n return this.item.type;\r\n }\r\n\r\n}\r\n","\r\n\r\n \r\n

{{ item.title }}

\r\n

\r\n You have been nominated by an applicant to countersign their application to register as a pharmacist.\r\n

\r\n

\r\n Click here to review the application.\r\n

\r\n

\r\n If you think that this application was sent you in error, you can indicate this on the application and it will be\r\n returned\r\n to the applicant.\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n Your application for pharmacist registration has been approved pending the results of the Registration assessment.\r\n

\r\n

\r\n Following the registration assessment results, you will receive a notification to update you of the status of your\r\n application.\r\n

\r\n

\r\n No action is currently required.\r\n

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

{{ item.title }}

\r\n

\r\n Your application for Pharmacist registration has been marked as ineligible following your assessment results. For\r\n further guidance on progressing your application please refer to your assessment results letter or the\r\n foundation manual - https://www.pharmacyregulation.org/preregmanual\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n Your application for registration as a Pharmacist has now been approved.\r\n

\r\n

\r\n Once you have passed your final training date and your 52 week training is complete then you will be able to make\r\n your first\r\n year fee payment of £257 from the homepage.\r\n

\r\n

\r\n \r\n Please note you will not be able to make the first year fee payment until the final date of your\r\n pre-registration training\r\n has passed\r\n \r\n

\r\n

\r\n Important: do not practise as a pharmacist until you have received your GPhC registration number and your name\r\n appears on\r\n the online register. Your first-year entry fee payment receipt is not proof of your registration. Practising as a\r\n pharmacist\r\n while not on the register is breaking the law and you can be prosecuted.\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n Your application to register as a pharmacist has been countersigned by your selected pharmacist.\r\n

\r\n

\r\n You can now review your application – if you make any changes, you will need to send it to be countersigned again.\r\n

\r\n

\r\n If you are satisfied with your application, you can now make your application payment to complete and submit it.\r\n

\r\n

\r\n Complete your application\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n Your application for registration has not been countersigned and has been returned to you with comments. Please\r\n review the comments from your selected pharmacist.\r\n

\r\n

\r\n You must have your application successfully countersigned to be able to apply for pharmacist registration.\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n Your application to register as a pharmacist has been returned by your selected countersigning pharmacist. They\r\n have indicated\r\n that it was sent to them in error.\r\n

\r\n

\r\n You will need to assign your application to another pharmacist to complete the countersigning section.\r\n

\r\n

\r\n You must make sure your application is countersigned to proceed.\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n The Pharmacist registration application which was previously submitted to you has been recalled by the\r\n pre-registration trainee.\r\n

\r\n

\r\n No further action required.\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n Your revalidation is due to be submitted soon.\r\n

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

\r\n Welcome to the register\r\n

\r\n

\r\n Your application is now complete. This notification is to confirm that you will now join the GPhC register as a\r\n pharmacy professional\r\n on the date set out in your notice of entry letter (which is available on the ‘Registration’ page). This letter\r\n confirms\r\n your registration details, as well as the date your registration starts.\r\n

\r\n\r\n

\r\n Important: do not practise as a pharmacy professional until you have received your GPhC registration number\r\n and your name\r\n appears on the online register. Your first-year entry fee payment receipt is not proof of your registration.\r\n Practising\r\n as a pharmacy professional while not on the register is breaking the law and you can be prosecuted.\r\n

\r\n\r\n

\r\n While you are registered, please remember that you must:\r\n

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

\r\n You will need to renew your registration and submit your revalidation records at least two months before it\r\n expires, using\r\n myGPhC. We will let you know what you need to do renew nearer the time.\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n Thank you for paying your first-year registration fee.\r\n

\r\n

\r\n We will confirm the date you will join the register as soon as possible by myGPhC notification. This will be on\r\n the first\r\n or the fifteenth of the month. If you have given us permission to contact you by email, we will send you an email\r\n once\r\n you have joined the register. Please note, this may take up to 14 days.\r\n

\r\n

\r\n Important: do not practise as a pharmacist until you have received your GPhC registration number and your\r\n name\r\n appears on the online register. It is your responsibility to check this before you practice. Your registration\r\n payment\r\n receipt is not proof of your registration. Practising as a pharmacist while not on the register is breaking the\r\n law\r\n and you can be prosecuted.\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n Thank you for submitting your online application and paying the application fee.\r\n

\r\n

\r\n Important: to complete your application, you must send us hard copies of all the documents you have scanned\r\n and\r\n uploaded in the Supporting documents section. You must include an application cover sheet (available as part of\r\n the\r\n application guidance). We recommend sending your documents using a trackable method such as Royal Mail ‘Signed\r\n For’.\r\n You are responsible for making sure your documents arrive with us in good time.\r\n

\r\n

\r\n Once we have received your paper supporting documents our applications team will assess the information you have\r\n given us\r\n and make a decision about your application.\r\n

\r\n

\r\n If you have submitted this application before you know your assessment result, you will not be able to join the\r\n register\r\n until your result is confirmed as a pass.\r\n

\r\n

\r\n If you have not fully completed your foundation training, you will not be able to join the register until\r\n this is confirmed\r\n as complete.\r\n

\r\n

\r\n If we do not need any additional information, we will confirm the decision on your application by myGPhC\r\n notification.\r\n

\r\n

\r\n If you have given us permission to contact you by email, we will send you an email once the decision is available\r\n for you\r\n to view.\r\n

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

\r\n {{ item.title }}\r\n

\r\n\r\n

\r\n Your registration renewal is now due. Please complete any of the following steps that are still outstanding:\r\n

\r\n
    \r\n
  • complete your renewal declarations
  • \r\n
  • pay your registration renewal fee
  • \r\n
  • submit your revalidation records covering your previous 12-month period of registration
  • \r\n
\r\n

\r\n If you do not do so before your renewal due date, your registration will be at risk and we may take action that\r\n could lead\r\n to your removal from the register.\r\n

\r\n

\r\n If you do not want to renew your registration and have already completed a voluntary removal form, please ignore\r\n this reminder.\r\n

\r\n

\r\n Your sincerely\r\n

\r\n

\r\n {{ item.sender}}\r\n

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

{{ item.title }}

\r\n

\r\n Your registration renewal is now due. Please complete any of the following steps that are still outstanding:\r\n

\r\n
    \r\n
  • complete your renewal declarations
  • \r\n
  • pay your registration renewal fee
  • \r\n
  • submit your revalidation records covering your previous 12-month period of registration
  • \r\n
\r\n

\r\n We are currently reviewing your Extenuating circumstances request. If you do not receive confirmation that your\r\n request has\r\n been accepted by the renewal due date above, and you do not submit the full revalidation requirement, you will be\r\n placed\r\n in remediation until you receive a decision about your request.\r\n

\r\n

\r\n You must complete your renewal declarations and pay your renewal fee as usual. If you do not do so before your\r\n renewal due\r\n date, your registration will be at risk and we may take action that could lead to your removal from the register.\r\n

\r\n

\r\n Your sincerely\r\n

\r\n

\r\n {{ item.sender}}\r\n

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

{{ item.title }}

\r\n\r\n

\r\n Your registration renewal is now due. Please complete any of the following steps that are still outstanding:\r\n

\r\n\r\n
    \r\n
  • complete your renewal declarations
  • \r\n
  • pay your registration renewal fee
  • \r\n
\r\n\r\n

\r\n As you have been granted an extension to your revalidation due date, you must now submit a full revalidation\r\n record by a\r\n new deadline of {{ item.data.RenewalDate }}.\r\n

\r\n

\r\n If you do not complete your renewal declarations and pay your renewal fee before your renewal due date, your\r\n registration\r\n will be at risk and we may take action that could lead to your removal from the register.\r\n

\r\n

\r\n Your sincerely\r\n

\r\n

\r\n {{ item.sender}}\r\n

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

{{ item.title }}

\r\n\r\n

\r\n Your revalidation submission is now due.\r\n

\r\n

\r\n Please review your\r\n revalidation records\r\n

\r\n

\r\n If you do not do so before your due date, you will be placed in remediation and your registration could be at\r\n risk.\r\n

\r\n

\r\n Your sincerely\r\n

\r\n

\r\n {{ item.sender}}\r\n

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

{{ item.title }}

\r\n

\r\n Thank you for submitting your revalidation records covering the 12-month period ending\r\n {{ item.data.RenewalDate }}.\r\n

\r\n

\r\n If your records are selected for review then we will contact you at the appropriate time to advise you.\r\n

\r\n

\r\n Your sincerely\r\n

\r\n

\r\n {{ item.sender}}\r\n

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

View your letter here

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

View your letter here

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

View your letter here

\r\n
\r\n\r\n \r\n Renewal window now open\r\n

View your renewal letter here

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

Feedback report

\r\n

A revalidation record feedback report is now available to read here.

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

Review(s) available

\r\n

You have one or more reviews available, with deadline\r\n {{item.data?.ReviewDeadline | date: 'dd/MM/yyyy'}}.\r\n

\r\n

\r\n View them here.\r\n

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

Your revalidation record has been selected for review

\r\n

\r\n The revalidation record that you submitted to us has been selected for review. If you would like more information\r\n on what will happen please read the revalidation framework. If we do not contact you to request further\r\n information we will provide you with a feedback report by {{item.data?.FeedbackDate | date: 'dd/MM/yyyy'}}.\r\n

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

Review {{ item.data?.ReviewTitle }}

\r\n

Your feedback for Review {{ item.data?.ReviewTitle }} was\r\n rejected.\r\n

\r\n

Please look at the comments made by the GPhC quality assurance team on this review and carry out the required\r\n actions.

\r\n\r\n

Thank you for your co-operation.

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

Urgent Review Batch deadline approaching - {{ item.data?.ReviewDeadline | date: 'dd/MM/yyyy' }}

\r\n

\r\n You currently have reviews that have been allocated to you for this deadline date which are not yet complete.\r\n Please ensure that all reviews for the stated deadline date are completed within a week of the date of this\r\n notification.\r\n

\r\n\r\n

\r\n Thank you for your co-operation.\r\n

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

{{ item.title }}\r\n

\r\n\r\n

\r\n Thank you for telling us about issues affecting your revalidation submission and requesting changes to the\r\n requirements.\r\n We have received your request.\r\n

\r\n

\r\n We will consider your request and the supporting information you have provided. If we do not need to discuss the\r\n matter\r\n further with you, we will upload our decision into your myGPhC account within\r\n {{ item.data?.EstimatedDaysToProcess}} days.\r\n

\r\n

\r\n If you have given us permission to contact you by email , we will send you an email once the decision is available\r\n for you to view.\r\n

\r\n

\r\n You can check whether you have opted to receive electronic communication on the ‘Account’ page of myGPhC and\r\n change your\r\n preferences if you want to.\r\n

\r\n

\r\n Your sincerely\r\n

\r\n

\r\n {{ item.sender}}\r\n

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

{{ item.title }}

\r\n\r\n

\r\n You have been nominated as a foundation designated supervisor by an applicant to the foundation training scheme.\r\n You can access their nomination request from the Registration tab, in the new ‘Learning contracts’ section\r\n

\r\n

\r\n Please review their training details and check that they are correct.\r\n

\r\n

\r\n If any of the details (for example the training dates) are incorrect,\r\n or if you think that this application was sent to you in error,\r\n indicate this on the application and it will be returned to the applicant.\r\n

\r\n

\r\n If you are content that all the application details are correct,\r\n and you are happy to accept the applicant as your trainee, please read the Learning Contract section. Your trainee\r\n should send you a copy of the Training Record when they have received confirmation that their application has been\r\n successful\r\n

\r\n

\r\n If you have\r\n \r\n any questions about your obligations as a designated supervisor,\r\n see our guidance on the main GPhC website.\r\n \r\n

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

{{ item.title }}

\r\n

\r\n A request to countersign a learning contract from a new foundation trainee has been withdrawn by the sender.\r\n

\r\n

\r\n Please speak to the applicant directly for further information.\r\n

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

{{ item.title }}

\r\n

\r\n Your learning contract has been signed by your prospective designated supervisor(s).\r\n

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

{{ item.title }}

\r\n

\r\n Your learning contract has been returned to you by one of your prospective designated supervisors.\r\n

\r\n

\r\n Please read their comments and either make the necessary changes to your application, or nominate a new\r\n foundation designated supervisor.\r\n

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

{{ item.title }}

\r\n

\r\n Your learning contract has been returned to you by one of your prospective designated supervisors. They have indicated that it was\r\n sent to them in error.\r\n

\r\n

\r\n You will need to speak to your training provider and nominate a new designated supervisor.\r\n

\r\n

\r\n Your application will not proceed until you have a nominated designated supervisor, and they have signed your learning contract.\r\n

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

{{ item.title }}

\r\n

\r\n Your application appears complete, you can now review your application and pay the application fee. Please note,\r\n your application will not be submitted for processing until payment is made.\r\n

\r\n

\r\n Important: you can’t start the foundation training year until your university has confirmed to us that you\r\n have been awarded a GPhC approved qualification, and that you have received confirmation from us that you can\r\n start training.\r\n

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

{{ item.title }}

\r\n

\r\n Your application for foundation training has been provisionally approved subject to confirmation from your\r\n university that you have been awarded your MPharm/OSPAP.\r\n

\r\n

\r\n Once we receive this confirmation from your university, we will send you another notification confirming that your\r\n foundation training has been approved, and stating when you can start training.\r\n

\r\n

If you become aware that you will not be awarded your qualification, or that it will be delayed, please contact\r\n us by email.

\r\n

If you will not be awarded your qualification, you will not be able to start training. You should request to\r\n withdraw your application in your email.

\r\n

If your qualification award will be delayed, you will not be able to start training until you have received it.\r\n Please let us know your updated planned training start date in your email, or if you want to withdraw from this\r\n training year.

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

{{ item.title }}

\r\n

\r\n This notification is to confirm that your application to join the foundation training scheme has been terminated. You\r\n are not currently eligible to commence foundation training.\r\n

\r\n

\r\n If your situation changes you will need to submit a new application to join the scheme.\r\n

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

{{ item.title }}

\r\n

\r\n We have reviewed your application for foundation training and found it incomplete.\r\n

\r\n

\r\n We will send you an email shortly with more information about the issue(s) delaying your application.\r\n

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

{{ item.title }}

\r\n

\r\n Your application to join the foundation training scheme has been submitted to the GPhC, you will receive an update\r\n once it has been processed.\r\n

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

{{ item.title }}

\r\n

\r\n Click here to access your Welcome Letter and Training Record\r\n

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

{{ item.title }}

\r\n

\r\n You were recently nominated as a foundation designated supervisor by an applicant wishing to commence training, and we\r\n notice that you have not yet responded to this request.\r\n

\r\n

\r\n Click here to review the application details and electronically sign a\r\n learning contract agreement between you and the trainee.\r\n

\r\n

\r\n If any of the details (for example the training dates) are incorrect, or if you think that this application was\r\n sent to you in error, you can indicate this on the application and it will be returned to the applicant.\r\n

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

{{ item.title }}

\r\n

\r\n You have been nominated by an applicant to countersign their application to register as a pharmacy technician.\r\n

\r\n

\r\n Click here to review the application.\r\n

\r\n

\r\n If you think that this application was sent you in error, you can indicate this on the application and it will\r\n be\r\n returned\r\n to the applicant.\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n Your application to register as a pharmacy technician has been countersigned by your selected pharmacist or\r\n pharmacy technician.\r\n

\r\n

\r\n You can now review your application – if you make any changes, you will need to send it to be countersigned again.\r\n

\r\n

\r\n If you are satisfied with your application, you can now make your application payment to complete and submit it.\r\n

\r\n

\r\n Complete your application\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n Your application for registration has not been countersigned and has been returned to you with comments. Please\r\n review the comments from your selected pharmacist or pharmacy\r\n technician.\r\n

\r\n

\r\n You must have your application successfully countersigned to be able to apply for pharmacist or pharmacy\r\n technician registration.\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n Your application to register as a pharmacy technician has been returned by your selected countersigning pharmacist\r\n or pharmacy technician. They\r\n have indicated\r\n that it was sent to them in error.\r\n

\r\n

\r\n You will need to assign your application to another pharmacist or pharmacy technicain to complete the\r\n countersigning section.\r\n

\r\n

\r\n You must make sure your application is countersigned to proceed.\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n The pharmacy technician registration application which was previously submitted to you has been recalled by the\r\n applicant.\r\n

\r\n

\r\n No further action required.\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n Thank you for submitting your online application and paying the application fee.\r\n

\r\n

\r\n Your application number is {{ item.data?.ApplicationNumber }}\r\n

\r\n

\r\n You should also quote this number if you need to contact us about your application.\r\n

\r\n

\r\n Important: to complete your application, you must send us hard copies of all the documents you have scanned\r\n and uploaded in the Supporting documents section. You must include an application cover sheet (available as part\r\n of the application guidance) and write your application number on the cover sheet.\r\n

\r\n

\r\n We recommend sending your documents using a trackable method such as Royal Mail ‘Signed For’. Use your tracking\r\n number to find out when your application has been delivered. You are responsible for making sure your documents\r\n arrive with us in good time.\r\n

\r\n

\r\n We will assess your application within 28 days of receiving both your online application and complete paper\r\n supporting documents.\r\n

\r\n

\r\n We will contact you by email if there are any issues with your application. If it is approved, you will receive a\r\n notification via myGPhC advising you that you can pay your registration fee in order to enter the register.\r\n You will not be able to pay the registration fee and join the register until after you have completed the work\r\n experience.\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n Your application for pharmacy technician registration has been approved. To complete your registration please make\r\n your first-year registration fee payment by clicking here.\r\n

\r\n

\r\n Important: Do not practise as a pharmacy technician until you have received your GPhC registration number\r\n and your name appears on the online register. Your first year entry fee receipt is not proof of your registration.\r\n Practising as a pharmacy technician while not on the register is breaking the law and you can be prosecuted.\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n Thank you for paying your first-year registration fee.\r\n

\r\n

\r\n You will receive a myGPhC notification when you have been added to the register. This will be on the first or the\r\n fifteenth of the month.\r\n

\r\n

\r\n Important: Do not practise as a pharmacy technician until you have received your GPhC registration number\r\n and your name appears on the online register. It is your responsibility to check this before you practice. Your\r\n registration payment receipt is not proof of your registration. Practising as a pharmacy technician while not on\r\n the register is breaking the law and you can be prosecuted.\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n Your application to join the register as a pharmacy technician has been terminated. We will send you an email\r\n shortly with more information about why your application was terminated.\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n We have reviewed your application to register as a pharmacy technician and found it to be incomplete.\r\n

\r\n

\r\n We will send you an email shortly with more information about the issue(s) delaying your application.\r\n

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

\r\n {{ item.title }}\r\n

\r\n

\r\n Your application is now complete and you have successfully joined the GPhC register as a pharmacy technician. Your\r\n notice of entry letter (which is available on the ‘Registration’ page) confirms your registration details,\r\n including the date you entered the register.\r\n

\r\n

\r\n While you are registered, please remember that you must:\r\n

\r\n
  • \r\n keep to the standards for pharmacy professionals\r\n
  • \r\n
  • \r\n carry out and record revalidation\r\n activity \r\n
  • \r\n
  • \r\n notify us\r\n of any changes to your name, home address or other contact details within one month of the date of the\r\n change\r\n
  • \r\n
  • \r\n notify us if anything happens which could call into question your fitness to\r\n practise , and would change your answers to the fitness to practise declarations you made in your\r\n application, within seven days of the event happening\r\n
  • \r\n
  • \r\n notify us if\r\n you no longer have appropriate indemnity arrangements in place\r\n
  • \r\n

    \r\n You will need to renew your registration and submit your revalidation records at least two months before it\r\n expires, using myGPhC. We will let you know what you need to do renew nearer the time.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n Please send your designated supervisor a request to sign-off the final stage of your training record.\r\n

    \r\n

    \r\n You can do this by clicking here\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n According to our records, you are nearing the time where you and your designated supervisor should discuss and complete your 39\r\n week\r\n progress report. If there have been any gaps in your training, or you have changed your training sites, you may\r\n not have\r\n reached this stage of your training yet.\r\n

    \r\n

    \r\n\r\n

    To be eligible to apply to sit the next registration assessment, you need to have received a satisfactory 39\r\n week\r\n progress report, via your myGPhC account.\r\n

    \r\n Once you have reached week 39 of your training and have discussed your progress with your designated supervisor, start completing your online progress report.\r\n

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

    {{ item.title }}

    \r\n\r\n

    \r\n You have been nominated by a pharmacist foundation trainee to complete their 39 week progress report.\r\n

    \r\n

    \r\n You will be asked to confirm whether the trainee has met the interim learning outcomes necessary to be signed off\r\n as satisfactory at 39 weeks.\r\n If they receive a ‘satisfactory’ outcome, the trainee will be eligible to sit the registration assessment as a\r\n result.\r\n

    \r\n

    \r\n Click here to review and complete the progress report.\r\n

    \r\n

    \r\n If you think this progress report was sent to you in error, you can indicate this on the report, and it will\r\n be returned to the trainee.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n The Progress report application which was previously submitted to you has been recalled by the\r\n foundation trainee.\r\n

    \r\n

    \r\n No further action required.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n Your selected designated supervisor has completed your 39 week progress report and marked it as satisfactory. Please review any\r\n comments your designated supervisor has entered here.\r\n

    \r\n

    \r\n If you are eligible, you will be able to apply for the registration assessment once the application has opened.\r\n Please contact us if you wish to\r\n discuss your assessment eligibility.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n Your selected designated supervisor has completed your 39 week progress report and marked it as unsatisfactory.\r\n Please review any comments your designated supervisor has entered here.\r\n

    \r\n

    \r\n At this stage you are not eligible to apply for the current registration assessment.\r\n

    \r\n

    \r\n It is important that you meet with your designated supervisor and agree a clear action plan to address the interim learning outcomes\r\n that are not being demonstrated at this stage.\r\n

    \r\n

    \r\n Your designated supervisor may decide to re-assess your competence at a later date, and re-complete the 39 week progress report.\r\n You may be eligible for the current\r\n registration assessment if you re-submit before the deadline.email prereg@pharmacyregulation.org. if you would like your online\r\n progress report\r\n unlocked to allow it to be re-completed.\r\n

    \r\n

    \r\n Further information can be found within the foundation training manual.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n Your selected designated supervisor has indicated that your 39 week progress report was sent to them in error,\r\n it has therefore been returned to you. Please contact us if you\r\n are unable to select your current designated supervisor to complete your progress report.\r\n

    \r\n

    \r\n Your 39 week progress report must be signed as satisfactory by your current foundation designated supervisor before you\r\n can be eligible to apply to sit the registration assessment.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n Your final progress report has been completed by your designated supervisor, who has marked it as satisfactory.\r\n

    \r\n

    \r\n Please view the progress report here.\r\n

    \r\n

    \r\n You have indicated that you do not wish to apply for provisional registration at this time.\r\n

    \r\n

    \r\n You will be able to apply for the next sitting of the registration assessment. Please continue to refer to our\r\n website\r\n for details of what you will need to do and when you need to apply.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n Your final progress report has been completed by your designated supervisor, who has marked it as satisfactory.\r\n

    \r\n

    \r\n Please view the progress report here.\r\n

    \r\n

    \r\n Your application for provisional registration has been submitted, you will receive\r\n an update on your application once it has been processed.\r\n\r\n Please note, you cannot join the provisional register until you have completed a\r\n full year of foundation training.\r\n\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n According to our records, you are eligible to apply to sit the next scheduled assessment sitting.\r\n Click here to start completing your online application.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n Thank you for applying to sit the upcoming registration assessment. Your application has now been processed and\r\n you will\r\n receive a confirmation email approximately three weeks prior to the assessment sitting.\r\n

    \r\n

    \r\n If you have not received anything from us two weeks before the date of the assessment please contact us at\r\n regexam@pharmacyregulation.org.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n You can now view your final entry notice for the registration assessment. This confirms that your are registered to sit. \r\n

    \r\n

    \r\n See your final entry notice.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n Your registration assessment result is now available. Please click\r\n \r\n here\r\n here to view the result\r\n letter.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n In order to be eligible to apply for registration as a pharmacist you are required to meet the GPhC’s requirement\r\n for a\r\n satisfactory final declaration. Please ask your designated supervisor to complete the online report that you can send to them by\r\n clicking\r\n here.\r\n \r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n You have been nominated by your foundation trainee pharmacist to complete their final declaration.\r\n

    \r\n

    You will be asked to confirm whether or not the trainee has met all interim learning outcomes and registration assessment framework, and in your\r\n opinion, is a\r\n fit and proper person to be registered, if they choose to apply.

    \r\n

    You will also be asked to declare if:

    \r\n
      \r\n
    • you believe the trainee is safe to be registered
    • \r\n
    • that the trainee has demonstrated behaviours which indicate they could meet the standards for pharmacy\r\n professionals\r\n once registered, including using their professional judgement and speaking up when they have concerns or when\r\n things go\r\n wrong (standards 5 and 8 of the standards for pharmacy professionals)
    • \r\n
    \r\n

    \r\n Before confirming that the trainee is safe to be registered, you must discuss this with another registered\r\n pharmacy or\r\n healthcare professional who has:\r\n

    \r\n
      \r\n
    • overseen their training as a Superintendent Pharmacist or Chief Pharmacist, or
    • \r\n
    • been involved in the quality assurance of their training as a member of an education and training\r\n organisation, or
    • \r\n
    • worked with the trainee as a member of the pharmacy or hospital team
    • \r\n
    \r\n

    They must confirm to you that they have not seen any behaviours or practice which would prevent the trainee\r\n meeting the\r\n standards for pharmacy professionals.

    \r\n

    Please make sure you have made a note of their name and registration number, and their registration body if they\r\n are not\r\n registered with the GPhC, as you will need to include it in your declaration. Please make them aware that we will\r\n keep\r\n this information and may contact them in relation to this declaration.

    \r\n

    For more information about your accountability in making this declaration, please see the \r\n Pharmacist foundation supervisors page of the main GPhC website

    \r\n Click here to review the application.\r\n

    If you think the final declaration report was sent to you in error, you can indicate this on the report and it\r\n will be\r\n returned to the trainee.

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n A request to complete a Final declaration for your foundation trainee has been withdrawn.\r\n

    \r\n

    \r\n Please speak to the trainee directly for further information.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n Your final declaration has been completed by your designated supervisor, who has marked it as satisfactory. See your final\r\n declaration here.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n Your final declaration has been completed by your designated supervisor, who has marked it as unsatisfactory. See your final\r\n declaration\r\n and your designated supervisor’s comments here.\r\n

    \r\n

    \r\n You are not eligible to apply for registration as a pharmacist until you receive a satisfactory final progress\r\n report.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n The designated supervisor selected by you to sign the final declaration states that it has been sent to them in error. Click here to go\r\n into the progress report and select a different designated supervisor.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n Your final declaration has been completed by your designated supervisor, who has marked it as satisfactory.\r\n

    \r\n

    \r\n Please view your progress report here.\r\n

    \r\n

    \r\n Your application for provisional registration has been submitted and is subject to satisfactory completion of a\r\n full\r\n year of foundation training.\r\n\r\n\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n Your final declaration has been completed by your designated supervisor, who has marked it as satisfactory.\r\n

    \r\n

    \r\n Please view your progress report here.\r\n

    \r\n

    \r\n You have indicated that you do not wish to apply for provisional registration at this time.\r\n

    \r\n

    \r\n Please continue to refer to our website as well as checking your myGPhC account for actions that you may be\r\n eligible to\r\n take.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n Please send your designated supervisor a request to sign-off the final stage of your training record.\r\n

    \r\n

    \r\n You can do this by clicking here\r\n

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

    {{ item.title }}

    \r\n

    \r\n Your application has been approved. You must now pay the restoration fee to be returned to the register.\r\n

    \r\n

    \r\n If you are returning to the register in the two months before the anniversary of your previous renewal deadline, you will also need to pay the renewal fee for the following year at the same time as the restoration fee. \r\n

    \r\n

    If you do not pay the relevant fee(s) within 28 days, your application will be terminated. If you want to re-join the register after your application is terminated, you will need to re-apply and pay a new application fee.

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

    {{ item.title }}

    \r\n

    Thank you for applying to re-join the register. You now need to submit your outstanding revalidation record within 28 days, by selecting the Revalidation heading at the top of the screen.

    \r\n

    After you have submitted your revalidation record your application will be reviewed, we will contact you if further information is required.

    \r\n

    Once your application has been approved you will be sent a notification asking you to pay the relevant fee(s) so that your restoration can be completed.

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

    {{ item.title }}

    \r\n

    Thank you for applying to re-join the register.

    \r\n

    Your application will now be reviewed by the GPhC, who may contact you if further information is required.

    \r\n

    Once your application has been approved you will be sent a notification asking you to pay the relevant fee(s) so that your restoration can be completed.

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

    {{ item.title }}

    \r\n

    \r\n Your application to restore your entry to the register has been terminated. \r\n We will send you an email shortly with more information about why your application was terminated.\r\n

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

    {{ item.title }}

    \r\n

    \r\n Your application to restore your registration has been terminated as you have not paid the restoration fee. \r\n If you want to re-join the register you need to submit a new application and application fee.\r\n

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

    {{ item.title }}

    \r\n

    \r\n This is a reminder that your application for restoration has been approved, \r\n please make payment of your re-entry fee to re-join the register.\r\n

    \r\n

    \r\n You must make payment within 7 days, \r\n failure to do so will result in the application being terminated.\r\n

    \r\n

    \r\n Please note that you must not practise until your name appears on the register. \r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n Thank you for paying your re-entry fee.\r\n

    \r\n

    \r\n You will receive a myGPhC notification when you have been added to the register.\r\n

    \r\n

    \r\n Important: Do not practise as a pharmacy professional until your name appears on the online register. It is your responsibility to check this before you practice. Your\r\n re-entry payment receipt is not proof of your registration. Practising as a pharmacy professional while not on\r\n the register is breaking the law and you can be prosecuted.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n Your application for restoration is now complete and you have successfully re-joined the GPhC register.\r\n

    \r\n

    \r\n While you are registered, please remember that you must:\r\n

    \r\n \r\n

    \r\n Make time now to check when your registration expires as you will need to renew and submit \r\n your revalidation records at least two months before it expires. We will send you a myGPhC \r\n notification when your registration is next due to be renewed.\r\n

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

    {{ item.title }}

    \r\n

    \r\n Your request for a certificate of current professional status and fitness to practise history has been submitted. \r\n We may contact you directly to discuss your request. \r\n You will receive confirmation through your myGPhC account when your request has been completed. \r\n If you don't receive confirmation within 28 days of this notification, please contact us.\r\n

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

    {{ item.title }}

    \r\n

    \r\n The GPhC needs to discuss your application. You will receive a request by email requesting additional information. Your application can't be \r\n progressed until you have responded to us.\r\n

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

    {{ item.title }}

    \r\n

    \r\n The certificate of current professional status and fitness to practise history you requested has been sent to {{ item.data?.RegulatoryBodyName || \"your selected regulatory body\" }}.\r\n

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

    {{ item.title }}

    \r\n

    \r\n We have received confirmation that you have successfully completed an independent prescriber course.\r\n If you would like this annotation to be recorded on the public register then please click\r\n here to complete the relevant application.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n The prescribing pharmacist you nominated has confirmed that they are willing to act as your prescriber\r\n mentor for a period of one month after your annotation is added to your registration.\r\n Please click here to submit\r\n your application and pay the fee for the addition of your annotation.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n The independent prescriber application that was previously submitted to you has been recalled by\r\n the registrant. No further action is required.\r\n

    \r\n

    \r\n No further action required.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n The prescribing pharmacist you nominated has rejected your request to act as your prescriber mentor. Please click\r\n here\r\n to nominate another prescribing pharmacist who is willing to act as your mentor.\r\n

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

    \r\n {{ item.title }}\r\n

    \r\n

    \r\n The prescribing pharmacist you nominated has advised that this request has been sent to them in error.\r\n Please click here to select another prescribing\r\n pharmacist who is willing to act as your mentor.\r\n

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

    {{ item.title }}

    \r\n

    \r\n You have been nominated as a ‘prescriber mentor’ by a pharmacist who has completed an independent prescribing\r\n course. Please confirm if you are willing to act as a mentor by reading the information and responding to the\r\n request by clicking here.\r\n

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

    {{ item.title }}

    \r\n

    \r\n Thank you for your application to add an independent prescriber annotation to your registration.\r\n We are reviewing the information that you have provided and will advise you once your application has been approved.\r\n This can take up to 28 days. If we require further information we will contact you directly.\r\n

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

    {{ item.title }}

    \r\n

    \r\n Your application for an independent prescriber annotation has been approved and we will update your\r\n registration details to reflect this. Please contact us if your annotation is not showing on your\r\n online register entry within three working days of this notification\r\n

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

    {{ item.title }}

    \r\n

    \r\n Your application for an independent prescriber annotation has been approved and we\r\n will update your registration details to reflect this. Please contact us if your annotation\r\n is not showing on your online register entry within three working days of this notification\r\n

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

    {{ item.title }}

    \r\n

    \r\n Thank you for your application to remove your entry from the register. \r\n We will review the information that you have provided and will advise you once a \r\n decision has been made. This can take up to 28 days.\r\n

    \r\n

    \r\n If we need any more information to process your application, we will contact you directly.\r\n

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

    {{ item.title }}

    \r\n

    \r\n Your application to remove your entry from the register on {{item.data?.VoluntaryRemovalDate | date: 'dd/MM/yyyy'}} has been approved. \r\n We will send you a confirmation through your myGPhC account on the day that your entry is removed from the public facing register. \r\n

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

    {{ item.title }}

    \r\n

    \r\n Your application to remove your entry from the register on {{item.data?.VoluntaryRemovalDate | date: 'dd/MM/yyyy'}} has been approved. \r\n We will send you a confirmation through your myGPhC account on the day that your entry is removed from the public facing register. \r\n

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

    {{ item.title }}

    \r\n

    \r\n Thank you for your application to voluntarily remove your name from the General Pharmaceutical Council’s register. \r\n To view the letter confirming this and what you will need to do if you wish to rejoin the register in the future please \r\n click here\r\n

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

    \r\n Request reference: {{ item.data?.ReferenceNumber }}\r\n
    Date submitted: {{ item.data?.SubmittedAt }}\r\n

    \r\n\r\n

    We have reviewed your request and the decision is now available for you to view.

    \r\n\r\n

    \r\n Click here to\r\n view your request and the decision.\r\n

    \r\n\r\n\r\n\r\n
    \r\n","import { Component, OnInit, ChangeDetectorRef, ViewChild, ElementRef, AfterViewInit, ViewChildren, QueryList } from '@angular/core';\r\nimport { AccountService } from '../service/account.service';\r\nimport { Router } from '@angular/router';\r\nimport { LayoutService } from '../../core/service/layout.service';\r\nimport { Notification } from '../model/Notification';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { trigger, transition, animate, style } from '@angular/animations';\r\nimport { NotificationType } from '../model/NotificationType';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\n@Component({\r\n selector: 'app-notifications',\r\n templateUrl: './notifications.component.html',\r\n styleUrls: ['./notifications.scss'],\r\n animations: [\r\n trigger('slideIn', [\r\n transition(':enter', [\r\n style({\r\n transform: 'translateY(5px)',\r\n opacity: 0.3\r\n }),\r\n animate('400ms cubic-bezier(0, 0, 0.2, 1)',\r\n style({\r\n transform: 'translateY(0)',\r\n opacity: 1\r\n }))\r\n ])\r\n ])\r\n ]\r\n})\r\nexport class NotificationsComponent implements OnInit, AfterViewInit {\r\n\r\n constructor(private service: AccountService, private router: Router,\r\n public layout: LayoutService, public authService: AuthService, private cd: ChangeDetectorRef) { }\r\n\r\n loading = false;\r\n failed = false;\r\n selectedItem: Notification;\r\n pageNum = 0;\r\n pageSize = 5;\r\n totalCount;\r\n notifications;\r\n NotificationType = NotificationType;\r\n @ViewChildren(\"messageContentSkip\") messageContentSkip: QueryList;\r\n @ViewChild(\"messageContent\") messageContent: ElementRef;\r\n\r\n ngOnInit() {\r\n this.load();\r\n this.updateCount();\r\n }\r\n\r\n load() {\r\n this.loading = true;\r\n this.failed = false;\r\n const props: any = {};\r\n\r\n this.service\r\n .getNotifications(this.pageNum * this.pageSize, this.pageSize, props)\r\n .subscribe(result => {\r\n this.notifications = result;\r\n this.totalCount = props.totalCount;\r\n this.loading = false;\r\n this.open(result[0]);\r\n }, error => {\r\n this.loading = false;\r\n this.failed = true;\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setCustomFocusOrder();\r\n }\r\n\r\n setCustomFocusOrder() {\r\n setTimeout(() => {\r\n try {\r\n let arr = this.messageContentSkip.toArray();\r\n\r\n if (arr && arr.length > 0) {\r\n for (let i = 0; i < arr.length; i++) {\r\n arr[i].nativeElement.addEventListener('focus', () => {\r\n this.messageContent.nativeElement.focus();\r\n }, true);\r\n }\r\n } \r\n } catch (error) {\r\n console.log(error);\r\n }\r\n }, 5000);\r\n }\r\n\r\n updateCount() {\r\n this.service.updateNotificationCount().subscribe();\r\n }\r\n\r\n get pageTo() {\r\n const pageTo = (this.pageNum + 1) * this.pageSize;\r\n return pageTo > this.totalCount ? this.totalCount : pageTo;\r\n }\r\n get pageFrom() {\r\n return (this.pageNum * this.pageSize) + 1;\r\n }\r\n\r\n nextPage() {\r\n this.pageNum++;\r\n this.load();\r\n }\r\n\r\n prevPage() {\r\n this.pageNum--;\r\n this.load();\r\n }\r\n\r\n open(item: Notification) {\r\n if (!this.layout.state.xs) {\r\n this.selectedItem = undefined;\r\n }\r\n\r\n setTimeout(() => {\r\n this.selectedItem = item;\r\n });\r\n\r\n setTimeout(() => {\r\n if (item && this.selectedItem && item === this.selectedItem &&\r\n item.deactivateManually && !item.deactivatedAt) {\r\n this.service.markNotificationHandled(item.id).subscribe(() => {\r\n item.deactivatedAt = new Date().toJSON();\r\n this.updateCount();\r\n /*\r\n const props: any = {};\r\n this.service.getNotifications(this.pageNum, this.pageSize, props)\r\n .subscribe(result => {\r\n if (this.selectedItem) {\r\n this.selectedItem = result.find(n => n.id === this.selectedItem.id);\r\n }\r\n this.totalCount = props.totalCount;\r\n this.notifications = result;\r\n\r\n });\r\n */\r\n });\r\n }\r\n }, 2000);\r\n }\r\n\r\n createTestNotification() {\r\n this.service.createTestNotification().subscribe(() => {\r\n this.load();\r\n });\r\n }\r\n\r\n navigate(item) {\r\n this.router.navigate([item.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 \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    {{ selectedItem.sender }}
    \r\n
    \r\n \r\n {{ selectedItem.title }}\r\n
    \r\n
    {{ selectedItem.time | utcDate }}
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n\r\n

    \r\n You don't have any notifications\r\n

    \r\n
    \r\n\r\n\r\n Loading content...\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    {{item.sender}}
    \r\n
    \r\n
    {{item.time | utcDate }}
    \r\n
    \r\n
    \r\n {{ item.title }}\r\n
    \r\n
    Message content skip - clickable
    \r\n
    \r\n\r\n\r\n
    \r\n {{ pageFrom }} - {{ pageTo }} of {{totalCount}}\r\n\r\n \r\n \r\n
    \r\n
    ","import { Component, Inject, OnInit, ChangeDetectorRef } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { UserPreference } from './model/UserPreference';\r\nimport { SaveState } from './model/SaveState';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport {AccountService } from './service/account.service';\r\n\r\n@Component({\r\n selector: 'app-preference-dialog',\r\n templateUrl: './preferenceDialog.component.html',\r\n styleUrls: ['./preferenceDialog.scss', './dialog.scss']\r\n})\r\nexport class PreferenceDialogComponent {\r\n\r\n constructor(public dialogRef: MatDialogRef, private dialog: MatDialog,\r\n private authService: AuthService, private accountService: AccountService) {}\r\n\r\n saveState: SaveState = SaveState.untouched;\r\n SaveState = SaveState;\r\n saving = false;\r\n\r\n preference: UserPreference= {\r\n comms: {\r\n essentialEmails: false,\r\n essentialTexts: false,\r\n importantEmails: false,\r\n importantTexts: false\r\n },\r\n ui: {\r\n showTooltips: true\r\n }\r\n };\r\n\r\n trySave() {\r\n this.saveState = SaveState.touched;\r\n }\r\n\r\n onSaveStateChange(state: SaveState) {\r\n this.saveState = state;\r\n if (state === SaveState.confirmed) {\r\n this.confirm();\r\n }\r\n\r\n }\r\n\r\n change() {\r\n this.saveState = SaveState.untouched;\r\n }\r\n\r\n confirm() {\r\n this.saving = true;\r\n this.accountService.savePreference(this.preference).subscribe(() => {\r\n this.authService.updateCachedPreference(this.preference);\r\n this.saveState = SaveState.saved;\r\n this.saving = false;\r\n });\r\n }\r\n\r\n close() {\r\n this.dialogRef.close(this.preference);\r\n }\r\n\r\n}\r\n","

    \r\n Your communication preferences

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

    You can update your preferences at any time in the\r\n Account section

    \r\n\r\n

    Thank you. Your preferences have been saved\r\n

    \r\n\r\n
    \r\n\r\n\r\n\r\n \r\n\r\n \r\n\r\n
    \r\n\r\n \r\n \r\n\r\n
    \r\n\r\n \r\n\r\n \r\n
    ","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Contact } from './model/Contact';\r\nimport { AccountService } from './service/account.service';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { UserPreference } from './model/UserPreference';\r\nimport { SaveState } from './model/SaveState';\r\n\r\n@Component({\r\n selector: 'app-preference-editable',\r\n moduleId: module.id,\r\n templateUrl: './preferenceEditable.component.html'\r\n})\r\nexport class PreferenceEditableComponent implements OnInit {\r\n\r\n editing = false;\r\n saving = false;\r\n\r\n SaveState = SaveState;\r\n saveState: SaveState = SaveState.untouched;\r\n\r\n editablePreference: UserPreference;\r\n preference: UserPreference;\r\n\r\n constructor(private service: AccountService, public auth: AuthService) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n if (!this.auth.user.preference) {\r\n this.auth.user.preference = {\r\n comms: {\r\n essentialEmails: false,\r\n essentialTexts: false,\r\n importantEmails: false,\r\n importantTexts: false\r\n },\r\n ui: {\r\n showTooltips: true\r\n }\r\n };\r\n }\r\n if (!this.auth.user.preference.ui) {\r\n this.auth.user.preference.ui = {\r\n showTooltips: true\r\n };\r\n }\r\n\r\n this.preference = this.auth.user.preference;\r\n this.editablePreference = Object.assign({}, this.auth.user.preference);\r\n }\r\n\r\n save() {\r\n this.saving = true;\r\n this.service.savePreference(this.editablePreference)\r\n .subscribe(result => {\r\n this.auth.user.preference = Object.assign({}, this.editablePreference);\r\n this.preference = this.auth.user.preference;\r\n this.auth.updateCachedPreference(this.auth.user.preference);\r\n this.editing = false;\r\n this.saving = false;\r\n this.saveState = SaveState.saved;\r\n },\r\n error => {\r\n this.saving = false;\r\n });\r\n }\r\n\r\n onEdit() {\r\n this.editing = true;\r\n this.saveState = SaveState.untouched;\r\n }\r\n\r\n\r\n cancel() {\r\n if (this.saveState === SaveState.confirmationRequired) {\r\n this.saveState = SaveState.untouched;\r\n } else {\r\n this.editing = false;\r\n this.editablePreference = Object.assign({}, this.auth.user.preference);\r\n }\r\n }\r\n\r\n onSaveStateChange(state: SaveState) {\r\n // this.saveState = state;\r\n // if (state === SaveState.confirmed) {\r\n this.confirm();\r\n // }\r\n }\r\n\r\n trySave() {\r\n if (this.saveState === SaveState.untouched) {\r\n this.saveState = SaveState.touched;\r\n } else {\r\n this.confirm();\r\n }\r\n }\r\n\r\n change() {\r\n this.saveState = SaveState.untouched;\r\n }\r\n\r\n confirm() {\r\n this.save();\r\n }\r\n}\r\n","\r\n Preferences\r\n
    \r\n

    Communications

    \r\n
    \r\n\r\n Receive essential information about my current registration (such as renewal reminders and revalidation information)\r\n by:\r\n
    \r\n
    \r\n email
    \r\n
    {{ preference.comms.essentialEmails | friendlyBoolean }}
    \r\n
    \r\n
    \r\n
    \r\n text message
    \r\n
    {{ preference.comms.essentialTexts | friendlyBoolean }}
    \r\n
    \r\n
    \r\n
    \r\n\r\n Receive important information relevant to my current registration as a pharmacy professional (such as updates on key\r\n regulatory changes and invitations to respond to consultations) by:\r\n
    \r\n
    \r\n email
    \r\n
    {{ preference.comms.importantEmails | friendlyBoolean }}
    \r\n
    \r\n
    \r\n
    \r\n text message
    \r\n
    {{ preference.comms.importantTexts | friendlyBoolean }}
    \r\n
    \r\n
    \r\n

    User interface

    \r\n
    \r\n
    \r\n Show tooltips
    \r\n
    {{ preference.ui.showTooltips | friendlyBoolean }}
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n

    Communications

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

    myGPhC

    \r\n
    \r\n \r\n \r\n Show tooltips\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 { AuthService } from '../../core/service/auth.service';\r\nimport { LogService } from '../../core/service/log.service';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { Contact } from '../model/Contact';\r\nimport { Address } from '../model/Address';\r\nimport { UserPreference } from '../model/UserPreference';\r\nimport { CustomErrorHandler } from '../../core/service/CustomErrorHandler';\r\nimport { RegistrantActivation } from '../activation/model/RegistrantActivation';\r\nimport { StudentActivation } from '../activation/model/StudentActivation';\r\nimport { Notification } from '../model/Notification';\r\nimport { NotificationType } from '../model/NotificationType';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { of as observableOf } from 'rxjs';\r\nimport { tap, map } from 'rxjs/operators';\r\nimport { PreregActivation } from '../activation/model/PreregActivation';\r\nimport { ServiceBase } from '../../core/service/service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable()\r\nexport class AccountService extends ServiceBase {\r\n\r\n constructor(http: HttpClient, auth: AuthService, log: LogService, errorHandler: CustomErrorHandler) {\r\n super(http, auth, log, errorHandler);\r\n }\r\n\r\n countries;\r\n salutations;\r\n ediOptions;\r\n notificationCount$ = new BehaviorSubject(0);\r\n startedCheckingNotificationCount = false;\r\n\r\n getCountries(): Observable {\r\n if (this.countries) {\r\n return observableOf(this.countries);\r\n } else {\r\n return super.get('v1.0/lookup/countries').pipe(tap(result => {\r\n this.countries = result;\r\n }));\r\n }\r\n }\r\n\r\n getSalutations(): Observable {\r\n if (this.salutations) {\r\n return observableOf(this.salutations);\r\n } else {\r\n return super.getFile('./assets/salutations.json').pipe(tap(result => {\r\n this.salutations = result;\r\n }));\r\n }\r\n }\r\n\r\n getEdiOptions() {\r\n if (this.ediOptions) {\r\n return observableOf(this.ediOptions);\r\n } else {\r\n return this.get('v1.0/equalitydiversity').pipe(tap(result => {\r\n this.ediOptions = result;\r\n }));\r\n }\r\n }\r\n\r\n getMockNotifications(): any {\r\n const createNotification = (type: NotificationType) => {\r\n return {\r\n id: 'kingkong',\r\n type,\r\n priority: 1,\r\n sender: 'gphc',\r\n submissionDeadline: new Date(),\r\n title: 'Gaius Julius Caesar',\r\n data: {\r\n firstName: 'Fareeha',\r\n ReferenceNumber: 78,\r\n SubmittedAt: '2018-07-23T13:10:29.517',\r\n id: '93b30eb9-8760-4e41-9044-09c57bcaf52e',\r\n },\r\n time: new Date(),\r\n deactivatedAt: 'some time',\r\n deactivateManually: false,\r\n content: 'Hello'\r\n };\r\n };\r\n const notifications = [];\r\n\r\n // for testing new renewalRevalidationNotifications\r\n for (let i = 80; i <= 100; i++ ) {\r\n notifications.push(createNotification(i));\r\n }\r\n\r\n/*\r\n const keys = new KeysPipe();\r\n const value = keys.transform(NotificationType, []);\r\n value.forEach((element: any) => {\r\n console.log(element.value);\r\n notifications.push(createNotification(NotificationType[element.value]));\r\n });*/\r\n\r\n return observableOf(notifications);\r\n }\r\n\r\n getNotifications(skip = 0, pageSize = 5, props = {}): Observable> {\r\n // return this.getMockNotifications();\r\n return this.get(`v1.0/registrant/notifications?skip=${skip}&take=${pageSize}`, null, props);\r\n }\r\n\r\n hasCheckedRegistrationDetails() {\r\n return this.post('v1.0/registrant/?hasCheckedRegistration=true', {});\r\n }\r\n\r\n updateNotificationCount() {\r\n return this.get(`v1.0/registrant/notifications/unreadcount`)\r\n .pipe(tap(count => { setTimeout(() => { this.notificationCount$.next(count); }); } ));\r\n }\r\n\r\n startCheckingNotificationCount() {\r\n if (this.startedCheckingNotificationCount) {\r\n return;\r\n }\r\n this.startedCheckingNotificationCount = true;\r\n this.updateNotificationCount().subscribe(() => {\r\n setTimeout(this.updateNotificationCount.bind(this), 30000);\r\n });\r\n }\r\n\r\n markNotificationHandled(id) {\r\n return this.post(`v1.0/registrant/notifications/${id}/deactivate`, null);\r\n }\r\n\r\n createTestNotification() {\r\n return this.get(`v1.0/registrant/notifications/create`);\r\n }\r\n\r\n saveContact(contact: Contact) {\r\n if (contact.mobilePhone) {\r\n contact.mobilePhone = contact.mobilePhone.trim();\r\n }\r\n if (contact.telephone1) {\r\n contact.telephone1 = contact.telephone1.trim();\r\n }\r\n if (contact.telephone2) {\r\n contact.telephone2 = contact.telephone2.trim();\r\n }\r\n return super.put('v1.0/user/contact', contact);\r\n }\r\n\r\n savePreference(preference: UserPreference) {\r\n return super.put('v1.0/user/preferences', preference);\r\n }\r\n\r\n saveAddress(address: Address) {\r\n return super.put('v1.0/user/address', address);\r\n }\r\n\r\n requestEmailUpdate(email: string) {\r\n return super.put('v1.0/user/email', { email });\r\n }\r\n\r\n verifyRegistrationNumber(registrationNumber: string) {\r\n return super.get(`v1.0/linkaccount/name?linkId=${registrationNumber}`);\r\n }\r\n\r\n activateRegistration(activation: RegistrantActivation) {\r\n const payload = {\r\n linkId: activation.registrationNumber,\r\n dateOfBirth: activation.dob,\r\n postcode: activation.postcode,\r\n activationCode: activation.activationCode\r\n };\r\n return super.post(`v1.0/linkaccount/registrant`, payload);\r\n }\r\n\r\n activatePrereg(activation: PreregActivation) {\r\n const payload = {\r\n lastname: activation.lastname,\r\n dateOfBirth: activation.dob,\r\n qualificationId: activation.qualificationId\r\n };\r\n return super.post(`v1.0/linkaccount/prereg`, payload);\r\n }\r\n\r\n activateStudent(activation: StudentActivation) {\r\n const payload = {\r\n lastname: activation.lastname,\r\n dateOfBirth: activation.dob,\r\n qualificationId: activation.qualificationId\r\n };\r\n return super.post(`v1.0/linkaccount/student`, payload);\r\n }\r\n\r\n verifyStudent(activation){\r\n return super.get(`v1.0/linkaccount/student/verify?Lastname=${activation.lastname}&DateOfBirth=${activation.dob}&QualificationId=${activation.qualificationId}`);\r\n }\r\n\r\n verifyPrereg(activation) {\r\n return super.get(`v1.0/linkaccount/prereg/verify?Lastname=${activation.lastname}&DateOfBirth=${activation.dob}&QualificationId=${activation.qualificationId}`);\r\n }\r\n\r\n searchAddress(countryCode: string, postcode: string): Observable> {\r\n return super.get('v1.1/address/search', { countryCode, postcode });\r\n }\r\n\r\n getAddress(id: string) {\r\n return super.get('v1.0/address/details', { id })\r\n .pipe(map(data => {\r\n if (data.length) {\r\n const address = new Address(data[0]);\r\n return address;\r\n } else {\r\n return null;\r\n }\r\n }));\r\n }\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { EqualityDiversityOptions } from '../model/EqualityDiversityOptions';\r\nimport { EqualityDiversity } from '../model/EqualityDiversity';\r\nimport { AccountService } from './account.service';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { StepValidity } from '../../shared/formStepper/StepValidity';\r\nimport { of as observableOf, from as observableFrom } from 'rxjs';\r\nimport { map, tap } from 'rxjs/operators';\r\n\r\n// Pascal cased props due to section names returned from the server\r\ninterface EdiValidity {\r\n Gender: boolean;\r\n Ethnicity: boolean;\r\n Religion: boolean;\r\n Disability: boolean;\r\n// Nationality: boolean;\r\n SexualOrientation: boolean;\r\n}\r\n\r\n@Injectable() export class EdiService {\r\n\r\n options$ = new BehaviorSubject(null);\r\n validity$ = new BehaviorSubject({\r\n Gender: false,\r\n Ethnicity: false,\r\n Religion: false,\r\n Disability: false,\r\n // Nationality: false,\r\n SexualOrientation: false\r\n });\r\n constructor(private accountService: AccountService) { }\r\n\r\n load() {\r\n if (!this.options$.value) {\r\n return this.accountService.getEdiOptions().pipe(tap(data => {\r\n const optionsWithoutNationality = {\r\n ethnicity: data.ethnicity,\r\n sections: data.sections.slice(0).filter(section => section.name !== 'Nationality')\r\n };\r\n this.options$.next(optionsWithoutNationality);\r\n }));\r\n } else {\r\n return observableOf(this.options$.value);\r\n }\r\n }\r\n\r\n get options() {\r\n return this.options$.value;\r\n }\r\n\r\n notSelected() {\r\n const notselected = {\r\n selected: 0,\r\n other: ''\r\n };\r\n const selection = {\r\n ethnicity: Object.assign({}, notselected),\r\n sections: {}\r\n };\r\n this.options.sections.forEach(section => {\r\n selection.sections[section.name] = Object.assign({}, notselected);\r\n });\r\n return selection;\r\n }\r\n\r\n selectionToModel(selection): EqualityDiversity {\r\n\r\n const edi: EqualityDiversity = {\r\n ethnicity: undefined,\r\n ethnicityOther: '',\r\n nationality: undefined,\r\n religion: undefined,\r\n religionOther: '',\r\n disabled: undefined,\r\n disabilityDetails: '',\r\n gender: undefined,\r\n sexualOrientation: undefined\r\n };\r\n edi.ethnicity = selection.ethnicity.selected;\r\n edi.ethnicityOther = this.isOtherEthnicity(edi.ethnicity) ? selection.ethnicity.other : '';\r\n\r\n for (const name in selection.sections) {\r\n const section = selection.sections[name];\r\n switch (name.toLowerCase()) {\r\n /* case 'nationality':\r\n edi.nationality = section.selected || undefined;\r\n break;*/\r\n case 'religion':\r\n edi.religion = section.selected || undefined;\r\n if (this.isOtherSection(this.options.sections.filter(s => s.name === name)[0], edi.religion)) {\r\n edi.religionOther = section.other;\r\n }\r\n break;\r\n case 'disability':\r\n edi.disabled = section.selected || undefined;\r\n if (this.isOtherSection(this.options.sections.filter(s => s.name === name)[0], edi.disabled)) {\r\n edi.disabilityDetails = section.other;\r\n }\r\n break;\r\n case 'gender':\r\n edi.gender = section.selected || undefined;\r\n break;\r\n case 'sexualorientation':\r\n edi.sexualOrientation = section.selected || undefined;\r\n }\r\n }\r\n return edi;\r\n }\r\n\r\n getSummary(model: EqualityDiversity) {\r\n return this.load().pipe(map(options => {\r\n const ethnicity = options.ethnicity.reduce((acc, item) => {\r\n const selected = item.subGroups.find(sg => sg.id === model.ethnicity);\r\n if (selected) {\r\n acc = item.group;\r\n if (selected.isOther) {\r\n acc += ' - ' + model.ethnicityOther;\r\n } else {\r\n acc += ' - ' + selected.name;\r\n }\r\n }\r\n return acc;\r\n }, '');\r\n\r\n const disabled = options.sections.find(s => s.name === 'Disability').groups\r\n .reduce((acc, item) => {\r\n if (item.id === model.disabled) {\r\n acc = item.name;\r\n if (item.name === 'Yes') {\r\n acc += ' - ' + model.disabilityDetails;\r\n }\r\n }\r\n return acc;\r\n }, '');\r\n/*\r\n const nationality = options.sections.find(s => s.name === 'Nationality').groups\r\n .reduce((acc, item) => {\r\n if (item.id === +model.nationality) {\r\n acc = item.name;\r\n }\r\n return acc;\r\n }, '');\r\n*/\r\n const religion = options.sections.find(s => s.name === 'Religion').groups\r\n .reduce((acc, item) => {\r\n if (item.id === model.religion) {\r\n acc = item.name;\r\n if (item.isOther) {\r\n acc += ' - ' + model.religionOther;\r\n }\r\n }\r\n return acc;\r\n }, '');\r\n\r\n const sexualOrientation = options.sections.find(s => s.name === 'SexualOrientation').groups\r\n .reduce((acc, item) => {\r\n if (item.id === model.sexualOrientation) {\r\n acc = item.name;\r\n }\r\n return acc;\r\n }, '');\r\n\r\n const gender = options.sections.find(s => s.name === 'Gender').groups\r\n .reduce((acc, item) => {\r\n if (item.id === model.gender) {\r\n acc = item.name;\r\n }\r\n return acc;\r\n }, '');\r\n\r\n return [\r\n { name: 'Ethnicity', value: ethnicity},\r\n { name: 'Religion', value: religion },\r\n // { name: 'Nationality', value: nationality },\r\n { name: 'Disability', value: disabled },\r\n { name: 'Sexual orientation', value: sexualOrientation },\r\n { name: 'Gender', value: gender }\r\n ];\r\n\r\n }));\r\n\r\n }\r\n\r\n validate(model: EqualityDiversity): StepValidity {\r\n if (!this.options) { return; }\r\n const valid = {\r\n Gender: true,\r\n Ethnicity: true,\r\n Religion: true,\r\n Disability: true,\r\n // Nationality: true,\r\n SexualOrientation: true\r\n };\r\n const messages = [];\r\n if (!model.gender) {\r\n valid.Gender = false;\r\n messages.push('You haven\\'t specified your gender');\r\n }\r\n if (!model.disabled) {\r\n valid.Disability = false;\r\n messages.push('You haven\\'t specified your disability status');\r\n } else {\r\n // const disabilitySection = this.options.sections.filter(s => s.name.toLowerCase() === 'disability')[0];\r\n // console.log(disabilitySection);\r\n // console.log(model.disabled);\r\n // console.log(model.disabilityDetails);\r\n // if (this.isOtherSection(disabilitySection, model.disabled) && !model.disabilityDetails) {\r\n // messages.push('You haven\\'t specified your disability');\r\n // valid.Disability = false;\r\n // }\r\n }\r\n if (!model.ethnicity) {\r\n messages.push('You haven\\'t selected your ethnicity');\r\n valid.Ethnicity = false;\r\n } else {\r\n if (this.isOtherEthnicity(model.ethnicity) && !model.ethnicityOther) {\r\n messages.push('You haven\\'t selected your ethnicity');\r\n valid.Ethnicity = false;\r\n }\r\n }\r\n /* if (!model.nationality) {\r\n messages.push('You haven\\'t selected your nationality');\r\n valid.Nationality = false;\r\n }*/\r\n if (!model.religion) {\r\n messages.push('You haven\\'t selected your religion');\r\n valid.Religion = false;\r\n } else {\r\n // const religionSection = this.options.sections.filter(s => s.name.toLowerCase() === 'religion')[0];\r\n // if (this.isOtherSection(religionSection, model.religion) && !model.religionOther) {\r\n // messages.push('You haven\\'t specified your religion');\r\n // valid.Religion = false;\r\n // }\r\n }\r\n if (!model.sexualOrientation) {\r\n messages.push('You haven\\'t selected your sexual orientation');\r\n valid.SexualOrientation = false;\r\n }\r\n\r\n this.validity$.next(valid);\r\n return { valid: !messages.length, messages, touched: false };\r\n }\r\n\r\n selectionFromModel(model) {\r\n\r\n const selection = this.notSelected();\r\n this.options.ethnicity.forEach(group => {\r\n const ethnicity = group.subGroups.filter(g => g.id === model.ethnicity);\r\n if (ethnicity.length) {\r\n selection.ethnicity.selected = ethnicity[0].id;\r\n }\r\n });\r\n if (model.ethnicityOther) {\r\n selection.ethnicity.other = model.ethnicityOther;\r\n }\r\n\r\n this.options.sections.forEach(section => {\r\n if (section.name.toLowerCase() === 'gender') {\r\n const gender = section.groups.filter(g => g.id === model.gender);\r\n if (gender.length) {\r\n selection.sections[section.name].selected = gender[0].id;\r\n }\r\n }\r\n /* if (section.name.toLowerCase() === 'nationality') {\r\n const nationality = section.groups.filter(g => g.id === model.nationality);\r\n if (nationality.length) {\r\n selection.sections[section.name].selected = nationality[0].id;\r\n }\r\n }*/\r\n if (section.name.toLowerCase() === 'religion') {\r\n const religion = section.groups.filter(g => g.id === model.religion);\r\n if (religion.length) {\r\n selection.sections[section.name].selected = religion[0].id;\r\n if (model.religionOther) {\r\n selection.sections[section.name].other = model.religionOther;\r\n }\r\n }\r\n }\r\n if (section.name.toLowerCase() === 'disability') {\r\n const disabled = section.groups.filter(g => g.id === model.disabled);\r\n if (disabled.length) {\r\n selection.sections[section.name].selected = disabled[0].id;\r\n if (model.disabilityDetails) {\r\n selection.sections[section.name].other = model.disabilityDetails;\r\n }\r\n }\r\n }\r\n if (section.name.toLowerCase() === 'sexualorientation') {\r\n const sexualOrientation = section.groups.filter(g => g.id === model.sexualOrientation);\r\n if (sexualOrientation.length) {\r\n selection.sections[section.name].selected = sexualOrientation[0].id;\r\n }\r\n }\r\n });\r\n return selection;\r\n }\r\n\r\n isOtherEthnicity(id) {\r\n let selected;\r\n this.options.ethnicity.forEach(group => {\r\n const ethnicity = group.subGroups.filter(g => g.id === id);\r\n if (ethnicity.length) {\r\n selected = ethnicity[0];\r\n }\r\n });\r\n return selected && selected.isOther;\r\n }\r\n\r\n isOtherSection(section, id) {\r\n const selected = section.groups.filter(g => g.id === id);\r\n if (selected.length) {\r\n if (section.name.toLowerCase() === 'disability' && selected[0].name.toLowerCase() === 'yes') {\r\n return true;\r\n }\r\n return selected[0].isOther;\r\n }\r\n }\r\n isOtherSectionMandatory(section, id) {\r\n return this.isOtherSection(section, id) && section.name !== 'Disability' && section.name !== 'Religion';\r\n }\r\n\r\n}\r\n","import { Component, ViewChildren, AfterViewInit, ChangeDetectorRef, QueryList } from '@angular/core';\r\nimport { FaqService } from '../shared/faq.service';\r\n\r\n@Component({\r\n selector: 'app-signin-faq',\r\n moduleId: module.id,\r\n templateUrl: './signinFaq.component.html',\r\n styleUrls: ['./signinFaq.scss'],\r\n providers: [ FaqService ]\r\n})\r\nexport class SigninFaqComponent {\r\n\r\n}\r\n","\r\n
    \r\n

    Sign-in FAQs

    \r\n

    \r\n Frequently asked questions regarding signing in\r\n

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

    I’m a registrant. How do I sign up for the first time?

    \r\n
    \r\n

    To sign in to myGPhC for the first time and create your account, you will need:

    \r\n
      \r\n
    • a valid personal email address (this should be an address which only you have access to)
    • \r\n
    • your activation code which we recently sent you in a letter
    • \r\n
    \r\n

    \r\n Your activation code is the same as your last renewal number. What if I don’t have a code?\r\n

    \r\n\r\n

    Follow these steps to sign in for the first time and create your new myGPhC account.

    \r\n

    Step 1: Click on the link to myGPhC on the GPhC website.

    \r\n \"myGPhC\r\n

    Step 2: You will see a sign in screen. Click on ‘sign in’ button in the centre of the screen.\r\n

    \r\n \"sign\r\n

    A pop up window will appear. Click ‘Sign up now’.

    \r\n \"sign\r\n

    Step 3: Type the email address that you want to use to login to myGPhC\r\n

    \r\n \"enter\r\n

    Click the ‘Send verification code’ button.\r\n

    \r\n

    Step 4: Check your personal email inbox for a verification email from Microsoft on behalf of Dev_Azure_AD . You\r\n may need to check your ‘Junk’ or ‘Spam’ folder if you can’t see it in your main inbox.

    \r\n \"email\r\n

    Note the verification code in the email and navigate back to the myGphC sign in page.\r\n

    \r\n

    Step 5: Type the code into the ‘Verification code’ field and click on ‘Verify code’.\r\n

    \r\n \"enter\r\n

    Step 6: Create a password and type it into both the ‘New Password’ and ‘Confirm New Password’ fields. The characters\r\n you enter into the two fields must match. If your password is not sufficiently complex, a prompt will tell\r\n you what types of characters your password must contain to meet the site security requirements.\r\n

    \r\n \"enter\r\n

    When you have completed the password fields, click ‘Create’. You will see an ‘Activate your account’ screen.\r\n

    \r\n\r\n

    Step 7: Enter your GPhC registration number into the ‘Registration number’ field and click on ‘Verify’.\r\n

    \r\n \"activate\r\n

    Step 8: Check the name displayed is your name as registered with the GPhC. If it is, click ‘Yes – this correct’\r\n to confirm. If you do not see your name, click ‘No - this is incorrect’. Repeat the process and make sure you\r\n enter your registration details correctly.

    \r\n \"confirm\r\n\r\n

    If you still do not see your name displayed, contact us on\r\n 0203 713 8000 or email\r\n info@pharmacyregulation.org.\r\n

    \r\n\r\n

    Step 9: Complete the ‘Date of birth’ and ‘Postcode’ fields with your details. Enter the code you received in\r\n the letter we recently sent you.\r\n

    \r\n \"personal\r\n

    When you have entered all the information into each field, click ‘Activate’.\r\n

    \r\n\r\n

    Step 10: When you click on the ‘Activate’ button, you will see the message below confirming that you have activated\r\n your account. Click on the button to sign out.\r\n

    \r\n\r\n \"account\r\n

    Your myGPhC account is now ready. To use it, sign on using the email address and password you set up. Click on\r\n “Sign in”\r\n

    \r\n \"sign\r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n \r\n

    What if I don’t have a code?

    \r\n
    \r\n

    If you have not received the letter with your activation code, and you do not still have your last renewal notice, send an\r\n email to info@pharmacyregulation.org.\r\n A member of our customer services team will then post your activation code to you at the address we currently hold for\r\n you.\r\n

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

    I haven’t received the verification code sent to my email

    \r\n
    \r\n

    \r\n Firstly, check the ‘Junk’ or ‘Spam’ folder in your email inbox. \r\n

    \r\n

    \r\n Sometimes it can take time to receive the verification email. We recommend that you wait 24 hours to receive the email, before requesting a new verification code.\r\n

    \r\n

    \r\n If you request a code more than once, make sure that you use the most recent one to activate your account. Each time your request it, a verification code will be sent, and the previous code will no longer work. \r\n So if you have requested the code twice for example, make sure you use the code from the second email you receive.\r\n

    \r\n

    \r\n Make sure you don’t refresh the page when you request a code as you may resend your details and generate another request.\r\n

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

    I’ve forgotten my password

    \r\n
    \r\n

    Click on the ‘myGPhC’ link on the GPhC website. Enter the email address that you use to login to the system and\r\n then click on the ‘Forgot your password’ link.\r\n\r\n

    \r\n \"forgot\r\n

    You will receive an email with instructions on how to reset your password.\r\n

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

    I’ve changed my email account

    \r\n
    \r\n

    If you have moved to a new email account, or you want to receive information from the GPhC at a different email\r\n address, you need to update your email details. Sign in to your MyGPhC account as normal and then click on\r\n the “Account” tab on the home screen.\r\n

    \r\n \"account\r\n

    Navigate to the Email field in the “Contact” area of the screen and click on the edit button.\r\n

    \r\n \"edit\r\n

    Enter your new email address into the highlighted field and click on ‘save’.\r\n

    \r\n \"enter\r\n

    The prompt explains that we will need to verify your new email address. We will do this by sending you a verification\r\n link to your new email address. Follow the instructions in this email to change the email address that you\r\n use for logging in to MyGPhC.\r\n

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

    I’m having technical difficulties logging in to my account

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

    I'm a pre-registration trainee, how do I sign up?

    \r\n
    \r\n

    Here is the link to the step by step guide.

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","\r\n\r\nimport { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-user-badge',\r\n moduleId: module.id,\r\n templateUrl: './userBadge.component.html',\r\n styleUrls: ['./userBadge.scss']\r\n})\r\nexport class UserBadgeComponent {\r\n\r\n @Input() title = 'User';\r\n @Input() link;\r\n\r\n}\r\n","\r\n {{title}}\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    ","import { Configuration, Logger } from 'msal';\r\nimport { MsalAngularConfiguration, MsalService } from '@azure/msal-angular';\r\nimport { environment } from '../environments/environment';\r\n\r\n\r\n// this checks if the app is running on IE\r\nexport const isIE = window.navigator.userAgent.indexOf('MSIE ') > -1 || window.navigator.userAgent.indexOf('Trident/') > -1;\r\n\r\n/** =================== REGIONS ====================\r\n * 1) B2C policies and user flows\r\n * 2) Web API configuration parameters\r\n * 3) Authentication configuration parameters\r\n * 4) MSAL-Angular specific configuration parameters\r\n * ================================================= \r\n*/\r\n\r\n// #region 1) B2C policies and user flows\r\n/**\r\n * Enter here the user flows and custom policies for your B2C application,\r\n * To learn more about user flows, visit https://docs.microsoft.com/en-us/azure/active-directory-b2c/user-flow-overview\r\n * To learn more about custom policies, visit https://docs.microsoft.com/en-us/azure/active-directory-b2c/custom-policy-overview\r\n */\r\nexport const b2cPolicies = {\r\n names: {\r\n signUpSignIn: \"B2C_1_Auth-SignUpInNew\",\r\n resetPassword: \"B2C_1_Auth-PasswordResetNew\",\r\n //editProfile: \"b2c_1_edit_profile\"\r\n },\r\n authorities: {\r\n signUpSignIn: {\r\n //authority: \"https://login.microsoftonline.com/tfp/GPHCDEVAADB2C.onmicrosoft.com/B2C_1_Auth-SignUpIn\"\r\n authority: environment.sso.authority\r\n },\r\n resetPassword: {\r\n //authority: \"https://fabrikamb2c.b2clogin.com/fabrikamb2c.onmicrosoft.com/b2c_1_reset\"\r\n //authority: \"https://login.microsoftonline.com/tfp/GPHCDEVAADB2C.onmicrosoft.com/B2C_1_Auth-PasswordReset\"\r\n authority: environment.sso.pwdreset\r\n },\r\n // editProfile: {\r\n // authority: \"https://fabrikamb2c.b2clogin.com/fabrikamb2c.onmicrosoft.com/b2c_1_edit_profile\"\r\n // }\r\n }\r\n}\r\n// #endregion\r\n\r\n\r\n// #region 2) Web API Configuration\r\n/** \r\n * Enter here the coordinates of your Web API and scopes for access token request\r\n * The current application coordinates were pre-registered in a B2C tenant.\r\n */\r\nexport const apiConfig: { b2cScopes: string[], webApi: string } = {\r\n b2cScopes: environment.sso.b2cScopes,\r\n //webApi: environment.webRoot\r\n webApi: environment.api.root\r\n};\r\n// #endregion\r\n\r\n\r\n\r\n// #region 3) Authentication Configuration\r\n/** \r\n * Config object to be passed to Msal on creation. For a full list of msal.js configuration parameters,\r\n * visit https://azuread.github.io/microsoft-authentication-library-for-js/docs/msal/modules/_configuration_.html\r\n */\r\n//declare var Msal;\r\nexport const msalConfig: Configuration = {\r\n auth: {\r\n clientId: environment.sso.clientID,\r\n authority: environment.sso.authority,\r\n redirectUri: environment.sso.redirectUri,\r\n postLogoutRedirectUri: environment.sso.postLogoutRedirectUri,\r\n navigateToLoginRequestUrl: true,\r\n validateAuthority: false,\r\n },\r\n cache: {\r\n cacheLocation: \"localStorage\",\r\n storeAuthStateInCookie: isIE, // Set this to \"true\" to save cache in cookies to address trusted zones limitations in IE\r\n },\r\n system: {\r\n loadFrameTimeout: 60000, //6 sec\r\n }\r\n}\r\n\r\n// logger: new Logger(this.loggerCallback.bind(this), { level: Msal.LogLevel.Verbose, piiLoggingEnabled: true }),\r\n\r\n/** \r\n * Scopes you enter here will be consented once you authenticate. For a full list of available authentication parameters, \r\n * visit https://azuread.github.io/microsoft-authentication-library-for-js/docs/msal/modules/_authenticationparameters_.html\r\n */\r\nexport const loginRequest: { scopes: string[] } = {\r\n scopes: ['openid', 'profile']\r\n //, state: '${b2cPolicies.authorities.resetPassword.authority}&client_id=${msalConfig.auth.clientId}&nonce=defaultNonce&redirect_uri=${msalConfig.auth.redirectUri}&scope=openid&response_type=id_token&prompt=login'\r\n};\r\n// Scopes you enter will be used for the access token request for your web API\r\nexport const tokenRequest = {\r\n\r\n scopes: apiConfig.b2cScopes,\r\n //https://github.com/AzureAD/microsoft-authentication-library-for-js/issues/97\r\n authority: null,\r\n account: null\r\n // account: this.userId // i.e. [https://fabrikamb2c.onmicrosoft.com/helloapi/demo.read]\r\n};\r\n// #endregion\r\n\r\n\r\n\r\n// #region 4) MSAL-Angular Configuration\r\n// here you can define the coordinates and required permissions for your protected resources\r\nexport const protectedResourceMap: [string, string[]][] = [\r\n [apiConfig.webApi, apiConfig.b2cScopes] // i.e. [https://fabrikamb2chello.azurewebsites.net/hello, ['https://fabrikamb2c.onmicrosoft.com/helloapi/demo.read']]\r\n];\r\n\r\n/** \r\n * MSAL-Angular specific authentication parameters. For a full list of available options,\r\n * visit https://github.com/AzureAD/microsoft-authentication-library-for-js/tree/dev/lib/msal-angular#config-options-for-msal-initialization\r\n*/\r\nexport const msalAngularConfig: MsalAngularConfiguration = {\r\n popUp: !isIE,\r\n consentScopes: [\r\n ...loginRequest.scopes,\r\n ...tokenRequest.scopes,\r\n ],\r\n unprotectedResources: [], // API calls to these coordinates will NOT activate MSALGuard\r\n protectedResourceMap, // API calls to these coordinates will activate MSALGuard\r\n extraQueryParameters: {}\r\n}\r\n// #endregion","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { AccountComponent } from './account/account.component';\r\nimport { EmailConfirmationComponent } from './account/emailConfirmation.component';\r\nimport { AccountActivationComponent } from './account/activation/accountActivation.component';\r\nimport { LoginComponent } from './account/login.component';\r\nimport { LoggedInOnlyGuard } from './guard/LoggedInOnly.guard';\r\nimport { UserLoadedGuard } from './guard/UserLoaded.guard';\r\nimport { RegistrantsOnlyGuard } from './guard/RegistrantsOnly.guard';\r\nimport { CanDeactivateGuard } from './guard/CanDeactivate.guard';\r\nimport { ReviewersOnlyGuard } from './guard/ReviewersOnly.guard';\r\nimport { AccountActivationGuard } from './guard/AccountActivation.guard';\r\nimport { AppComponent } from './app.component';\r\nimport { DiagnosticsComponent } from './core/diagnostics.component';\r\nimport { NotFoundComponent } from './core/notFound.component';\r\nimport { PrivacyPolicyComponent } from './core/privacyPolicy.component';\r\nimport { HomeComponent } from './home.component';\r\nimport { RenewalComponent } from './renewal/renewal.component';\r\nimport { RenewalFaqComponent } from './renewal/renewalFaq.component';\r\nimport { ReceiptsComponent } from './payment/receipts.component';\r\nimport { RegistrationComponent } from './registration/registration.component';\r\nimport { SigninFaqComponent } from './account/signinFaq.component';\r\nimport { NotificationsComponent } from './account/notifications/notifications.component';\r\nimport { ReceiptComponent } from './payment/receipt.component';\r\n\r\nimport { CountersignComponent } from './registration/countersign.component';\r\nimport { LetterComponent } from './registration/letter.component';\r\nimport { LetterGuard } from './guard/Letter.guard';\r\nimport { NotRevalidationExemptGuard } from './guard/NotRevalidationExempt.guard';\r\nimport { LearningContractResponseComponent } from './registration/learningContractResponse.component';\r\nimport { TechnicianConfirmationComponent } from './account/activation/technician-confirmation.component';\r\nimport { PreregAssessmentRegistrationGuard } from './guard/preregAssessmentRegistration.guard';\r\nimport { MsalGuard } from '@azure/msal-angular';\r\nimport { PreregOnlyGuard } from './guard/PreregOnly.guard';\r\nimport { StudentsOnlyGuard } from './guard/StudentsOnly.guard';\r\nimport { TechnicianOnlyGuard } from './guard/TechnicianApplicantOnly.guard';\r\nimport { IndependentPrescriberApplicationComponent } from './registration/independent-precriber/independentPrescriberApplication.component';\r\nimport { ApplicationsDashboardComponent } from './registration/applicationsDashboard.component';\r\nimport { VoluntaryRemovalComponent } from './registration/voluntary-removal/voluntary-removal.component';\r\nimport { CcpsComponent } from './registration/ccps/ccps.component';\r\nimport { ReturnToRegisterComponent } from './registration/return-to-register/return-to-register-application.component';\r\nimport { RestorationFeePayment } from './registration/restorationFeePayment.component';\r\n\r\nexport function isInIframe() {\r\n return window !== window.parent && !window.opener;\r\n}\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n redirectTo: '/home',\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: 'null',\r\n redirectTo: '/home',\r\n pathMatch: 'full'\r\n },\r\n { path: 'home', canActivate: [UserLoadedGuard], component: HomeComponent, data: { title: 'Home' } },\r\n { path: 'signin', component: LoginComponent, data: { title: 'Sign in' } },\r\n { path: 'signin/faq', component: SigninFaqComponent, data: { title: 'Sign in FAQ' } },\r\n { path: 'privacy', component: PrivacyPolicyComponent, data: { title: 'Privacy policy' } },\r\n { path: 'account', canActivate: [UserLoadedGuard, MsalGuard], component: AccountComponent, data: { title: 'Account' } },\r\n {\r\n path: 'account/notifications', canActivate: [UserLoadedGuard], component: NotificationsComponent,\r\n data: { title: 'Notifications', classname: 'soft-background' }\r\n },\r\n {\r\n path: 'account/activate', canActivate: [AccountActivationGuard],\r\n component: AccountActivationComponent, data: { title: 'Activate your account' }\r\n },\r\n {\r\n path: 'account/confirm', canActivate: [MsalGuard],\r\n component: TechnicianConfirmationComponent,\r\n data: {\r\n title: 'Confirm your account'\r\n }\r\n },\r\n { path: 'receipts', canActivate: [UserLoadedGuard], component: ReceiptsComponent, data: { title: 'Receipts' } },\r\n { path: 'receipts/:id', canActivate: [UserLoadedGuard], component: ReceiptComponent, data: { title: 'View receipt' } },\r\n { path: 'email-confirmation', component: EmailConfirmationComponent, data: { title: 'Email confirmation' } },\r\n {\r\n path: 'registration', canActivate: [UserLoadedGuard, RegistrantsOnlyGuard],\r\n component: RegistrationComponent, data: { title: 'Registration' }\r\n },\r\n\r\n {\r\n path: 'registration/letter/:letterType', canActivate: [UserLoadedGuard, LetterGuard],\r\n component: LetterComponent\r\n },\r\n {\r\n path: 'registration/letter/:letterType/:id', canActivate: [UserLoadedGuard, LetterGuard],\r\n component: LetterComponent\r\n },\r\n {\r\n path: 'registration/countersign/:id/:role',\r\n canActivate: [\r\n UserLoadedGuard,\r\n RegistrantsOnlyGuard],\r\n component: CountersignComponent,\r\n data: { title: 'Countersign application' }\r\n },\r\n {\r\n path: 'registration/learning-contract/sign/:id', canActivate: [UserLoadedGuard, RegistrantsOnlyGuard],\r\n component: LearningContractResponseComponent, data: { title: 'Learning contract response' }\r\n },\r\n {\r\n path: 'revalidation',\r\n canActivate: [UserLoadedGuard, RegistrantsOnlyGuard, NotRevalidationExemptGuard], data: { title: 'Revalidation' },\r\n loadChildren: () => import('./revalidation/revalidation.module').then(m => m.RevalidationModule)\r\n },\r\n {\r\n path: 'renewal', canActivate: [UserLoadedGuard, RegistrantsOnlyGuard], component: RenewalComponent, data: { title: 'Renewal' },\r\n canDeactivate: [CanDeactivateGuard]\r\n },\r\n {\r\n path: 'renewal/faq', canActivate: [UserLoadedGuard, RegistrantsOnlyGuard],\r\n component: RenewalFaqComponent, data: { title: 'Renewal FAQ' }\r\n },\r\n { path: 'diagnostics', component: DiagnosticsComponent, data: { title: 'Diagnostics' } },\r\n {\r\n path: 'review',\r\n data: { title: 'Review' },\r\n canActivate: [UserLoadedGuard, ReviewersOnlyGuard],\r\n loadChildren: () => import('./review/review.module').then(m => m.ReviewModule)\r\n },\r\n {\r\n path: 'student', canActivate: [UserLoadedGuard], loadChildren: () => import('./student/student.module').then(m => m.StudentModule)\r\n },\r\n {\r\n path: 'prereg', canActivate: [UserLoadedGuard],\r\n loadChildren: () => import('./prereg/prereg.module').then(m => m.PreregModule)\r\n // loadChildren: () => import('src/app/prereg/prereg.module#PreregModule').then(m => m.PreregModule)\r\n },\r\n {\r\n path: 'technician', canActivate: [UserLoadedGuard, TechnicianOnlyGuard],\r\n loadChildren: () => import('./technician/technician.module').then(m => m.TechnicianModule)\r\n // loadChildren: () => import('./technician/technician.module').then(m => m.TechnicianModule)\r\n },\r\n {\r\n path: 'assessment/registration',\r\n canActivate: [UserLoadedGuard, RegistrantsOnlyGuard, PreregAssessmentRegistrationGuard, MsalGuard], data: { title: 'Application' },\r\n loadChildren: () => import('./prereg/prereg.module').then(m => m.PreregModule)\r\n },\r\n {\r\n path: 'application',\r\n canActivate: [UserLoadedGuard, RegistrantsOnlyGuard], \r\n component: ApplicationsDashboardComponent, data: { title: 'Application'},\r\n\r\n },\r\n {\r\n path: 'independentPrescriber/application', canActivate: [UserLoadedGuard, RegistrantsOnlyGuard],\r\n component: IndependentPrescriberApplicationComponent, data: { title: 'Independent Prescriber', classname: 'application' }\r\n },\r\n {\r\n path: 'voluntaryRemoval/application', canActivate: [UserLoadedGuard, RegistrantsOnlyGuard],\r\n component: VoluntaryRemovalComponent, data: { title: 'Voluntary removal of your register entry', classname: 'application' }\r\n },\r\n {\r\n path: 'ccps/application/:id', canActivate: [UserLoadedGuard, RegistrantsOnlyGuard],\r\n component: CcpsComponent, data: { title: 'Certificate of current professional status & fitness to practice history request', classname: 'application' }\r\n },\r\n {\r\n path: 'ccps/application', canActivate: [UserLoadedGuard, RegistrantsOnlyGuard],\r\n component: CcpsComponent, data: { title: 'Certificate of current professional status & fitness to practice history request', classname: 'application' }\r\n },\r\n {\r\n path: 'returnToRegister/application', canActivate: [UserLoadedGuard, RegistrantsOnlyGuard],\r\n component: ReturnToRegisterComponent, data: { title: 'Application for restoration to the register', classname: 'application' }\r\n },\r\n {\r\n path: 'returnToRegister/application/restoration-payment', canActivate: [UserLoadedGuard, RegistrantsOnlyGuard],\r\n component: RestorationFeePayment, data: { title: 'Restoration fee payment', classname: 'application' }\r\n },\r\n { path: '**', component: NotFoundComponent }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes, {initialNavigation: \r\n !isInIframe() ? \"enabledNonBlocking\" : \"disabled\"})],\r\n exports: [RouterModule],\r\n providers: [\r\n UserLoadedGuard,\r\n LoggedInOnlyGuard,\r\n RegistrantsOnlyGuard,\r\n ReviewersOnlyGuard,\r\n CanDeactivateGuard,\r\n NotRevalidationExemptGuard,\r\n AccountActivationGuard,\r\n StudentsOnlyGuard,\r\n TechnicianOnlyGuard,\r\n MsalGuard\r\n ]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { Component, NgZone, OnInit, OnDestroy, HostBinding, HostListener, ErrorHandler, ReflectiveInjector, ViewChild, ElementRef } from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { Router, ActivatedRoute, NavigationEnd } from '@angular/router';\r\nimport { LayoutState } from './core/model/LayoutState';\r\nimport { LoggedInState } from './account/model/LoggedInState';\r\nimport { LayoutService } from './core/service/layout.service';\r\nimport { TooltipService } from './core/tooltip/tooltip.service';\r\nimport { ConfirmDialogComponent } from './shared/confirmDialog.component';\r\nimport { AuthService } from './core/service/auth.service';\r\nimport { AccountService } from './account/service/account.service';\r\nimport { User } from './account/model/User';\r\nimport { LogService } from './core/service/log.service';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\n\r\nimport { environment } from '../environments/environment';\r\nimport { UpdaterService } from './core/service/updater.service';\r\nimport { CustomErrorHandler } from './core/service/CustomErrorHandler';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { UserActivity } from './core/model/UserActivity';\r\nimport { MaintenanceMessageService } from './core/service/maintenanceMessage.service';\r\nimport { AppInsightService } from './core/service/AppInsight/app-insight.service';\r\nimport { fromEvent } from 'rxjs';\r\nimport { debounceTime, filter, map } from 'rxjs/operators';\r\nimport { BroadcastService, MsalService } from '@azure/msal-angular';\r\nimport { isIE, b2cPolicies } from './app-config';\r\n\r\n(window).dataLayer = (window).dataLayer || [];\r\nfunction gtag(...args) {\r\n if (environment.analytics) {\r\n (window).dataLayer.push(arguments);\r\n }\r\n}\r\nif (environment.analytics) {\r\n gtag('js', new Date());\r\n gtag('config', environment.analytics);\r\n}\r\n\r\n@Component({\r\n selector: 'body',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./style/app.scss'],\r\n providers: [\r\n { provide: ErrorHandler, useClass: CustomErrorHandler }\r\n ]\r\n})\r\nexport class AppComponent implements OnInit {\r\n /*\r\n @HostBinding('style.overflow-y') overflowy = 'auto';\r\n @HostBinding('style.overflow-x') get overflowx() {\r\n return this.layout.state.fullscreen ? 'hidden' : 'auto';\r\n }\r\n */\r\n currentYear: number = new Date().getFullYear(); //return current year for copyright in footer\r\n pageClass = '';\r\n private myAppInsightService: AppInsightService;\r\n constructor(public log: LogService,\r\n private authService: AuthService,\r\n private accountService: AccountService,\r\n public layout: LayoutService,\r\n public updater: UpdaterService,\r\n private router: Router,\r\n private zone: NgZone,\r\n private activatedRoute: ActivatedRoute,\r\n private titleService: Title,\r\n private tooltip: TooltipService,\r\n private dialog: MatDialog,\r\n public maintenanceMessage: MaintenanceMessageService,\r\n private broadcastService: BroadcastService, private msalService: MsalService\r\n ) {\r\n const injector = ReflectiveInjector.resolveAndCreate([AppInsightService]);\r\n this.myAppInsightService = injector.get(AppInsightService);\r\n }\r\n\r\n skipLinkFocused = false;\r\n @ViewChild('skipLink') skipLink: ElementRef;\r\n @ViewChild('mainContent') mainContent: ElementRef;\r\n\r\n @HostBinding('class.fullscreen') get fulscreen() {\r\n return this.layout.state$.value.fullscreen;\r\n }\r\n\r\n private logNavigation() {\r\n this.myAppInsightService.logPageView();\r\n }\r\n reload() {\r\n window.location.reload();\r\n }\r\n\r\n checkLocation() {\r\n try {\r\n const rootLocation = window.location.protocol + '//' + window.location.host;\r\n const locationInfo = { current: rootLocation, correct: environment.webRoot };\r\n const redirected = window.location.href.indexOf('redirected=true') > -1;\r\n if (redirected) {\r\n this.log.info('Redirected from incorrect protocol / host');\r\n } else if (environment.webRoot.indexOf(rootLocation) !== 0) {\r\n let redirect = window.location.href.replace(rootLocation, environment.webRoot);\r\n if (redirect.indexOf('?') > -1) {\r\n redirect += '&redirected=true&t=' + new Date().getTime();\r\n } else {\r\n redirect += '?redirected=true&t=' + new Date().getTime();\r\n }\r\n this.log.postActivity(UserActivity.Unknown, 'Incorrect protocol / host', locationInfo);\r\n setTimeout(() => {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n allowCancel: false,\r\n confirmText: 'OK',\r\n title: `Website location`,\r\n message: `

    You have accessed myGPhC from a url other than ${environment.webRoot}

    \r\n

    Please ensure that you update your bookmark to avoid seeing this message again.\r\n You will now be redirected automatically.

    `\r\n }\r\n });\r\n dialogRef.afterClosed().subscribe(() => {\r\n window.location.replace(redirect);\r\n });\r\n });\r\n }\r\n this.log.info('location check', locationInfo);\r\n } catch (e) {\r\n this.log.error('Error checking location', e);\r\n }\r\n\r\n }\r\n\r\n onLinkFocus(event) {\r\n this.skipLinkFocused = true;\r\n }\r\n\r\n onLinkBlur(event) {\r\n this.skipLinkFocused = false;\r\n }\r\n\r\n onLinkClick(event) {\r\n event.preventDefault();\r\n this.mainContent.nativeElement.scrollIntoView();\r\n this.mainContent.nativeElement.focus();\r\n }\r\n\r\n ngOnInit() {\r\n\r\n // event listeners for authentication status\r\n this.broadcastService.subscribe('msal:loginSuccess', (success) => {\r\n // We need to reject id tokens that were not issued with the default sign-in policy.\r\n // \"acr\" claim in the token tells us what policy is used (NOTE: for new policies (v2.0), use \"tfp\" instead of \"acr\")\r\n // To learn more about b2c tokens, visit https://docs.microsoft.com/en-us/azure/active-directory-b2c/tokens-overview\r\n if (success.idToken.claims['tfp'] === b2cPolicies.names.resetPassword) {\r\n // window.alert(\"Password has been reset successfully. \\nPlease sign-in with your new password\");\r\n return this.authService.logout();\r\n }\r\n // this.checkAccount();\r\n });\r\n\r\n this.broadcastService.subscribe('msal:loginFailure', (error) => {\r\n // Check for forgot password error\r\n // Learn more about AAD error codes at https://docs.microsoft.com/en-us/azure/active-directory/develop/reference-aadsts-error-codes\r\n if (error.errorMessage.indexOf('AADB2C90118') > -1) {\r\n if (isIE) {\r\n this.msalService.loginRedirect(b2cPolicies.authorities.resetPassword);\r\n } else {\r\n this.msalService.loginRedirect(b2cPolicies.authorities.resetPassword);\r\n //this.authService.forgotPassword();\r\n }\r\n }\r\n });\r\n\r\n // redirect callback for redirect flow (IE)\r\n this.msalService.handleRedirectCallback((authError, response) => {\r\n if (authError) {\r\n return;\r\n }\r\n });\r\n this.checkLocation();\r\n\r\n setTimeout(() => {\r\n const x = 0;\r\n const y = 10 / x;\r\n }, 100);\r\n\r\n fromEvent(window, 'resize')\r\n .pipe(debounceTime(500))\r\n .subscribe(this.setSize.bind(this));\r\n\r\n this.setSize();\r\n\r\n this.updater.startChecking();\r\n\r\n this.log.onNotification.subscribe(() => {\r\n window.scroll(0, 0);\r\n });\r\n\r\n this.router.events\r\n .pipe(\r\n filter((event) => event instanceof NavigationEnd),\r\n map(() => this.activatedRoute),\r\n map((route) => {\r\n while (route.firstChild) { route = route.firstChild; }\r\n return route;\r\n }),\r\n filter((route) => route.outlet === 'primary'),\r\n map((route) => route.snapshot.routeConfig))\r\n .subscribe((config) => {\r\n this.configurePage(config);\r\n });\r\n\r\n this.router.events\r\n .pipe(filter((event) => event instanceof NavigationEnd))\r\n .subscribe((event) => {\r\n\r\n this.log.clearRouteBlock();\r\n this.tooltip.close();\r\n });\r\n }\r\n\r\n configurePage(config) {\r\n let title = 'myGPhC';\r\n let pageTitle = '';\r\n const pagePath = '/' + config.path;\r\n const fullscreen = config.data && config.data.fullscreen ? true : false;\r\n this.layout.reset(fullscreen);\r\n if (config && config.data && !this.log.newRouteBlock) {\r\n pageTitle = config.data['title'];\r\n this.pageClass = config.data['classname'];\r\n } else {\r\n this.pageClass = '';\r\n }\r\n\r\n if (pageTitle) {\r\n title += ' - ' + pageTitle;\r\n }\r\n if (environment.analytics) {\r\n gtag('config', environment.analytics, {\r\n 'page_title': pageTitle,\r\n 'page_path': pagePath\r\n });\r\n }\r\n this.logNavigation();\r\n this.titleService.setTitle(title);\r\n }\r\n\r\n setSize() {\r\n const width = window.innerWidth;\r\n const height = window.innerHeight;\r\n this.layout.setSize(width, height);\r\n }\r\n\r\n get loggedIn(): boolean {\r\n return !!this.authService.user && !!this.authService.token && !!this.authService.userId;\r\n }\r\n\r\n logout() {\r\n this.log.notifyLoggedOut = false;\r\n this.authService.logout();\r\n }\r\n}\r\n","\r\n\r\n
    \r\n
    \r\n
    \r\n

    Error

    \r\n {{ log.newError.text }}\r\n

    {{ log.newError.exception.exceptionMessage }}

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

    {{ maintenanceMessage.header }}

    \r\n

    \r\n {{ maintenanceMessage.body }}\r\n

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

    You appear to be offline

    \r\n

    Please check your internet connection

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

    Sign out

    \r\n

    For security reasons you must now sign in again

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

    Update available

    \r\n

    A new version is available. Click 'Update now' to update to the latest version\r\n immediately. If you are in the middle of something, choose 'Update later'.

    \r\n

    Updating - please wait...

    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n Skip to main content\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n
    \r\n \r\n\r\n \r\n
    \r\n
    \r\n \r\n

    Unauthorised

    \r\n

    \r\n {{ log.newRouteBlock.text }}\r\n

    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    © GPhC {{ currentYear }}
    \r\n
    \r\n \r\n\r\n \r\n Contact us\r\n
    |
    \r\n Privacy policy\r\n\r\n
    \r\n\r\n\r\n\r\n\r\n","import { NgModule, ErrorHandler } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { AppComponent } from './app.component';\r\nimport { CoreModule } from './core/core.module';\r\nimport { CustomErrorHandler } from './core/service/CustomErrorHandler';\r\nimport { AccountModule } from './account/account.module';\r\nimport { RenewalModule } from './renewal/renewal.module';\r\nimport { PreregModule } from './prereg/prereg.module';\r\nimport { RegistrationModule } from './registration/registration.module';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { HomeComponent } from './home.component';\r\nimport { TechnicianModule } from './technician/technician.module';\r\n\r\nimport { Configuration } from 'msal';\r\nimport {\r\n MsalModule,\r\n MsalInterceptor,\r\n MSAL_CONFIG,\r\n MSAL_CONFIG_ANGULAR,\r\n MsalService,\r\n MsalAngularConfiguration\r\n} from '@azure/msal-angular';\r\nimport { environment } from '../environments/environment';\r\nimport { msalConfig, msalAngularConfig, apiConfig } from './app-config';\r\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { StudentDashboardComponent } from './dashboard/studentDashboard.component';\r\nimport { MSALInterceptorExtended } from './core/service/MSALInterceptorExtended';\r\n//import { LocationStrategy, HashLocationStrategy } from '@angular/common';\r\n//const isIE = window.navigator.userAgent.indexOf(\"MSIE \") > -1 || window.navigator.userAgent.indexOf(\"Trident/\") > -1;\r\n// const protectedResourceMap: [string, string[]][] = [\r\n// [apiConfig.webApi, apiConfig.b2cScopes] // i.e. [https://fabrikamb2chello.azurewebsites.net/hello, ['https://fabrikamb2c.onmicrosoft.com/helloapi/demo.read']]\r\n// ];\r\n\r\nexport function MSALConfigFactory(): Configuration {\r\n return msalConfig;\r\n}\r\n\r\nexport function MSALAngularConfigFactory(): MsalAngularConfiguration {\r\n return msalAngularConfig;\r\n}\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n HomeComponent,\r\n StudentDashboardComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n AppRoutingModule,\r\n CoreModule,\r\n AccountModule,\r\n RenewalModule,\r\n RegistrationModule,\r\n PreregModule,\r\n TechnicianModule,\r\n MsalModule\r\n ],\r\n bootstrap: [AppComponent],\r\n providers: [\r\n { provide: ErrorHandler, useClass: CustomErrorHandler },\r\n {\r\n provide: MSAL_CONFIG,\r\n useFactory: MSALConfigFactory\r\n },\r\n {\r\n provide: MSAL_CONFIG_ANGULAR,\r\n useFactory: MSALAngularConfigFactory\r\n },\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: MSALInterceptorExtended,\r\n multi: true\r\n },\r\n MsalService\r\n ]\r\n})\r\nexport class AppModule { }\r\n\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from './service/auth.service';\r\nimport { LayoutService } from './service/layout.service';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Component({\r\n selector: 'app-branding',\r\n templateUrl: './branding.component.html',\r\n styleUrls: ['./branding.scss']\r\n})\r\nexport class BrandingComponent implements OnInit {\r\n\r\n @Input() showRings = true;\r\n @Input() appVersion;\r\n showVersion: boolean;\r\n\r\n constructor(private router: Router, private authService: AuthService, private layout: LayoutService) { }\r\n\r\n ngOnInit() {\r\n this.showVersion = environment.target !== 'PROD';\r\n }\r\n\r\n goHome() {\r\n if (this.authService.user) {\r\n this.router.navigate(['/home']);\r\n }\r\n }\r\n\r\n login() {\r\n if (!this.authService.user) {\r\n this.authService.login();\r\n }\r\n }\r\n}\r\n","
    \r\n
    \r\n \r\n \"\"\r\n \r\n
    \r\n myGPhC\r\n
    V{{appVersion}}
    \r\n
    \r\n \r\n \r\n \"General\r\n \r\n
    \r\n
    ","import { NgModule, ErrorHandler } from \"@angular/core\";\r\nimport { BrowserModule } from \"@angular/platform-browser\";\r\nimport { BrowserAnimationsModule } from \"@angular/platform-browser/animations\";\r\nimport { FormsModule } from \"@angular/forms\";\r\nimport { ReactiveFormsModule } from \"@angular/forms\";\r\nimport { RouterModule } from \"@angular/router\";\r\nimport { HttpClientModule } from \"@angular/common/http\";\r\n\r\nimport { LogService } from \"./service/log.service\";\r\nimport { StudentService } from \"./service/student.service\";\r\nimport { UpdaterService } from \"./service/updater.service\";\r\nimport { ReviewService } from \"./service/review.service\";\r\nimport { LayoutService } from \"./service/layout.service\";\r\nimport { AuthService } from \"./service/auth.service\";\r\nimport { BrandingComponent } from \"./branding.component\";\r\nimport { NavComponent } from \"./nav.component\";\r\nimport { SharedModule } from \"../shared/shared.module\";\r\nimport { CustomErrorHandler } from \"./service/CustomErrorHandler\";\r\nimport { RenewalService } from \"./service/renewal.service\";\r\nimport { UploadService } from \"./service/upload.service\";\r\nimport { RevalidationService } from \"./service/revalidation.service\";\r\nimport { PublicService } from \"./service/public.service\";\r\nimport { PreregService } from \"./service/prereg.service\";\r\nimport { PaymentService } from \"../payment/service/payment.service\";\r\nimport { EdiService } from \"../account/service/edi.service\";\r\nimport { AccountService } from \"../account/service/account.service\";\r\nimport { DevService } from \"./service/dev.service\";\r\nimport { ReceiptsComponent } from \"../payment/receipts.component\";\r\nimport { ReceiptComponent } from \"../payment/receipt.component\";\r\nimport { DiagnosticsComponent } from \"./diagnostics.component\";\r\nimport { NotFoundComponent } from \"./notFound.component\";\r\nimport { DynamicModule } from \"../dynamic/dynamic.module\";\r\nimport { TooltipModule } from \"./tooltip/tooltip.module\";\r\nimport { TooltipService } from \"./tooltip/tooltip.service\";\r\nimport { TrackingService } from \"./service/tracking.service\";\r\nimport { CommonModule } from \"@angular/common\";\r\nimport { PrivacyPolicyComponent } from \"./privacyPolicy.component\";\r\nimport { RegistrationService } from \"./service/registration.service\";\r\nimport { MAT_DATE_LOCALE } from \"@angular/material/core\";\r\nimport { NgxPageScrollModule } from \"ngx-page-scroll\";\r\nimport { NgxPageScrollCoreModule } from \"ngx-page-scroll-core\";\r\nimport { MaintenanceMessageService } from \"./service/maintenanceMessage.service\";\r\nimport { ReviewerDashboardComponent } from \"./reviewerDashboard.component\";\r\nimport { AccountModule } from \"../account/account.module\";\r\nimport { AssessmentReportService } from \"./service/assessmentReport.service\";\r\nimport { AssessmentRegistrationService } from \"./service/assessmentRegistration.service\";\r\nimport { CurrentApplicationService } from './service/prereg/currentApplication.service';\r\nimport { FinalDeclarationService } from \"./service/finalDeclaration.service\";\r\nimport { IndependentPrescriberService } from \"./service/independentPrescriber.service\";\r\nimport { VoluntaryRemovalService } from \"./service/voluntaryRemoval.service\";\r\nimport { CCPSService } from \"./service/ccps.service\";\r\nimport { ReturnToRegisterService } from \"./service/returnToRegister.service\";\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n HttpClientModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n RouterModule,\r\n SharedModule,\r\n DynamicModule,\r\n TooltipModule,\r\n NgxPageScrollCoreModule,\r\n NgxPageScrollModule,\r\n AccountModule\r\n ],\r\n declarations: [\r\n BrandingComponent,\r\n ReceiptsComponent,\r\n ReceiptComponent,\r\n NavComponent,\r\n DiagnosticsComponent,\r\n NotFoundComponent,\r\n PrivacyPolicyComponent,\r\n ReviewerDashboardComponent\r\n ],\r\n exports: [\r\n HttpClientModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n RouterModule,\r\n SharedModule,\r\n DynamicModule,\r\n TooltipModule,\r\n BrandingComponent,\r\n ReceiptsComponent,\r\n ReceiptComponent,\r\n NavComponent,\r\n DiagnosticsComponent,\r\n NotFoundComponent,\r\n PrivacyPolicyComponent,\r\n ReviewerDashboardComponent\r\n ],\r\n providers: [\r\n DevService,\r\n LogService,\r\n UploadService,\r\n UpdaterService,\r\n LayoutService,\r\n AuthService,\r\n PublicService,\r\n RenewalService,\r\n PreregService,\r\n RevalidationService,\r\n PaymentService,\r\n ReviewService,\r\n StudentService,\r\n TooltipService,\r\n CustomErrorHandler,\r\n TrackingService,\r\n EdiService,\r\n AccountService,\r\n RegistrationService,\r\n MaintenanceMessageService,\r\n AssessmentReportService,\r\n CurrentApplicationService,\r\n AssessmentRegistrationService,\r\n FinalDeclarationService,\r\n IndependentPrescriberService,\r\n VoluntaryRemovalService,\r\n CCPSService,\r\n ReturnToRegisterService,\r\n { provide: ErrorHandler, useClass: CustomErrorHandler },\r\n { provide: MAT_DATE_LOCALE, useValue: \"en-GB\" }\r\n ]\r\n})\r\nexport class CoreModule { }\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { LogService } from './service/log.service';\r\nimport { Log } from './model/Log';\r\nimport { LogLevel } from './model/LogLevel';\r\nimport { DevService } from './service/dev.service';\r\nimport { RenewalStatus } from '../renewal/model/RenewalStatus';\r\nimport { RenewalService } from './service/renewal.service';\r\nimport { AuthService } from './service/auth.service';\r\nimport { Renewal } from '../renewal/model/Renewal';\r\nimport { RenewalPaymentMethod } from '../renewal/model/RenewalPaymentMethod';\r\nimport { environment } from '../../environments/environment';\r\nimport { Environment } from '../../environments/model/Environment';\r\nimport { ApplicationStatus } from '../prereg/model/ApplicationStatus';\r\n\r\nimport { PreregService } from './service/prereg.service';\r\n\r\nimport { UserActivity } from './model/UserActivity';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { ConfirmDialogComponent } from '../shared/confirmDialog.component';\r\n\r\nimport { AssessmentReportService } from './service/assessmentReport.service';\r\n\r\n@Component({\r\n selector: 'app-diagnostics',\r\n moduleId: module.id,\r\n templateUrl: './diagnostics.component.html',\r\n styleUrls: ['./diagnostics.scss']\r\n})\r\nexport class DiagnosticsComponent implements OnInit {\r\n\r\n loading = false;\r\n error = false;\r\n updating = false;\r\n RenewalStatus = RenewalStatus;\r\n ApplicationStatus = ApplicationStatus;\r\n\r\n RenewalPaymentMethod = RenewalPaymentMethod;\r\n renewal: Renewal;\r\n renewalStatus;\r\n applicationStatus: ApplicationStatus;\r\n\r\n applicationPaid: boolean;\r\n applicationFormId: string;\r\n applicationStatusJson;\r\n assessmentApplicationStatusJson;\r\n environment: Environment;\r\n\r\n logs: Log[] = [];\r\n sendingLogs = false;\r\n\r\n constructor(private log: LogService, private dev: DevService,\r\n private authService: AuthService, private renewalService: RenewalService,\r\n private preregService: PreregService, private dialog: MatDialog,\r\n private assessmentReportService: AssessmentReportService) {\r\n this.environment = environment;\r\n }\r\n\r\n refreshLogs() {\r\n this.logs = this.log.logs\r\n .sort((a, b) => {\r\n if (a.date < b.date) { return 1; }\r\n if (a.date > b.date) { return -1; }\r\n if (a.text < b.text) { return 1; }\r\n return -1;\r\n });\r\n }\r\n\r\n getOs() {\r\n let OSName = 'Unknown';\r\n if (navigator.appVersion.indexOf('Win') !== -1) { OSName = 'Windows'; }\r\n if (navigator.appVersion.indexOf('Mac') !== -1) { OSName = 'MacOS'; }\r\n if (navigator.appVersion.indexOf('X11') !== -1) { OSName = 'UNIX'; }\r\n if (navigator.appVersion.indexOf('Linux') !== -1) { OSName = 'Linux'; }\r\n return OSName;\r\n }\r\n\r\n getBrowser() {\r\n try {\r\n\r\n\r\n const nVer = navigator.appVersion;\r\n const nAgt = navigator.userAgent;\r\n let browserName = navigator.appName;\r\n let fullVersion = '' + parseFloat(navigator.appVersion);\r\n let majorVersion = parseInt(navigator.appVersion, 10);\r\n let nameOffset, verOffset, ix;\r\n\r\n // In Opera, the true version is after 'Opera' or after 'Version'\r\n if ((verOffset = nAgt.indexOf('Opera')) !== -1) {\r\n browserName = 'Opera';\r\n fullVersion = nAgt.substring(verOffset + 6);\r\n if ((verOffset = nAgt.indexOf('Version')) !== -1) {\r\n fullVersion = nAgt.substring(verOffset + 8);\r\n }\r\n } else if ((verOffset = nAgt.indexOf('MSIE')) !== -1) {\r\n // In MSIE, the true version is after 'MSIE' in userAgent\r\n browserName = 'Microsoft Internet Explorer';\r\n fullVersion = nAgt.substring(verOffset + 5);\r\n } else if ((verOffset = nAgt.indexOf('Chrome')) !== -1) {\r\n // In Chrome, the true version is after 'Chrome'\r\n browserName = 'Chrome';\r\n fullVersion = nAgt.substring(verOffset + 7);\r\n } else if ((verOffset = nAgt.indexOf('Safari')) !== -1) {\r\n // In Safari, the true version is after 'Safari' or after 'Version'\r\n browserName = 'Safari';\r\n fullVersion = nAgt.substring(verOffset + 7);\r\n if ((verOffset = nAgt.indexOf('Version')) !== -1) {\r\n fullVersion = nAgt.substring(verOffset + 8);\r\n }\r\n } else if ((verOffset = nAgt.indexOf('Firefox')) !== -1) {\r\n // In Firefox, the true version is after 'Firefox'\r\n browserName = 'Firefox';\r\n fullVersion = nAgt.substring(verOffset + 8);\r\n } else if ((nameOffset = nAgt.lastIndexOf(' ') + 1) <\r\n (verOffset = nAgt.lastIndexOf('/'))) {\r\n // In most other browsers, 'name/version' is at the end of userAgent\r\n browserName = nAgt.substring(nameOffset, verOffset);\r\n fullVersion = nAgt.substring(verOffset + 1);\r\n if (browserName.toLowerCase() === browserName.toUpperCase()) {\r\n browserName = navigator.appName;\r\n }\r\n }\r\n // trim the fullVersion string at semicolon/space if present\r\n if ((ix = fullVersion.indexOf(';')) !== -1) {\r\n fullVersion = fullVersion.substring(0, ix);\r\n }\r\n if ((ix = fullVersion.indexOf(' ')) !== -1) {\r\n fullVersion = fullVersion.substring(0, ix);\r\n }\r\n majorVersion = parseInt('' + fullVersion, 10);\r\n if (isNaN(majorVersion)) {\r\n fullVersion = '' + parseFloat(navigator.appVersion);\r\n majorVersion = parseInt(navigator.appVersion, 10);\r\n }\r\n\r\n return {\r\n os: this.getOs(),\r\n browserName,\r\n fullVersion,\r\n majorVersion,\r\n navigatorAppName: navigator.appName,\r\n navigatorUserAgent: navigator.userAgent\r\n };\r\n } catch (e) {\r\n this.log.error('Error getting browser details', e);\r\n }\r\n\r\n }\r\n\r\n sendDiagnostics() {\r\n this.sendingLogs = true;\r\n const user = this.authService.user ? this.authService.user.toJson() : undefined;\r\n const userDetails = { user, msalUserId: this.authService.userId };\r\n const browserDetails = this.getBrowser();\r\n this.log.postActivity(UserActivity.Unknown, 'Diagnostics', { userDetails, browserDetails, logs: this.logs }).subscribe(() => {\r\n this.sendingLogs = false;\r\n this.dialog.open(ConfirmDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n allowCancel: false,\r\n confirmText: 'OK',\r\n title: `Diagnostics sent`,\r\n message: `

    Diagnostics data has been sent successfully.

    Thank you.

    `\r\n }\r\n });\r\n }, error => {\r\n this.sendingLogs = false;\r\n this.dialog.open(ConfirmDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n allowCancel: false,\r\n confirmText: 'OK',\r\n title: `Error sending diagnostics`,\r\n message: `

    {{ error | json }}

    `\r\n }\r\n });\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.refreshLogs();\r\n\r\n if (this.authService.user && this.authService.user.registrant) {\r\n this.loading = true;\r\n this.renewalService.getRenewal().subscribe(renewal => {\r\n this.renewal = renewal;\r\n if (renewal) {\r\n this.renewalStatus = renewal.status;\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.loading = false;\r\n this.error = true;\r\n this.log.error(error.message || error);\r\n this.refreshLogs();\r\n });\r\n }\r\n\r\n if (this.authService.user && this.authService.user.isPrereg) {\r\n this.getPreregApplication();\r\n }\r\n\r\n\r\n\r\n\r\n }\r\n\r\n getPreregApplication() {\r\n this.loading = true;\r\n this.preregService.getRegApplication(this.authService.user.registrationStatus).subscribe(application => {\r\n if (application) {\r\n this.applicationStatus = application.activeForm.formStatus;\r\n this.applicationPaid = !application.activeForm.requirePayment;\r\n this.applicationFormId = application.activeForm.id;\r\n\r\n this.getApplicationStatus();\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.loading = false;\r\n this.error = true;\r\n this.log.error(error.message || error);\r\n this.refreshLogs();\r\n });\r\n }\r\n\r\n getAssessmentReportApplication() {\r\n this.loading = true;\r\n this.assessmentReportService.getAssessmentReportApplication(this.authService.user.registrationStatus).subscribe(application => {\r\n if (application) {\r\n this.applicationStatus = application.activeForm.formStatus;\r\n this.applicationFormId = application.activeForm.id;\r\n this.getAssessmentApplicationStatus();\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.loading = false;\r\n this.error = true;\r\n this.log.error(error.message || error);\r\n this.refreshLogs();\r\n });\r\n }\r\n\r\n\r\n getApplicationStatus() {\r\n this.dev.getApplicationStatus(this.applicationFormId).subscribe(data => {\r\n this.applicationStatusJson = data;\r\n });\r\n }\r\n\r\n getAssessmentApplicationStatus() {\r\n this.dev.getAssessmentApplicationStatus(this.applicationFormId).subscribe(data => {\r\n this.applicationStatusJson = data;\r\n });\r\n }\r\n\r\n\r\n resetRevalidation() {\r\n this.updating = true;\r\n this.dev.resetRevalidation()\r\n .subscribe(success.bind(this), fail.bind(this));\r\n\r\n function success() {\r\n this.updating = false;\r\n this.getApplicationStatus();\r\n this.getAssessmentApplicationStatus();\r\n }\r\n function fail() {\r\n this.updating = false;\r\n }\r\n }\r\n\r\n updateRenewalStatus() {\r\n this.updating = true;\r\n this.dev.setRenewalStatus(this.renewalStatus)\r\n .subscribe(success.bind(this), fail.bind(this));\r\n\r\n function success() {\r\n this.updating = false;\r\n }\r\n function fail() {\r\n this.updating = false;\r\n }\r\n }\r\n\r\n updateApplicationStatus() {\r\n this.updating = true;\r\n const paymentDate = new Date();\r\n if (!this.applicationPaid) {\r\n paymentDate.setMonth(paymentDate.getMonth() - 7);\r\n }\r\n const paymentDateString = paymentDate.toISOString();\r\n this.dev.setApplicationStatus(this.applicationFormId, paymentDateString, this.applicationStatus)\r\n .subscribe(success.bind(this), fail.bind(this));\r\n\r\n function success() {\r\n this.updating = false;\r\n delete this.preregService.regApplication || this.assessmentReportService.assessmentReport;\r\n this.getPreregApplication();\r\n this.getAssessmentReportApplication();\r\n }\r\n function fail() {\r\n this.updating = false;\r\n }\r\n }\r\n\r\n enableSubmit() {\r\n this.updating = true;\r\n this.dev.setRevalidationSubmitDate().subscribe(\r\n success => {\r\n this.updating = false;\r\n },\r\n failure => console.error('failure')\r\n );\r\n }\r\n\r\n}\r\n","\r\n
    \r\n

    Diagnostics

    \r\n

    \r\n View and send diagnostics information\r\n

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

    Logs

    \r\n \r\n\r\n
    \r\n
    \r\n
    1\">\r\n
    \r\n {{ log.date | time }}\r\n
    \r\n
    \r\n \r\n {{ log.text }}\r\n
    \r\n\r\n
    \r\n \r\n
    {{ item | json }}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Environment

    \r\n
    Version: {{ environment.version }}
    \r\n
    Target: {{ environment.target.toUpperCase() }}
    \r\n
    \r\n\r\n \r\n\r\n \r\n
    \r\n
    \r\n
    ","export enum BannerState {\r\n none,\r\n default,\r\n info,\r\n important,\r\n application\r\n}\r\n","export enum LogLevel {\r\n info, warn, error, critical\r\n}\r\n","export enum UserActivity {\r\n Unknown = 0,\r\n Renewal = 1,\r\n Revalidation = 2\r\n}\r\n","export enum PaymentType {\r\n Unknown = 0,\r\n // ROS\r\n RegistrationApplicationFee = 1,\r\n // ROS\r\n RegistrationFirstYearFee = 2,\r\n // PROS\r\n PreRegistrationApplicationFee = 3,\r\n // TROS\r\n PharmacyTechnicianRegistrationApplicationFee = 4,\r\n // TROS\r\n PharmacyTechnicianFirstYearFee = 5,\r\n // AROS\r\n AssessmentRegistrationApplicationFee = 6,\r\n // IndyPrescriber\r\n IndependentPrescriberApplicationFee = 7,\r\n //Voluntary Removal Application\r\n PharmacistVRemoval1QuarterRenewalFee = 8,\r\n PharmacistVRemoval2QuarterRenewalFee = 9,\r\n PharmacistVRemoval3QuarterRenewalFee = 10,\r\n PTechnicianVRemoval1QuarterRenewalFee = 11,\r\n PTechnicianVRemoval2QuarterRenewalFee = 12,\r\n PTechnicianVRemoval3QuarterRenewalFee = 13,\r\n\r\n //RTR aplication \r\n PharmacistRTRAppFeeVoluntaryRemovalLessThanMonth = 14,\r\n PharmacistRTRAppFeeVoluntaryRemovalMoreThanMonth = 15,\r\n PharmacistRTRAppFeeAfterNonRenewalLessThanYear = 16,\r\n PharmacistRTRAppFeeAfterNonComplianceLessThanYear = 17,\r\n PhyTechRTRAppFeeVoluntaryRemovalLessThanMonth = 18,\r\n PhyTechRTRAppFeeVoluntaryRemovalMoreThanMonth = 19,\r\n PhyTechRTRAppFeeAfterNonRenewalLessThanYear = 20,\r\n PhyTechRTRAppFeeAfterNonComplianceLessThanYear = 21,\r\n PharmacistRestorationFee = 22,\r\n PhyTechnicianRestorationFee = 23,\r\n PharmacistRestorationAndRenewalFee = 24,\r\n PhyTechnicianRestorationAndRenewalFee = 25,\r\n\r\n //CCPS application\r\n CertOfProfessionalStandingApplicationFee = 27\r\n\r\n}\r\n","import { Component, Input, OnInit, OnDestroy, ViewChildren, QueryList, ElementRef, Renderer2 } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from './service/auth.service';\r\nimport { LayoutService } from './service/layout.service';\r\nimport { BannerState } from './model/BannerState';\r\nimport { AccountService } from '../account/service/account.service';\r\nimport { LoggedInState } from '../account/model/LoggedInState';\r\nimport {\r\n trigger,\r\n state,\r\n style,\r\n animate,\r\n transition\r\n} from '@angular/animations';\r\nimport { Subject } from 'rxjs';\r\nimport { FormScope } from '../registration/model/FormScope';\r\nimport { CurrentApplicationService } from './service/prereg/currentApplication.service';\r\nimport { RegistrantStatus } from '../registration/model/RegistrantStatus';\r\nimport { ReturnToRegisterApplication } from '../registration/return-to-register/model/ReturnToRegister';\r\n\r\n@Component({\r\n selector: 'app-nav',\r\n templateUrl: './nav.component.html',\r\n styleUrls: ['./nav.scss'],\r\n animations: [\r\n trigger('openState', [\r\n state('open', style({\r\n height: '*'\r\n })),\r\n state('closed', style({\r\n height: '0'\r\n })),\r\n transition('closed <=> open', animate('500ms cubic-bezier(.25,.8,.25,1)'))\r\n ])\r\n ]\r\n})\r\nexport class NavComponent implements OnInit, OnDestroy {\r\n\r\n openState = 'closed';\r\n BannerState = BannerState;\r\n LoggedInState = LoggedInState;\r\n @Input() direction = 'horizontal';\r\n currentApplicationLink: string;\r\n IPApplicationLink: string;\r\n noApplication: string;\r\n selectedItem = \"none\";\r\n @Input('isOpen') set setIsOpen(isOpen) {\r\n if (this.direction === 'vertical') {\r\n this.openState = isOpen ? 'open' : 'closed';\r\n }\r\n }\r\n isLoggedIn$ = new Subject();\r\n navigationCount = 0;\r\n activeItem: any;\r\n\r\n navMenu: any;\r\n navItems: [] = [];\r\n navLabel = \"Navigation menu\";\r\n\r\n constructor(public authService: AuthService,\r\n public layout: LayoutService,\r\n private accountService: AccountService,\r\n private currentApplicationService: CurrentApplicationService,\r\n private render: Renderer2) { }\r\n\r\n userSub;\r\n\r\n ngOnInit() {\r\n if (this.direction === 'horizontal') {\r\n this.openState = 'open';\r\n }\r\n\r\n this.authService.loggedInState$.subscribe(loggedInState => {\r\n this.isLoggedIn$.next(loggedInState === LoggedInState.loggedIn);\r\n\r\n this\r\n .currentApplicationService\r\n .availableForm\r\n .subscribe(formscope => {\r\n switch (formscope) {\r\n case FormScope.AssessmentRegistration:\r\n this.currentApplicationLink = 'prereg/assessment-registration';\r\n break;\r\n case FormScope.ProgressReport:\r\n this.currentApplicationLink = 'prereg/assessment-report';\r\n break;\r\n case FormScope.Trainee:\r\n this.currentApplicationLink = 'prereg/application';\r\n break;\r\n case FormScope.FinalDeclaration:\r\n this.currentApplicationLink = 'prereg/final-declaration';\r\n break;\r\n default:\r\n break;\r\n }\r\n });\r\n\r\n if (this.authService.user && this.authService.user.isRegistrant) {\r\n this.currentApplicationService.registrant\r\n .subscribe(() => {\r\n this.IPApplicationLink = 'application';\r\n });\r\n }\r\n });\r\n\r\n setTimeout(() => { // navigation is not rendered for a while after view initialization \r\n try {\r\n this.navMenu = this.render.selectRootElement(\"#navMenu\", true);\r\n\r\n if (this.navMenu !== undefined) {\r\n this.navItems = this.navMenu?.children;\r\n \r\n if (this.navItems !== undefined) {\r\n this.navigationCount = this.navItems.length - 2; // remove two non-navigation items\r\n this.setNavLabel();\r\n }\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n } \r\n }, 10000);\r\n }\r\n \r\n setNavLabel() {\r\n this.navLabel = \"Navigation menu, list of \" + this.navigationCount + \" items.\";\r\n }\r\n\r\n get showIneligibleToRegister() {\r\n return this.authService.user?.registrationStatus === RegistrantStatus.IneligibleToRegister;\r\n }\r\n\r\n get showRevalidation() {\r\n return this.authService.user &&\r\n this.authService.user.isRegistrant && !this.authService.user.registrant.exemptFromRevalidationSubmissions;\r\n }\r\n\r\n get notificationCount() {\r\n return this.accountService.notificationCount$.value;\r\n }\r\n\r\n // get showPrescriberApplication() {\r\n // return this.authService.user &&\r\n // this.authService.user.isRegistrant && this.authService.user.registrant.isIndyPrescAppAvailable;\r\n // }\r\n\r\n ngOnDestroy() {\r\n if (this.userSub) {\r\n this.userSub.unsubscribe();\r\n }\r\n }\r\n\r\n log(val) {\r\n console.log(val);\r\n }\r\n\r\n public signout() {\r\n this.authService.logout();\r\n }\r\n}\r\n","","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n templateUrl: './notFound.component.html'\r\n})\r\nexport class NotFoundComponent {\r\n\r\n constructor(private _router: Router) {\r\n }\r\n\r\n}\r\n","
    \r\n \r\n

    Page not found

    \r\n

    Please check that you have entered the correct url

    \r\n
    ","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n templateUrl: './privacyPolicy.component.html',\r\n styleUrls: ['./privacyPolicy.scss']\r\n})\r\nexport class PrivacyPolicyComponent {\r\n\r\n constructor(private _router: Router) {\r\n }\r\n\r\n}\r\n","\r\n
    \r\n

    Privacy policy

    \r\n

    \r\n This policy explains how we will use information that you give us about yourself through myGPhC. You can see our full\r\n privacy\r\n policy on our website.\r\n

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

    We use and publish personal information to support our work as the regulatory body for\r\n pharmacists, pharmacy technicians\r\n and registered pharmacies in Great Britain. Our statutory aims, objectives, powers and responsibilities are set\r\n out in\r\n the Pharmacy Order 2010, the rules made under the Order, and in other legislation.\r\n

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

    \r\n We are registered with the Information Commissioner’s Office (ICO) as a data controller, number Z236733X. When you give\r\n us your personal information through myGPhC, or you contact us by other means, the\r\n GPhC is the data controller for information\r\n you share with us.\r\n

    \r\n\r\n

    \r\n We review and update this policy from time to time to reflect changes to our processes.\r\n

    \r\n\r\n

    \r\n We hope the sections below will answer any questions you have, but if not, please get in touch with us. Use the\r\n links below\r\n to navigate to the different sections within this policy.\r\n

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

    \r\n When you apply to be registered\r\n

    \r\n\r\n

    \r\n Information we collect\r\n

    \r\n\r\n

    \r\n We are required by the Pharmacy Order 2010 to make sure that applicants are suitably qualified and fit to practise\r\n before\r\n they join our registers. We use the information you give us when you apply to process and assess your application\r\n and this\r\n will include:\r\n

    \r\n\r\n
      \r\n
    • contact details
    • \r\n
    • details of your qualifications, training and experience
    • \r\n
    • tutor information
    • \r\n
    • employer information
    • \r\n
    • counter-signatory information
    • \r\n
    • copies of documents to prove your identity
    • \r\n
    • payment information (see payment section)
    • \r\n
    • evidence of English language skills
    • \r\n
    • information about issues that may affect your fitness to practise. This may include information about your\r\n health or criminal\r\n convictions. If you make a fitness to practise declaration, we will ask relevant other people or organisations\r\n for information\r\n to help us assess your application.
    • \r\n
    \r\n\r\n

    \r\n We also ask for equality and diversity information, which we use to meet our duties\r\n under the Equality Act 2010, but you\r\n do not have to fill this in.\r\n

    \r\n\r\n

    \r\n How we will use your application information\r\n

    \r\n\r\n

    \r\n We are required by the Pharmacy Order 2010 to make sure that applicants are suitably qualified and fit to practise\r\n before\r\n they join our registers. We use the information you give us when you apply to process and assess your application.\r\n This will\r\n include:\r\n

    \r\n\r\n
      \r\n
    • checking your identity, assessing your qualifications, experience and fitness to practise
    • \r\n
    • updating the registers
    • \r\n
    • administering your registration, including taking payments
    • \r\n
    • sending you communications about your registration and fitness to practise matters, as necessary to support\r\n our statutory\r\n objectives and when required by law
    • \r\n
    • compiling statistics and research
    • \r\n
    • dealing with questions, concerns or complaints
    • \r\n
    \r\n\r\n

    \r\n How we will share your application information\r\n

    \r\n\r\n

    \r\n Pharmacist applicants – you will be asked in your application to nominate a pharmacist to certify your\r\n application. We will\r\n give access to your application to your nominee for this purpose. They will not be able to view it after they have\r\n responded.\r\n They will not have access to any equality and diversity information you give.\r\n

    \r\n\r\n

    \r\n We are required by law to publish registers of pharmacists and pharmacy technicians. When you join the register, your name\r\n will be added to the published register. We give more details on the register and other information we publish on\r\n registered\r\n pharmacy professionals in the renewal section below .\r\n

    \r\n\r\n

    \r\n We may share information you give us with third parties to meet our statutory objectives\r\n under the Pharmacy\r\n Order 2010, the Rules made under the order and other legislation or where required by law. These third\r\n parties may include other regulatory\r\n and enforcement authorities, NHS trusts, employers and the Department of Health. You will find more information on\r\n our website\r\n about organisations we work\r\n with.\r\n We say more about when we will share information in our\r\n publication and disclosure policy\r\n and in the section below on sharing personal information.\r\n

    \r\n\r\n

    \r\n We may also share information with universities or other third parties when we carry out research into specific\r\n areas to\r\n develop our work. See the section on statistics and research below.

    \r\n\r\n

    \r\n How long we will keep your application information\r\n

    \r\n\r\n

    \r\n We keep your application and registration records while you are registered and for at least 10 years after you\r\n leave the\r\n register, depending on the reason you leave the register. If your application to join the register is\r\n unsuccessful, we will\r\n keep your information for up to 2 years after the period during which you are eligible to apply. If your\r\n application is refused\r\n for fitness to practise reasons, we will keep it while it is necessary for regulatory purposes.\r\n

    \r\n\r\n

    \r\n Pre-registration training tutors\r\n

    \r\n

    \r\n We hold your contact details for the purpose of administering the pre-registration training scheme. We also keep\r\n records when you sign off the competence of individual pre-registration trainees.\r\n These are held as part of the trainee’s records and used in assessing their application to register.\r\n

    \r\n\r\n

    \r\n When you revalidate\r\n

    \r\n\r\n

    \r\n Information we collect\r\n

    \r\n\r\n

    \r\n You must submit records to show how you have carried out and recorded revalidation activities, as required by the\r\n revalidation framework. For the peer\r\n discussion element, we ask you to give us the name and contact details of the person you had the\r\n discussion with. Please make sure they agree that you may use their details and are aware that we may contact them\r\n about\r\n your discussion.\r\n

    \r\n\r\n

    \r\n How we will use your revalidation information\r\n

    \r\n\r\n

    \r\n We have a statutory duty to make sure pharmacy professionals practise safely and effectively. Our revalidation\r\n requirements\r\n allow pharmacists and pharmacy technicians to show that they keep their knowledge and skills up to date in order\r\n to maintain\r\n and improve their practice.\r\n

    \r\n\r\n

    \r\n For registrations expiring on and after 31 December 2018, revalidation is required as part of registration\r\n renewal. So,\r\n if you do not give us the revalidation information we need without a good reason, we will take action which can\r\n include removing\r\n you from the register.\r\n

    \r\n\r\n

    \r\n We will use the information you give us in your revalidation records to make sure you have carried out appropriate\r\n activities\r\n to meet the requirements of the revalidation framework. (These are explained in the ‘The process explained: review and\r\n feedback’\r\n section of the framework.)\r\n

    \r\n\r\n

    \r\n Sometimes we may need to use your revalidation information when we deal with concerns about your fitness to\r\n practise. We\r\n may do this if it is relevant to a concern is raised with us by another person, or if something in the information\r\n you give\r\n us causes a concern about your practice.\r\n

    \r\n\r\n

    \r\n We will also use data from revalidation records to quality assure our processes, evaluate them and to help us\r\n improve them.\r\n This may include compiling statistics and keeping stakeholders up to date with information about revalidation.\r\n This information\r\n is made anonymous.\r\n

    \r\n\r\n

    \r\n How we will share your revalidation information\r\n

    \r\n\r\n

    \r\n We use outside reviewers to assess revalidation records you submit. The reviewers provide this service under\r\n contract to\r\n the GPhC. Reviewers access records using a secure online portal. They only see records they have been allocated to\r\n review\r\n and do not see the identity of the registrant who has submitted the record. The reviewers create feedback reports,\r\n which\r\n are quality assured by another reviewer and relevant GPhC employees.\r\n

    \r\n\r\n

    \r\n We share revalidation information with third parties to keep stakeholders up to date with our work. This\r\n information is\r\n made anonymous.\r\n

    \r\n\r\n

    \r\n Occasionally we may need to share revalidation information on individual pharmacy professionals to meet our\r\n statutory objectives\r\n or when required by law. These third parties may include other regulatory authorities or the NHS. See the section\r\n on\r\n sharing personal information below.\r\n

    \r\n\r\n

    \r\n We may also share information with universities or other third parties when we carry out research into specific\r\n areas to\r\n develop our work. See the section on statistics and research below.\r\n

    \r\n\r\n

    \r\n How long we will keep your revalidation information\r\n

    \r\n\r\n

    \r\n We will keep your revalidation records and feedback reports in myGPhC as follows:\r\n

    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Type of recordWill be kept for:
    Revalidation records that you have not submitted2 years from the date you last edit the record
    Submitted revalidation records2 years from the date you submitted the record
    Feedback reports2 years from the date of issue
    Submitted revalidation records that did not meet the core criteria, and related feedback reports\r\n Until the review process is successfully completed and then 2 years from that date
    Exceptional circumstances forms and evidence2 years from the date you submit the form unless a concern is raised
    \r\n\r\n

    \r\n You will continue to have access to your revalidation information if you are suspended from the register or\r\n excluded from\r\n practice. If you are removed from the register you will be able to download your information for 28 days, then\r\n your access\r\n will be revoked. You can ask us for more time if you need it.\r\n

    \r\n\r\n

    \r\n We will also keep an audit history of the dates of your submissions and the outcome of reviews and any remediation\r\n actions.\r\n

    \r\n\r\n

    \r\n
    \r\n When you renew\r\n
    \r\n \r\n back to top\r\n \r\n

    \r\n\r\n

    \r\n If you are a pharmacist or pharmacy technician, you must be registered with the GPhC to be able to practise in\r\n Great Britain.\r\n You must renew your registration every year and complete a declaration to confirm that you meet all our\r\n professional, fitness\r\n to practise and ethical standards.\r\n

    \r\n\r\n

    \r\n How we will use your renewal information\r\n

    \r\n\r\n

    \r\n When you apply to renew your registration through myGPhC, we will use the information you give us to confirm\r\n whether your\r\n registration may continue and to update the register.\r\n

    \r\n\r\n

    \r\n As part of your renewal, you must complete a declaration of fitness to practise. If you tick ‘yes’ to any of the\r\n questions,\r\n you will be asked to give more information in another declaration form. We will use information you give us in\r\n these forms\r\n to assess your renewal application.\r\n

    \r\n\r\n

    \r\n If you do not complete the declaration or make a declaration that raises a question about your fitness to\r\n practise, we will\r\n not be able to process your renewal but we will guide you on what to do next. In some cases we will need to look\r\n further\r\n into matters you raise in your declarations to make sure that you are fit to practise.\r\n

    \r\n\r\n

    \r\n How we will share your renewal information\r\n

    \r\n\r\n

    \r\n We are required by law to publish registers of pharmacists and pharmacy technicians. The registers contain your name, registration\r\n number, registration status, date of renewal and the town of your address. If you have received a fitness to\r\n practise sanction,\r\n your register entry will contain a link to relevant documents, in line with our publication and disclosure policy.\r\n

    \r\n\r\n

    \r\n For pharmacists, the register also says if you are an independent or supplementary prescriber and if you are a\r\n superintendent\r\n pharmacist, the name of the relevant pharmacy.\r\n

    \r\n\r\n

    \r\n We make data from the public registers available via a licensed\r\n subscription\r\n service. This does not include a live link\r\n to fitness to practise documents. More details about the service and a copy of the licence are on\r\n our website.\r\n

    \r\n\r\n

    \r\n We may also share information with universities or other third parties when we carry out research into specific\r\n areas to\r\n develop our work. See the section on statistics and research below.\r\n

    \r\n\r\n

    \r\n We may share information you give us with third parties to help us meet our statutory aims, objectives and\r\n responsibilities,\r\n and in using our powers under the Pharmacy Order 2010, the Rules made under the order and other legislation. These\r\n third\r\n parties may include other regulatory and enforcement authorities, NHS trusts, employers and the Department of\r\n Health. You\r\n will find more information on our website about organisations we work with. We say more about when we will share information\r\n in our publication and disclosure policy and in the section below on sharing personal\r\n information.\r\n

    \r\n\r\n

    \r\n If you wish to apply for registration to practise in another country, you may need to ask us for a certificate of\r\n current\r\n professional status and fitness to practise history to be sent to the relevant regulator. More information about\r\n this is\r\n on our website.\r\n

    \r\n\r\n

    \r\n How long we will keep your renewal information\r\n

    \r\n\r\n

    \r\n We keep your registration records while you are registered and for at least 10 years after you leave the register,\r\n depending\r\n on the reason you leave the register. If we investigate a concern about your practice, we keep the case file for\r\n at least\r\n six years from the date the case is closed or a relevant sanction ends. We keep determinations of any fitness to\r\n practise\r\n hearings as part of your registration record.\r\n

    \r\n\r\n

    \r\n
    \r\n Payment information\r\n
    \r\n \r\n back to top\r\n \r\n

    \r\n\r\n

    \r\n How we will use your payment information\r\n

    \r\n\r\n

    \r\n If you pay for your registration or renewal using direct debit, we will use the information you provide on the\r\n direct debit\r\n form to set up and take your payment.\r\n

    \r\n\r\n

    \r\n If you pay by debit or credit card, you will be directed to make the payment through WorldPay and the GPhC will only receive\r\n a payment notification.\r\n

    \r\n\r\n

    \r\n If you make a payment by card over the phone, we will take the details we need to process the payment, but they\r\n will be\r\n securely destroyed when the process is complete.\r\n

    \r\n\r\n

    \r\n How we will share your payment information\r\n

    \r\n\r\n

    \r\n We will not normally share payment information, except as necessary to take a payment, but in some cases may share\r\n information\r\n with enforcement authorities or banks, for example, if there is a suggestion of fraudulent payments.\r\n

    \r\n\r\n

    \r\n How long we will keep your payment information\r\n

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

    \r\n You can download a copy of your receipts from myGPhC back to 2015. Please contact us if you need earlier receipts.\r\n We keep\r\n payment notifications for six years and direct debit mandates for six years from the end of the mandate.\r\n

    \r\n\r\n

    \r\n
    \r\n Sharing personal information\r\n
    \r\n \r\n back to top\r\n \r\n

    \r\n\r\n

    \r\n We share information with other organisations in the public interest when we carry out our tasks under the\r\n Pharmacy Order 2010\r\n and other legislation.\r\n We also disclose information when required by other laws, for example, laws that apply to the\r\n work of other public authorities.\r\n

    \r\n\r\n

    \r\n The Pharmacy Order gives us a duty to cooperate, where appropriate and reasonably practical, with other\r\n organisations, such\r\n as other regulatory authorities, NHS trusts, employers of pharmacy professionals, the Department of Health and\r\n organisations\r\n that run GPhC accredited courses. You can find information about the formal arrangements we have with some of\r\n these organisations\r\n on our website.\r\n

    \r\n\r\n

    \r\n We explain more about when we disclose information to other people or organisations in our publication and disclosure policy.\r\n We will not share your personal data for marketing purposes with any third party.\r\n

    \r\n\r\n

    \r\n How we consider the public interest\r\n

    \r\n\r\n

    \r\n There is a public interest in the GPhC meeting its objectives. These include:\r\n

    \r\n\r\n
      \r\n
    • protecting the health, safety and well-being of the public
    • \r\n
    • upholding public confidence in the pharmacy professions
    • \r\n
    • making sure that pharmacy professionals and pharmacies meet our standards
    • \r\n
    \r\n\r\n

    \r\n Where we are considering disclosing personal information, we must comply with data protection legislation and\r\n human rights\r\n legislation.\r\n

    \r\n\r\n

    \r\n When we decide whether or not to disclose information, we must first be satisfied that disclosure is lawful and\r\n meets one\r\n of the conditions for processing in data protection legislation. This will usually be when it is necessary to\r\n enable us to\r\n carry out our statutory and regulatory functions under the Pharmacy Order, Rules and/or other relevant\r\n legislation. Sometimes\r\n another condition will apply.\r\n

    \r\n\r\n

    \r\n We then need to consider whether disclosure is justifiable. Is it in the public interest to disclose compared to\r\n and balanced\r\n with the person’s right to privacy? We consider a person’s rights under data protection legislation, human rights\r\n legislation\r\n and the common law duty of confidentiality. We review any legal power to make such a disclosure. We also review\r\n the nature,\r\n purpose, quality, appropriateness, and necessity for the disclosure. We also consider the impact of disclosure,\r\n including\r\n the potential for damage or distress to the person and weigh that alongside the potential harm that may be caused\r\n if we do\r\n not disclose information. We must make sure that we comply with the data protection principles, for example, that\r\n the information\r\n we disclose is limited to what is necessary to achieve the overriding lawful purpose.\r\n

    \r\n\r\n

    \r\n We consider the public interest when employers of pharmacy professionals or other agencies involved in\r\n recruitment, ask\r\n us for personal information in relation to their employees. We also consider it when other public authorities ask\r\n us to disclose\r\n personal information. For example, NHS organisations may ask us for information to establish the professional\r\n standing of\r\n a registered pharmacy professional.\r\n

    \r\n\r\n

    \r\n We do not usually publish or disclose information about investigations currently taking place, unless we consider\r\n it to\r\n be in the public interest and proportionate in the circumstances. We want to avoid publishing or disclosing\r\n information where\r\n there is a risk that it might prejudice or adversely impact an investigation by the GPhC or another organisation.\r\n

    \r\n\r\n

    \r\n Freedom of information\r\n

    \r\n\r\n

    \r\n Sometimes the GPhC may need to disclose information under the laws covering access to information (usually the\r\n Freedom of\r\n Information Act 2000). We disclose identifiable personal information only where it is lawful, fair and in the\r\n public interest\r\n to do so.\r\n

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

    Pre-registration trainees

    \r\n\r\n

    \r\n Information we collect\r\n

    \r\n\r\n

    \r\n We are required by the Pharmacy Order 2010 to make sure that pharmacy professionals have appropriate\r\n qualifications, training and experience.\r\n If you apply to join the pharmacist pre-registration training scheme, we collect information including:\r\n

    \r\n\r\n
      \r\n
    • \r\n your contact details\r\n
    • \r\n
    • \r\n your qualifications and relevant experience\r\n
    • \r\n
    • \r\n evidence of English language skills\r\n
    • \r\n
    • \r\n counter-signatory and reference information\r\n
    • \r\n
    • \r\n copies of documents to prove your identity\r\n
    • \r\n
    • \r\n payment information \r\n (see the payment section)\r\n \r\n
    • \r\n
    • \r\n details of your tutor, placement and progress in your placement\r\n
    • \r\n
    • \r\n details of fitness to practise issues, which may include information about health or criminal convictions\r\n
    • \r\n
    \r\n\r\n

    \r\n We also ask for equality and diversity information, but you do not have to fill this in. We use this data to meet\r\n our duties under the Equality Act 2010.\r\n

    \r\n

    \r\n When you sit the pre-registration assessment, we receive your answer sheets and marks. You may give information\r\n about health or other issues if you make a request for a reasonable adjustment.\r\n

    \r\n\r\n

    \r\n How we will use your information\r\n

    \r\n\r\n

    \r\n We will use your information in line with our statutory objective to make sure that people working and providing\r\n care in a pharmacy setting,\r\n and who may go on to become registered pharmacy professionals are properly qualified, trained and fit to practise.\r\n We will:\r\n

    \r\n\r\n
      \r\n
    • \r\n assess your eligibility and fitness to join the schemes\r\n
    • \r\n
    • \r\n administer and monitor training placements\r\n
    • \r\n
    • \r\n administer the pre-registration assessment\r\n
    • \r\n
    • \r\n assess applications for reasonable adjustments\r\n
    • \r\n
    • mark and quality assure the pre-registration assessment
    • \r\n
    • process any concerns or fitness to practise issues
    • \r\n
    • deal with questions or complaints
    • \r\n
    • assess applications to join the register of pharmacists
    • \r\n
    • compile statistics and research
    • \r\n
    \r\n\r\n

    \r\n If you give us information as part of a request for a reasonable adjustment that we consider likely to affect your fitness to practise, we will hold that information and use it when we assess your application to join the register. \r\n his is in line with our objective to protect the public.\r\n

    \r\n\r\n

    \r\n How we will share your information\r\n

    \r\n

    \r\n We will ask your pre-registration tutor to share with us records of your progress in your placement. We will also ask them to sign off your training when it is complete.\r\n If we receive a concern about your fitness to practise, we will share details with your tutor, employer or university (for sandwich course students) where there is a public interest in doing so.\r\n

    \r\n

    \r\n When you sit the registration assessment, we share a list of candidates with people involved in administering the assessment at the relevant assessment centre. We use third parties to mark answer sheets and analyse the results to quality assure the assessment. We also use a third party to analyse the assessment results by school of pharmacy, age and ethnicity of candidates. \r\n We share this data in pseudonymised form and the identity of candidates is not shared. \r\n We publish names of trainees who pass the registration assessment on the GPhC website. \r\n

    \r\n

    \r\n If you make a request for a reasonable adjustment, the Adjustments Committee will assess your application. They will only see your request in pseudonymised form.\r\n

    \r\n

    \r\n If you give us equality and diversity information, we use it to meet our duties under the Equality Act 2010. \r\n

    \r\n\r\n

    \r\n How long we will keep your information\r\n

    \r\n\r\n

    \r\n If you go on to join the register, we will keep your training record as part of your registration record.\r\n

    \r\n

    \r\n If you make any declarations about your fitness to practise these will be held for two years after you join the register. If you apply for a reasonable adjustment to sit the pre-registration assessment, this information will be held for two years after you join the register. If a concern about your practise is raised, we will keep the information while it is necessary for regulatory purposes.\r\n

    \r\n

    \r\n If you do not go on to join the register, we will keep your information for up to two years after the time your eligibility to apply expires. If we refuse your application on fitness to practise grounds, we will keep it while it is necessary for regulatory purposes.\r\n

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

    \r\n
    \r\n Statistics and research\r\n
    \r\n \r\n back to top\r\n \r\n

    \r\n\r\n

    \r\n We use personal data to analyse and review different aspects of our work as a regulator and in the public\r\n interest. This\r\n includes using data we collect about registered pharmacy professionals, pharmacy owners, applications to register,\r\n pre-registration\r\n training, education, fitness to practise and revalidation.\r\n If you give us equality and diversity information,\r\n we use that data in research and analysis to support our work to meet our public sector equality duties. We\r\n publish research on our\r\n website,\r\n but do not identify individuals in reports, unless they have given specific consent.\r\n

    \r\n\r\n

    \r\n From time to time we carry out research projects into specific areas of our work. We sometimes use third parties\r\n to help\r\n us with this and we share information with them for analysis where necessary. We anonymise data where it is not\r\n necessary\r\n to share identifiable information. We make sure that any such third parties sign an agreement which includes\r\n confidentiality\r\n and data protection clauses.\r\n

    \r\n\r\n

    \r\n Sometimes we carry out surveys or use focus groups to help with our research.\r\n If you take part in these, we will tell you\r\n how we plan to use your information. We use SmartSurvey to collect responses to our surveys.\r\n You can read SmartSurvey’s\r\n privacy policy\r\n on their website. We take a copy of all responses to analyse at the GPhC and delete the information held in\r\n SmartSurvey\r\n when our work is complete.\r\n

    \r\n\r\n

    \r\n We do not share contact details of pharmacy professionals with independent researchers or research students.\r\n See the research policy for further information.\r\n

    \r\n\r\n

    \r\n
    \r\n Equality and diversity information\r\n
    \r\n \r\n back to top\r\n \r\n

    \r\n\r\n

    \r\n We are committed to promoting equality, valuing diversity and being inclusive in all our work as a health\r\n professions regulator\r\n and as an employer. You do not have to give us equality and diversity information, but if you do, we will use it\r\n to meet\r\n our duties under the Equalities Act 2010. More information about how we do this is on our website.\r\n

    \r\n\r\n

    \r\n We use equality and diversity data in our research and analysis and we publish reports containing summary data to\r\n support\r\n our work and where required by law.\r\n

    \r\n\r\n

    \r\n
    \r\n Information security\r\n
    \r\n \r\n Back to top\r\n \r\n\r\n

    \r\n\r\n

    \r\n Our information technology security uses ISO 27000 standards and we regularly review our security policies and\r\n processes.\r\n Data is encrypted and stored in secure environments in the UK and European Economic Area. We regularly update our\r\n systems\r\n and install security updates. We have firewalls, anti-virus software and other measures in place to prevent and\r\n detect intrusion\r\n and we carry out regular penetration testing of our systems. We have disaster recovery and back up measures in\r\n place. We\r\n limit access to personal data to people who need to know because of their role.\r\n

    \r\n\r\n

    \r\n We use external suppliers to provide IT support and other business services. Where they process personal data for\r\n us, we\r\n will have contracts with data protection provisions in place.\r\n

    \r\n\r\n

    \r\n We use secure email or password protect files to send any sensitive personal information. Where we need to send\r\n sensitive\r\n information in letters, we use postal services with a track and trace facility.\r\n

    \r\n\r\n

    \r\n
    \r\n Privacy and cookies\r\n
    \r\n \r\n Back to top\r\n \r\n

    \r\n\r\n

    \r\n Where we provide services on the internet, we want them to be useful, reliable and easy to use.\r\n

    \r\n\r\n

    \r\n When you sign into myGPhC, some of your details are stored by the browser you use to make your experience better,\r\n and avoid\r\n repeatedly loading the same information from the server. These details are encrypted to protect your privacy.\r\n

    \r\n\r\n

    \r\n We may also place small amounts of information on the device you use to access the service, such as your computer\r\n or mobile\r\n phone. These include small files known as ‘cookies’. They cannot be used to identify you personally.\r\n

    \r\n\r\n

    \r\n The cookies are used to improve the services we provide, for example by recording which page you look at and how\r\n long you\r\n spend on it. We do this through a service called Google Analytics.\r\n

    \r\n\r\n

    \r\n You can find out more about cookies\r\n and how to control them on the Information Commissioner’s Office (ICO) website.\r\n

    \r\n\r\n

    \r\n Your rights\r\n

    \r\n\r\n

    \r\n The sections below explain how to ask us about any of your rights under data protection law. You can find out more\r\n about\r\n your rights from the ICO website.\r\n

    \r\n\r\n

    \r\n Asking to see your personal data\r\n

    \r\n

    \r\n You have the right of access to personal information that we hold about you, free of charge in most cases.\r\n Please send your request in writing, where possible, describing the\r\n information you want. We may ask you to supply proof of your identity.\r\n Under the law we have to respond within one month. We may extend this by two months if your request is complex. We\r\n will notify\r\n you if this is the case.\r\n

    \r\n\r\n

    \r\n Correcting your personal data\r\n

    \r\n\r\n

    \r\n You may update and correct some of your personal data yourself through myGPhC.\r\n If you want to make other updates or corrections, please contact us. In some circumstances, we may not be able to agree to requests to change\r\n data. If we do not, we will explain\r\n why. We will respond within one month.\r\n

    \r\n\r\n

    \r\n Rights of erasure and stopping use of data\r\n

    \r\n\r\n

    \r\n You have the rights to:\r\n

    \r\n\r\n
      \r\n
    • Object to data processing and ask us to stop using your personal information
    • \r\n
    • Ask us to erase your personal data
    • \r\n
    • Ask us to restrict the processing of your personal data
    • \r\n
    \r\n\r\n

    \r\n If you want to ask about any of these rights, please contact us. We will respond to requests within one month. We may not\r\n be able to agree to all requests, but if we do not, we will explain why. For example, we have to use certain types\r\n of information\r\n to carry out our functions under Pharmacy Order 2010, the rules made under the Order, and under other legislation. We must\r\n send you some correspondence about your registration by law and you will not be able to unsubscribe.\r\n

    \r\n\r\n

    \r\n Data portability\r\n

    \r\n\r\n

    \r\n Please contact us\r\n if you would like copies of information from myGPhC.\r\n

    \r\n\r\n

    \r\n Automated decisions and profiling\r\n

    \r\n\r\n

    \r\n We do not use automated decision making in any of our applications, revalidation or renewal processes. You must,\r\n however,\r\n submit all the documents we need before we can assess your request. Please read the relevant forms and guidance\r\n carefully.\r\n

    \r\n\r\n

    \r\n We sometimes use personal profiles in our research, in particular to help us assess the impact of our work on\r\n different\r\n groups of people. We do not use profiling to make decisions about individuals.\r\n

    \r\n\r\n

    \r\n
    \r\n Who to contact and more information\r\n
    \r\n \r\n Back to top\r\n \r\n

    \r\n\r\n

    \r\n For questions about your registration or using myGPhC, please contact our contact centre:\r\n

    \r\n\r\n
      \r\n
    • Email: info@pharmacyregulation.org
    • \r\n
    • Phone: 020 3713 8000
    • \r\n
    \r\n\r\n

    \r\n If you have any questions or concerns about your data please contact:\r\n

    \r\n\r\n
      \r\n
    • Data Protection Officer
    • \r\n
    • General Pharmaceutical Council
    • \r\n
    • Level 14
    • \r\n
    • One Cabot Square
    • \r\n
    • London
    • \r\n
    • E14 4QJ
    • \r\n
    \r\n\r\n
      \r\n
    • Email: foi@pharmacyregulation.org
    • \r\n
    • Phone: 020 3713 8000
    • \r\n
    \r\n\r\n

    \r\n If you have joined our mailing list you may unsubscribe using the link in our emails or by contacting\r\n communications@pharmacyregulation.org.\r\n Please note: we must send you some correspondence about your registration by law and you will not be able to\r\n unsubscribe\r\n to those messages.\r\n

    \r\n\r\n

    \r\n You can find out more about your rights under data protection\r\n legislation from the Information Commissioner’s Office. You\r\n also have the right to report a concern to the ICO if\r\n you are unhappy with the way we process your data or deal with your\r\n requests under data protection legislation.\r\n

    \r\n\r\n\r\n
    \r\n\r\n
    ","import { Component, OnInit, ErrorHandler } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from './service/auth.service';\r\nimport { RevalidationService } from './service/revalidation.service';\r\nimport { RevalidationLogic } from '../shared/service/revalidation/revalidationLogic.service';\r\nimport { RenewalService } from './service/renewal.service';\r\nimport { Renewal } from '../renewal/model/Renewal';\r\nimport { Registrant } from '../registration/model/Registrant';\r\nimport { RegistrantStatus } from '../registration/model/RegistrantStatus';\r\nimport { RegistrantType } from '../registration/model/RegistrantType';\r\nimport { LogService } from './service/log.service';\r\nimport { LayoutService } from './service/layout.service';\r\n\r\n@Component({\r\n selector: 'app-reviewer-dashboard',\r\n moduleId: module.id,\r\n templateUrl: './reviewerDashboard.component.html',\r\n styleUrls: ['../style/dashboard.scss'],\r\n providers: [\r\n RevalidationLogic\r\n ]\r\n})\r\nexport class ReviewerDashboardComponent implements OnInit {\r\n\r\n\r\n user;\r\n constructor(private auth: AuthService) {\r\n\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.user = this.auth.user;\r\n }\r\n\r\n\r\n\r\n}\r\n","\r\n
    \r\n

    Home

    \r\n

    \r\n Click on the reviews pane to view reviews assigned to you.\r\n

    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n {{ user.title }} {{ user.forenames }} {{ user.surname }}\r\n \r\n
    \r\n
    \r\n\r\n \r\n Your reviews\r\n\r\n\r\n
    \r\n \r\n\r\n \r\n
    \r\n \r\n
    \r\n View reviews assigned to you\r\n
    \r\n
    \r\n\r\n \r\n\r\n \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 { environment } from '../../../../environments/environment';\r\nimport {AppInsights} from 'applicationinsights-js';\r\n\r\n@Injectable()\r\nexport class AppInsightService {\r\n\r\n private config: Microsoft.ApplicationInsights.IConfig = {\r\n instrumentationKey: environment.appInsights.instrumentationKey\r\n };\r\n constructor() { if (!AppInsights.config) {\r\n AppInsights.downloadAndSetup(this.config);\r\n } }\r\n\r\n logPageView(name?: string, url?: string, properties?: any, measurements?: any, duration?: number) {\r\n AppInsights.trackPageView(name, url, properties, measurements, duration);\r\n }\r\n\r\n logEvent(name: string, properties?: any, measurements?: any) {\r\n AppInsights.trackEvent(name, properties, measurements);\r\n }\r\n\r\n logException(exception: Error, handledAt: string, properties: any, measurements: any, severityLevel: any) {\r\n AppInsights.trackException(exception, handledAt, properties, measurements, severityLevel);\r\n }\r\n}\r\n","\r\nimport {throwError as observableThrowError} from 'rxjs';\r\nimport { ErrorHandler, Injectable, Injector } from '@angular/core';\r\nimport { LocationStrategy, PathLocationStrategy } from '@angular/common';\r\nimport { LogService } from './log.service';\r\nimport * as StackTrace from 'stacktrace-js';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\n\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { ValidationError} from '../model/ValidationError';\r\nimport { HandledError } from '../model/HandledError';\r\n\r\n@Injectable()\r\nexport class CustomErrorHandler implements ErrorHandler {\r\n\r\n constructor(private log: LogService, private locationStrategy: LocationStrategy) { }\r\n\r\n handleServerError(errorResponse: HttpErrorResponse, caught: Observable): Observable {\r\n if ((errorResponse).serverError) { return observableThrowError(errorResponse); } // already handled\r\n let log;\r\n let flag = true;\r\n let validationErrors: Array = [];\r\n const message = errorResponse.message ? errorResponse.message : errorResponse.toString();\r\n const output: HandledError = { status: errorResponse.status };\r\n if (errorResponse.status === 0 || message.indexOf('Uncaught (in promise): 0') > -1) {\r\n this.log.isOffline = true;\r\n } else if (errorResponse.status === 500) {\r\n if (errorResponse.error) {\r\n const error = errorResponse.error;\r\n log = this.log.error(error, errorResponse);\r\n } else {\r\n if ((errorResponse)._body) {\r\n try {\r\n const body = JSON.parse((errorResponse)._body);\r\n log = this.log.error('Internal server error', body);\r\n } catch (e) {\r\n log = this.log.error(`Server responded with 'Internal server error' but no excpetion message was found`, errorResponse);\r\n }\r\n }\r\n }\r\n } else if (errorResponse.status === 404) {\r\n flag = false;\r\n } else if (errorResponse.status === 400) { // Bad request = handle validation error\r\n let modelState;\r\n if (errorResponse.error) {\r\n modelState = errorResponse.error.modelState;\r\n } else if ((errorResponse)._body) {\r\n try {\r\n modelState = JSON.parse((errorResponse)._body).modelState;\r\n } catch (e) {\r\n modelState = undefined;\r\n }\r\n }\r\n if (!modelState) {\r\n if (errorResponse.error && errorResponse.error.message) {\r\n log = this.log.error(errorResponse.error.message, errorResponse);\r\n } else {\r\n try {\r\n const body = JSON.parse((errorResponse)._body);\r\n log = this.log.error(body.message, errorResponse);\r\n output.message = body.message;\r\n flag = false;\r\n } catch (e) {\r\n log = this.log.error('Server responded with \\'Bad request\\' but no error messages were returned', errorResponse);\r\n }\r\n }\r\n } else {\r\n for (const fieldName in modelState) {\r\n if (modelState.hasOwnProperty(fieldName)) {\r\n validationErrors = validationErrors.concat({ property: fieldName.replace('request.', ''), errors: modelState[fieldName]});\r\n }\r\n }\r\n validationErrors = validationErrors.filter(e => e.errors !== null &&\r\n e.errors !== undefined && e.errors.length && e.errors.length > 0);\r\n output.validationErrors = validationErrors;\r\n output.status = 400;\r\n log = this.log.error('Server validation error', validationErrors);\r\n flag = false;\r\n }\r\n } else {\r\n output.status = errorResponse.status;\r\n output.statusText = errorResponse.statusText;\r\n output.message = errorResponse.message;\r\n log = this.log.error(errorResponse.message ||\r\n errorResponse.statusText || errorResponse.error || errorResponse.statusText, errorResponse);\r\n }\r\n\r\n if (flag && log) {\r\n this.log.flag(log);\r\n }\r\n\r\n output.serverError = true;\r\n return observableThrowError(output);\r\n }\r\n\r\n handleError(error) {\r\n if (error.serverError) { return; }\r\n let log;\r\n const message = error.message ? error.message : error.toString();\r\n const chunkLoadFailMessage = /Loading chunk [\\d]+ failed/;\r\n\r\n if (message.indexOf('SyntaxError: Unexpected token < in JSON at position 0') > -1) {\r\n log = this.log.error(`Unable parse response as JSON (maybe the api url is wrong?)`, error);\r\n this.log.flag(log);\r\n return;\r\n }\r\n if (message.indexOf('Uncaught (in promise): 0') > -1) {\r\n this.log.offline(true);\r\n return;\r\n }\r\n if(chunkLoadFailMessage.test(message)) {\r\n window.location.reload();\r\n }\r\n\r\n\r\n if (error.stack) {\r\n log = this.log.error(error.message);\r\n this.log.flag(log);\r\n throw(error);\r\n }\r\n const page = this.locationStrategy instanceof PathLocationStrategy\r\n ? this.locationStrategy.path() : 'unknown url';\r\n\r\n try {\r\n StackTrace.fromError(error).then(stackframes => {\r\n const stacktrace = {\r\n page,\r\n trace: stackframes.filter(sf => sf.fileName.indexOf('src/app') > -1)\r\n };\r\n log = this.log.error(message, stacktrace);\r\n });\r\n } catch (e) {\r\n log = this.log.error('Error getting stack trace', e, message);\r\n }\r\n\r\n this.log.flag(log);\r\n }\r\n\r\n\r\n flag(log, message) {\r\n const noflag = ['user_cancelled', 'interaction_required'];\r\n let flag = true;\r\n noflag.forEach(item => {\r\n if (message.indexOf(item) > -1) {\r\n flag = false;\r\n }\r\n });\r\n if (flag) {\r\n this.log.flag(log);\r\n }\r\n }\r\n}\r\n","import { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { BroadcastService, MsalInterceptor, MsalService } from \"@azure/msal-angular\";\r\nimport { Observable } from \"rxjs\";\r\nimport { AuthService } from \"./auth.service\";\r\n\r\n@Injectable()\r\nexport class MSALInterceptorExtended extends MsalInterceptor implements HttpInterceptor {\r\n\r\n constructor(private authService: AuthService, msalService: MsalService,broadcastService: BroadcastService){\r\n super(msalService, broadcastService)\r\n }\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n if(!this.authService.getUserId() && request.url.indexOf('maintenance-message')) {\r\n return next.handle(request);\r\n }else {\r\n return super.intercept(request, next);\r\n }\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { AuthService } from './auth.service';\r\nimport { LogService } from './log.service';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { RegistrantStatus } from '../../registration/model/RegistrantStatus';\r\nimport { tap, map } from 'rxjs/operators';\r\nimport { AssessmentRegistration } from '../../prereg/assessment-registration/model/AssessmentRegistration';\r\nimport { AssessmentRegistrationStep } from '../../prereg/assessment-registration/model/AssessmentRegistrationStep';\r\nimport { FileUpload } from '../../shared/model/FileUpload';\r\nimport { UploadType } from '../../shared/model/UploadType';\r\nimport { ServiceBase } from './service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n\r\n@Injectable()\r\nexport class AssessmentRegistrationService extends ServiceBase {\r\n application: AssessmentRegistration;\r\n tutors;\r\n\r\n constructor(\r\n http: HttpClient,\r\n auth: AuthService,\r\n log: LogService,\r\n errorHandler: CustomErrorHandler\r\n ) {\r\n super(http, auth, log, errorHandler);\r\n }\r\n\r\n getAssessmentRegistrationApplication(\r\n registrantStatus: RegistrantStatus\r\n ): Observable {\r\n return super.get('v1.0/assessmentregistrationform').pipe(\r\n map(data => {\r\n try {\r\n this.application = new AssessmentRegistration(data, registrantStatus);\r\n } catch (e) {\r\n this.log.error('Error loading application', e);\r\n }\r\n return this.application;\r\n })\r\n );\r\n }\r\n\r\n reSubmitApplication(formId) {\r\n return super.post('v1.0/assessmentregistrationform/resubmit', { formId });\r\n }\r\n\r\n setStep(formId, step: AssessmentRegistrationStep) {\r\n return super.post('v1.0/assessmentregistrationform/resetstep', { formId, step });\r\n }\r\n\r\n saveApplicationPayment() {\r\n return super.post('v1.0/payment/initiate', { paymentType: 6 });\r\n }\r\n\r\n saveAssessmentRegistrationApplication(\r\n application: AssessmentRegistration\r\n ): Observable {\r\n const payload: any = Object.assign({}, application);\r\n payload.form = application.activeForm;\r\n delete payload.forms;\r\n delete payload.activeForm;\r\n return super.post('v1.0/assessmentregistrationform', payload).pipe(\r\n tap(response => {\r\n application.activeForm.id = response.formId;\r\n })\r\n );\r\n }\r\n getSupportingDocument(file: FileUpload) {\r\n const url = `v1.0/${UploadType.AssessmentRegistrationDocuments}/files/${file.fileId}`;\r\n return this.getFileWithToken(url);\r\n }\r\n\r\n getAssessmentRegistrationSupportingDocs(file: FileUpload) {\r\n const url = `v1.0/${UploadType.AssessmentRegistrationDocuments}/files/${file.fileId}`;\r\n return this.getFileWithToken(url);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AuthService } from './auth.service';\r\nimport { LogService } from './log.service';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { ApplicationStatus } from '../../prereg/model/ApplicationStatus';\r\nimport { RegistrantStatus } from '../../registration/model/RegistrantStatus';\r\nimport { FileUpload } from '../../shared/model/FileUpload';\r\nimport { UploadType } from '../../shared/model/UploadType';\r\nimport { tap, map } from 'rxjs/operators';\r\nimport { of as observableOf, from as observableFrom, of } from 'rxjs';\r\nimport { TechnicianApplication } from '../../technician/model/TechnicianApplication';\r\nimport { AssessmentReport } from '../../prereg/assessment-report/models/AssessmentReport';\r\nimport { FormTemplate } from '../../dynamic/model/FormTemplate';\r\nimport { AssessmentReportStep } from '../../prereg/assessment-report/models/AssessmentReportStep';\r\nimport { ServiceBase } from './service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable()\r\nexport class AssessmentReportService extends ServiceBase {\r\n application: any;\r\n tutors;\r\n templateGroup;\r\n\r\n constructor(\r\n http: HttpClient,\r\n auth: AuthService,\r\n log: LogService,\r\n errorHandler: CustomErrorHandler\r\n ) {\r\n super(http, auth, log, errorHandler);\r\n }\r\n\r\n getAssessmentReportApplication(\r\n registrantStatus: RegistrantStatus\r\n ): Observable {\r\n return super.get('v1.0/progressreportform').pipe(\r\n map(data => {\r\n try {\r\n // console.log({ backendData: data });\r\n this.application = new AssessmentReport(data, registrantStatus);\r\n } catch (e) {\r\n this.log.error('Error loading application', e);\r\n }\r\n return this.application;\r\n })\r\n );\r\n }\r\n\r\n getTutors(): Observable {\r\n if (this.tutors) {\r\n return observableOf(this.tutors);\r\n } else {\r\n return super.get(`v1.0/progressreportform`).pipe(\r\n tap(result => {\r\n this.tutors = result;\r\n })\r\n );\r\n }\r\n }\r\n\r\n getDeclarationFormTemplates(): Observable> {\r\n if (this.templateGroup) {\r\n return observableOf(this.templateGroup);\r\n } else {\r\n return super.get(`v1.0/forms?group=5`)\r\n .pipe(map(data => {\r\n this.templateGroup = data;\r\n return this.templateGroup;\r\n }));\r\n }\r\n }\r\n\r\n cancelCountersignature(formId) {\r\n return super.post('v1.0/progressreportform/update', {\r\n formId,\r\n status: ApplicationStatus.InProgress\r\n });\r\n }\r\n\r\n reSubmitApplication(formId) {\r\n return super.post('v1.0/progressreportform/resubmit', { formId });\r\n }\r\n\r\n submitProgressReportForm(formId) {\r\n return super.post('v1.0/progressreportform/trainee/feedback', formId);\r\n }\r\n\r\n setStep(formId, step: AssessmentReportStep) {\r\n return super.post('v1.0/progressreportform/resetstep', { formId, step });\r\n }\r\n\r\n saveAssessmentReportApplication(\r\n application: AssessmentReport\r\n ): Observable {\r\n const payload: any = Object.assign({}, application);\r\n payload.form = application.activeForm;\r\n delete payload.forms;\r\n delete payload.activeForm;\r\n delete payload.tutoredBy;\r\n delete payload.training;\r\n return super.post('v1.0/progressreportform', payload).pipe(\r\n tap(response => {\r\n application.activeForm.id = response.formId;\r\n })\r\n );\r\n }\r\n\r\n sendToCountersigner(registrationNumber: string) {\r\n return super.post(\r\n `v1.0/progressreportform/countersigner/${registrationNumber}`,\r\n {}\r\n );\r\n }\r\n\r\n getCountersignerForm(countersignatureId): Observable {\r\n return super\r\n .get(`v1.0/countersigner/registrationform/${countersignatureId}`)\r\n .pipe(map(data => new AssessmentReport(data, null)));\r\n }\r\n\r\n getTechnicianCountersignerForm(countersignatureId) {\r\n return super\r\n .get(`v1.0/countersigner/registrationform/${countersignatureId}`)\r\n .pipe(map(data => new TechnicianApplication(data, null)));\r\n }\r\n\r\n submitCountersignatureOutcome(payload) {\r\n return super.post(\r\n 'v1.0/progressreportform/countersigner/countersignatures/decision',\r\n payload\r\n );\r\n }\r\n\r\n getCountersignatureRequests(pharmacistRegNumber: string) {\r\n return super.get('v1.0/countersigner/countersignatures');\r\n }\r\n\r\n recallFromCountersigner() {\r\n return super.delete(`v1.0/progressreportform/countersigner/recall`);\r\n }\r\n\r\n getSupportingDocument(file: FileUpload) {\r\n const url = `v1.0/${UploadType.RegistrationFormSupportingDocuments}/files/${file.fileId}`;\r\n return this.getFileWithToken(url);\r\n }\r\n\r\n getProgressReportSupportingDocs(file: FileUpload) {\r\n const url = `v1.0/${UploadType.ProgressReportSupportingDocuments}/files/${file.fileId}`;\r\n console.log({ url });\r\n return this.getFileWithToken(url);\r\n }\r\n}\r\n","import { Injectable, EventEmitter, NgZone } from '@angular/core';\r\nimport { Route, Router } from '@angular/router';\r\nimport { environment } from '../../../environments/environment';\r\nimport { Headers, RequestOptions } from '@angular/http';\r\n\r\nimport { LogService } from './log.service';\r\nimport { User } from '../../account/model/User';\r\nimport { LoggedInState } from '../../account/model/LoggedInState';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { UserActivity } from '../model/UserActivity';\r\nimport { map } from 'rxjs/operators';\r\nimport { tokenRequest, apiConfig } from '../../app-config';\r\nimport { MsalService, BroadcastService } from '@azure/msal-angular';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\ndeclare function require(moduleName: string): any;\r\nconst sjcl = require('sjcl');\r\n\r\nfunction inIframe() {\r\n try {\r\n return window.self !== window.top;\r\n } catch (e) {\r\n return true;\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class AuthService {\r\n\r\n // private msalObj: any;\r\n public userId: any;\r\n public token: any;\r\n public tokenExpires = 0;\r\n public loginRedirect: string;\r\n public user: User;\r\n public isLoggedIn: any;\r\n public loggedInState$ = new BehaviorSubject(LoggedInState.checking);\r\n\r\n public get loggedInState() {\r\n return this.loggedInState$.value;\r\n }\r\n idTokenReceivedInCallback;\r\n expiryTimer: any;\r\n encpwd = '&12gUytaJ07a';\r\n\r\n public forgotPasswordRedirectUrl = `${environment.sso.pwdreset}&client_id=${environment.sso.clientID}&nonce=defaultNonce&` +\r\n `redirect_uri=${environment.webRoot}&scope=openid&response_type=id_token&prompt=login`;\r\n\r\n constructor(private http: HttpClient, private log: LogService, private router: Router,\r\n private errorHandler: CustomErrorHandler, private zone: NgZone,\r\n private broadcastService: BroadcastService, private msalService: MsalService) {\r\n }\r\n\r\n isCallback() {\r\n return this.msalService.isCallback(window.location.hash);\r\n }\r\n\r\n public forgotPassword() {\r\n this.setState(LoggedInState.forgotPassword);\r\n setTimeout(() => {\r\n this.zone.runOutsideAngular(() => {\r\n window.location.href = this.forgotPasswordRedirectUrl;\r\n });\r\n });\r\n }\r\n\r\n\r\n loggerCallback(level, log, containsPii) {\r\n\r\n let levelString = '';\r\n switch (level) {\r\n case 0:\r\n levelString = 'Error';\r\n break;\r\n case 1:\r\n levelString = 'Warning';\r\n break;\r\n case 2:\r\n levelString = 'Info';\r\n break;\r\n case 3: levelString = 'Verbose';\r\n }\r\n\r\n if (level === 0) {\r\n this.log.error(log);\r\n }\r\n if (level === 1) {\r\n this.log.warn(log);\r\n }\r\n if (level === 2 || level === 3) {\r\n this.log.info(log);\r\n }\r\n\r\n if (level < 2) {\r\n try {\r\n this.log.postActivity(UserActivity.Unknown, 'msal loggerCallback',\r\n {\r\n msalUserId: this.userId,\r\n level: levelString,\r\n log\r\n }).subscribe();\r\n } catch (e) {\r\n }\r\n }\r\n }\r\n\r\n tokenReceivedCallback(errorDesc: any, token: any, error: any, tokenType: any) {\r\n if (error || errorDesc) {\r\n if (errorDesc && errorDesc.indexOf('AADB2C90118') > -1) {\r\n // forgot password\r\n this.forgotPassword();\r\n } else {\r\n try {\r\n this.log.postActivity(UserActivity.Unknown, 'msal tokenReceivedCallback',\r\n {\r\n msalUserId: this.userId,\r\n errorDesc,\r\n token,\r\n error,\r\n tokenType\r\n }).subscribe();\r\n } catch (e) {\r\n }\r\n }\r\n this.log.error('token received callback', { errorDesc, token, error, tokenType });\r\n }\r\n else {\r\n this.log.info('token received callback', { token, tokenType });\r\n }\r\n if (token) {\r\n if (tokenType === 'id_token') {\r\n this.idTokenReceivedInCallback = token;\r\n this.log.info('Set idTokenReceivedInCallback', token);\r\n }\r\n else {\r\n this.log.info('Token of type other than id_token received in callback', { token, tokenType });\r\n }\r\n }\r\n }\r\n\r\n public getUserId() {\r\n this.userId = this.msalService.getAccount();\r\n if (this.userId) {\r\n this.log.info('Got msal userId', this.userId);\r\n } else {\r\n this.log.info('Msal userid is null');\r\n }\r\n return this.userId;\r\n }\r\n\r\n setState(state: LoggedInState) {\r\n this.loggedInState$.next(state);\r\n this.log.info(`Logged in state change: ${LoggedInState[this.loggedInState]}`);\r\n }\r\n\r\n updateCachedAddress(address) {\r\n const user = this.loadUserFromLocalStorage();\r\n user.address = address;\r\n this.saveUserToLocalStorage(user);\r\n this.user = new User(user);\r\n }\r\n\r\n updateCachedContact(contact) {\r\n const user = this.loadUserFromLocalStorage();\r\n user.contact = contact;\r\n this.saveUserToLocalStorage(user);\r\n this.user = new User(user);\r\n }\r\n\r\n updateCachedPreference(preference) {\r\n const user = this.loadUserFromLocalStorage();\r\n user.preference = preference;\r\n this.saveUserToLocalStorage(user);\r\n this.user = new User(user);\r\n }\r\n\r\n updateCachedHasCheckedRegistrationDetails() {\r\n const user = this.loadUserFromLocalStorage();\r\n user.hasCheckedRegistration = true;\r\n this.saveUserToLocalStorage(user);\r\n this.user = new User(user);\r\n }\r\n\r\n saveUserToLocalStorage(user) {\r\n const encrypted = sjcl.encrypt(this.encpwd, JSON.stringify(user));\r\n localStorage.setItem('user', encrypted);\r\n }\r\n\r\n loadUserFromLocalStorage(): User {\r\n const data = localStorage.getItem('user');\r\n const decrypted = sjcl.decrypt(this.encpwd, data);\r\n return JSON.parse(decrypted);\r\n }\r\n\r\n getAccount(): Promise {\r\n return new Promise((resolve, reject) => {\r\n this.setState(LoggedInState.loadingUser);\r\n const endpoint = `${apiConfig.webApi}/v1.0/user`;\r\n const headers = { 'Authorization': `Bearer ${this.token}` };\r\n\r\n this.http.get(endpoint, {headers})\r\n .catch((err, caught) => {\r\n if (err.status === 302) {\r\n this.log.info('302 returned from get user (authorisation required)');\r\n return;\r\n }\r\n reject(err);\r\n return this.errorHandler.handleServerError(err, caught);\r\n })\r\n .subscribe(response => {\r\n const user = response.data;\r\n this.saveUserToLocalStorage(user);\r\n this.user = new User(user);\r\n resolve(this.user);\r\n });\r\n });\r\n }\r\n\r\n confirmEmail(token: string) {\r\n return this.http.post(`${apiConfig.webApi}/v1.0/user/email/confirm`, { token })\r\n .pipe(map(response => {\r\n if (response) {\r\n if (response && response['data']) {\r\n return response['data'];\r\n } else {\r\n return response;\r\n }\r\n } else {\r\n return null;\r\n }\r\n }))\r\n .catch(this.handleError.bind(this));\r\n }\r\n\r\n private handleError(err, caught) {\r\n return this.errorHandler.handleServerError(err, caught);\r\n }\r\n\r\n public login() {\r\n if (this.loggedInState === LoggedInState.loginRedirect) {\r\n return;\r\n }\r\n this.setState(LoggedInState.loginRedirect);\r\n this.msalService.loginRedirect();\r\n\r\n }\r\n\r\n public logout() {\r\n this.deleteToken();\r\n return this.msalService.logout();\r\n\r\n }\r\n\r\n\r\n\r\n setToken(token) {\r\n this.token = token;\r\n this.tokenExpires = new Date().getTime() + (60000 * 55);\r\n localStorage.setItem('token', this.token);\r\n localStorage.setItem('tokenExpires', this.tokenExpires.toString());\r\n }\r\n\r\n deleteToken() {\r\n this.token = undefined;\r\n this.tokenExpires = 0;\r\n localStorage.removeItem('token');\r\n localStorage.removeItem('tokenExpires');\r\n localStorage.removeItem('user');\r\n }\r\n\r\n public checkLoggedInState(callGetUser = true) {\r\n\r\n this.setState(LoggedInState.checking);\r\n\r\n return new Promise((resolve, reject) => {\r\n if (inIframe()) {\r\n resolve(true);\r\n }\r\n if (!callGetUser || this.getUserId()) {\r\n this.tryAcquireTokenSilently()\r\n .then(\r\n () => {\r\n this.getAccount().then(() => {\r\n this.setState(LoggedInState.loggedIn);\r\n\r\n resolve(true);\r\n }, err => { reject(err); });\r\n },\r\n error => {\r\n this.setState(LoggedInState.acquireTokenFail);\r\n resolve(false);\r\n }).catch(error => {\r\n reject(error);\r\n });\r\n } else {\r\n\r\n // try again in case we have an id token but msal not ready\r\n if (this.idTokenReceivedInCallback) {\r\n this.log.info('authService.checkLoggedInState(): id token received but msal.getUserId returned null, trying again... ');\r\n setTimeout(() => {\r\n this.userId = this.idTokenReceivedInCallback;\r\n this.idTokenReceivedInCallback = undefined;\r\n this.checkLoggedInState(false).then(() => {\r\n this.log.info('second call to authService.checkLoggedInState() succeeded !');\r\n resolve(true);\r\n },\r\n () => {\r\n this.log.info('second call to authService.checkLoggedInState() failed !');\r\n resolve(false);\r\n });\r\n }, 1500);\r\n } else {\r\n this.setState(LoggedInState.loggedOut);\r\n resolve(false);\r\n }\r\n\r\n }\r\n });\r\n }\r\n\r\n public loggedInPolCheckTimeout() {\r\n setTimeout(this.loggedInPolCheck.bind(this), 1800000);\r\n }\r\n\r\n public loggedInPolCheck() {\r\n if (this.getUserId()) {\r\n this.tryAcquireTokenSilently()\r\n .then(\r\n () => {\r\n this.setState(LoggedInState.loggedIn);\r\n this.log.info('Acquire token silently succeeded');\r\n this.loggedInPolCheckTimeout();\r\n },\r\n error => {\r\n this.log.info('Acquire token silently failed');\r\n this.setLoggedOut();\r\n });\r\n } else {\r\n this.log.info('Get user id returned false');\r\n this.setLoggedOut();\r\n }\r\n }\r\n\r\n private setLoggedOut() {\r\n this.log.loggedOut();\r\n // this.setState(LoggedInState.loggedOut);\r\n setTimeout(this.logout.bind(this), 3000);\r\n }\r\n\r\n public getCachedToken() {\r\n\r\n if (!this.tokenExpires) {\r\n this.tokenExpires = parseInt(localStorage.getItem('tokenExpires'), 10);\r\n }\r\n\r\n if (this.tokenExpires > new Date().getTime()) {\r\n if (!this.token) {\r\n this.token = localStorage.getItem('token');\r\n }\r\n return this.token;\r\n }\r\n return null;\r\n }\r\n\r\n public redirectToActivation() {\r\n this.router.navigate(['/account/activate']);\r\n }\r\n\r\n public redirectToConfirmation() {\r\n this.router.navigate(['/account/confirm']);\r\n }\r\n\r\n public enter() {\r\n if (inIframe()) {\r\n return;\r\n }\r\n if (this.user) {\r\n if (this.loginRedirect && this.loginRedirect.toLowerCase() !== '/signin') {\r\n this.router.navigate([this.loginRedirect]);\r\n this.loginRedirect = undefined;\r\n } else if (window.location.pathname === '/' ||\r\n window.location.pathname === '' ||\r\n window.location.pathname.toLowerCase() === '/signin') {\r\n this.router.navigate(['/home']);\r\n this.loggedInPolCheckTimeout();\r\n }\r\n } else if (window.location.pathname === '/' || window.location.pathname === '') {\r\n this.router.navigate(['/signin']);\r\n }\r\n }\r\n\r\n public getToken() {\r\n return new Promise((resolve, reject) => {\r\n const cachedToken = this.getCachedToken();\r\n if (cachedToken) {\r\n this.log.info(`Using cached token`);\r\n resolve(cachedToken);\r\n return;\r\n } else {\r\n this.getTokenFromRemote().then(token => resolve(token), err => reject(err));\r\n }\r\n });\r\n }\r\n\r\n public tryAcquireTokenSilently() {\r\n this.setState(LoggedInState.attemptAcquireTokenSilently);\r\n tokenRequest.account = this.userId;\r\n return new Promise((resolve, reject) => {\r\n this.msalService.acquireTokenSilent(tokenRequest)\r\n .then(token => {\r\n this.setToken(token.accessToken);\r\n this.log.info('Acquired token silently', token);\r\n resolve(token);\r\n\r\n }, error => {\r\n this.log.info('Unable to acquire token silently', error);\r\n try {\r\n this.log.postActivity(UserActivity.Unknown, 'msal acquireTokenSilent - failed',\r\n {\r\n msalUserId: this.userId,\r\n error\r\n }).subscribe();\r\n } catch (e) {\r\n }\r\n reject(error);\r\n });\r\n });\r\n\r\n }\r\n\r\n getTokenFromRemote() {\r\n return new Promise((resolve, reject) => {\r\n this.setState(LoggedInState.attemptAcquireTokenSilently);\r\n this.tryAcquireTokenSilently()\r\n .then(token => {\r\n this.setState(LoggedInState.tokenAcquired);\r\n resolve(token);\r\n },\r\n error => {\r\n this.logout();\r\n this.deleteToken();\r\n this.router.navigate(['/signin']);\r\n });\r\n });\r\n\r\n }\r\n\r\n ngOnDestroy() {\r\n\r\n this.msalService.getAccount();\r\n this.broadcastService.getMSALSubject().next(1);\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { BehaviorSubject, Observable, of as observableOf, } from 'rxjs';\r\nimport { map, tap } from \"rxjs/operators\";\r\nimport { FormTemplate } from \"../../../app/dynamic/model/FormTemplate\";\r\nimport { CCPSApplication } from \"../../registration/ccps/model/ccpsApplication\";\r\nimport { RegistrantStatus } from \"../../registration/model/RegistrantStatus\";\r\nimport { PaymentType } from \"../model/paymentType\";\r\nimport { AuthService } from \"./auth.service\";\r\nimport { CustomErrorHandler } from \"./CustomErrorHandler\";\r\nimport { LogService } from \"./log.service\";\r\nimport { CCPSApplicationStep } from \"../../../app/registration/ccps/model/ccpsApplicationStep\";\r\nimport { RegulatoryBodies } from \"../../registration/ccps/model/regulatoryBodies\";\r\nimport { Qualification, RegistrationRoute } from \"../../registration/ccps/model/CCPSDetails\";\r\nimport { FileUpload } from \"../../shared/model/FileUpload\";\r\nimport { UploadType } from \"../../shared/model/UploadType\";\r\nimport { ServiceBase } from \"./service.base\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { eeaDirectiveRoute } from \"../../registration/ccps/model/initialPharmacyQualificationDetail\";\r\n\r\nconst mockApplication = {\r\n regulator : 'regulator',\r\n form: {\r\n formStatus: 1,\r\n step: 1,\r\n }\r\n};\r\n\r\n@Injectable()\r\nexport class CCPSService extends ServiceBase{\r\n\r\n application: CCPSApplication;\r\n templateGroup: any;\r\n EEARegulatorSelected: boolean;\r\n constructor(http: HttpClient, auth: AuthService, log: LogService, errorHandler: CustomErrorHandler) {\r\n super(http, auth, log, errorHandler);\r\n }\r\n\r\n getApplication(registrantStatus: RegistrantStatus, formId: number) {\r\n // return of(new CCPSApplication(mockApplication, registrantStatus));\r\n let url = formId ? 'v1.0/professionalstandingapp/'+formId : 'v1.0/professionalstandingapp';\r\n return super.get(url).pipe(map(data => {\r\n try{\r\n this.application = new CCPSApplication(data, registrantStatus);\r\n } catch(e) {\r\n this.log.error('Error loading the application', e);\r\n }\r\n return this.application;\r\n }))\r\n }\r\n\r\n setStep(formId, step: CCPSApplicationStep) {\r\n return super.post('v1.0/professionalstandingapp/resetstep', { formId, step });\r\n }\r\n\r\n setIsEEARegulatorSelected(value: boolean){\r\n this.EEARegulatorSelected = value;\r\n }\r\n\r\n saveApplication(application: CCPSApplication) {\r\n const payload: any = Object.assign({}, application);\r\n payload.form = application.activeForm;\r\n payload.form.initialRegistrantQualificationDetail.registrationRoute = application.personalDetails.registration.registrationRoute;\r\n payload.form.personalDetails = application.personalDetails;\r\n if(payload.form.initialRegistrantQualificationDetail.eeaPharmacistQualificationDetail?.eeaDirectiveRoute) {\r\n if(typeof(payload.form.initialRegistrantQualificationDetail.eeaPharmacistQualificationDetail.eeaDirectiveRoute) === 'string') {\r\n payload.form.initialRegistrantQualificationDetail.eeaPharmacistQualificationDetail.eeaDirectiveRoute = eeaDirectiveRoute[payload.form.initialRegistrantQualificationDetail.eeaPharmacistQualificationDetail.eeaDirectiveRoute];\r\n }\r\n }\r\n delete payload.forms;\r\n delete payload.activeForm;\r\n delete payload.personalDetails;\r\n delete payload.countries;\r\n delete payload.regulatoryBodies;\r\n delete payload.certProfessionalStandingApplicationFee;\r\n \r\n return super.post('v1.0/professionalstandingapp', payload).pipe(tap(response => {\r\n application.activeForm.id = response.formId;\r\n localStorage.setItem('ccpsFormActive', JSON.stringify(response.formId));\r\n }\r\n ));\r\n }\r\n\r\n getDeclarationFormTemplates(): Observable> {\r\n if (this.templateGroup) {\r\n return observableOf(this.templateGroup);\r\n } else {\r\n return super.get(`v1.0/forms?type=20`)\r\n .pipe(map(data => {\r\n this.templateGroup = data;\r\n return this.templateGroup;\r\n }));\r\n }\r\n }\r\n \r\n saveApplicationPayment() {\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.CertOfProfessionalStandingApplicationFee )});\r\n }\r\n\r\n getQualificationsList(){\r\n return super.get('v1.0/qualification');\r\n }\r\n\r\n getRegulatorSelected(): RegulatoryBodies {\r\n let index = 0, regulatoryBody;\r\n while (index < this.application.regulatoryBodies.length) {\r\n if (this.application.regulatoryBodies[index].country === this.application.activeForm.professionalStandingDetail.country) {\r\n regulatoryBody = this.application.regulatoryBodies[index];\r\n break;\r\n }\r\n index++;\r\n }\r\n return regulatoryBody;\r\n }\r\n\r\n getDoc(file: FileUpload) {\r\n const url = `v1.0/${UploadType.ProfessionalStandingSupportingDocuments}/files/${file.fileId}`;\r\n return this.getFileWithToken(url);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ServiceBase } from './service.base';\r\nimport { AuthService } from './auth.service';\r\nimport { LogService } from './log.service';\r\nimport { RenewalStatus } from '../../renewal/model/RenewalStatus';\r\nimport { CollectionMethod } from '../../payment/model/CollectionMethod';\r\nimport { RenewalPaymentMethod } from '../../renewal/model/RenewalPaymentMethod';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nimport { ApplicationStatus } from '../../prereg/model/ApplicationStatus';\r\nimport { environment } from '../../../environments/environment';\r\nimport { map, tap } from 'rxjs/operators';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable()\r\nexport class DevService extends ServiceBase {\r\n\r\n constructor(http: HttpClient, auth: AuthService, log: LogService, errorHandler: CustomErrorHandler) {\r\n super(http, auth, log, errorHandler);\r\n }\r\n\r\n resetRevalidation() {\r\n return super.get('v1.0/tester/revalidation/reset');\r\n }\r\n\r\n resetReview(id) {\r\n return super.get(`v1.0/tester/reviews/${id}/reset`);\r\n }\r\n\r\n setRenewalStatus(status: RenewalStatus) {\r\n return super.get(`v1.0/tester/renewal/status?status=${status}`);\r\n }\r\n\r\n getApplicationStatus(formId) {\r\n return this.http.get(`${environment.api.admin}/v1.0/admin/testing/registrationform/${formId}`)\r\n .pipe(map((response: any) => {\r\n const json = response.json();\r\n if (json) {\r\n return json.data;\r\n } else {\r\n return null;\r\n }\r\n }));\r\n\r\n }\r\n\r\n setApplicationStatus(formId, paymentDate: string, status: ApplicationStatus) {\r\n return this.http.post(`${environment.api.admin}/v1.0/admin/testing/registrationform`, { formId, status, paymentDate })\r\n .pipe(map(response => {\r\n const json = response;\r\n if (json) {\r\n return json['data'];\r\n } else {\r\n return null;\r\n }\r\n }));\r\n }\r\n\r\n getAssessmentApplicationStatus(formId) {\r\n return this.http.get(`${environment.api.admin}/v1.0/admin/testing/progressreportform/${formId}`)\r\n .pipe(map((response: any) => {\r\n const json = response.json();\r\n if (json) {\r\n return json.data;\r\n } else {\r\n return null;\r\n }\r\n }));\r\n\r\n }\r\n\r\n setAssessmentApplicationStatus(formId, paymentDate: string, status: ApplicationStatus) {\r\n return this.http.post(`${environment.api.admin}/v1.0/admin/testing/progressreportform`, { formId, status, paymentDate })\r\n .pipe(map(response => {\r\n const json = response;\r\n if (json) {\r\n return json['data'];\r\n } else {\r\n return null;\r\n }\r\n }));\r\n }\r\n\r\n\r\n setRevalidationSubmitDate() {\r\n return super.get(`v1.0/registrant/revalidation/earlier`);\r\n }\r\n\r\n setPaymentMethod(renewalPaymentMethod: RenewalPaymentMethod) {\r\n /*\r\n let paymentMethod: PaymentMethod;\r\n let quarterly = false;\r\n switch (+renewalPaymentMethod) {\r\n case RenewalPaymentMethod.PaymentCard:\r\n paymentMethod = PaymentMethod.Card;\r\n break;\r\n case RenewalPaymentMethod.DirectDebitAnnual:\r\n paymentMethod = PaymentMethod.DirectDebit;\r\n quarterly = false;\r\n break;\r\n case RenewalPaymentMethod.DirectDebitQuarterly:\r\n paymentMethod = PaymentMethod.DirectDebit;\r\n quarterly = true;\r\n }\r\n\r\n let url = `v1.0/tester/renewal/paymentmethod?paymentMethod=${paymentMethod}`;\r\n if (paymentMethod === PaymentMethod.DirectDebit) {\r\n url += `&quarterly=${quarterly}`;\r\n }\r\n return super.get(url);\r\n\r\n */\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AuthService } from './auth.service';\r\nimport { LogService } from './log.service';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { RegistrantStatus } from '../../registration/model/RegistrantStatus';\r\nimport { tap, map } from 'rxjs/operators';\r\nimport { of as observableOf, from as observableFrom, of } from 'rxjs';\r\nimport { FinalDeclaration } from '../../prereg/final-declaration/model/FinalDeclaration';\r\nimport { FinalDeclarationStep } from '../../prereg/final-declaration/model/FinalDeclarationStep';\r\nimport { ApplicationStatus } from '../../prereg/model/ApplicationStatus';\r\nimport { FormTemplate } from '../../dynamic/model/FormTemplate';\r\nimport { ServiceBase } from './service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n\r\n@Injectable()\r\nexport class FinalDeclarationService extends ServiceBase {\r\n application: FinalDeclaration;\r\n tutors;\r\n templateGroup;\r\n\r\n constructor(\r\n http: HttpClient,\r\n auth: AuthService,\r\n log: LogService,\r\n errorHandler: CustomErrorHandler\r\n ) {\r\n super(http, auth, log, errorHandler);\r\n }\r\n\r\n getFinalDeclarationApplication(\r\n registrantStatus: RegistrantStatus\r\n ): Observable {\r\n return super.get('v1.0/finaldeclarationform').pipe(\r\n map(data => {\r\n try {\r\n this.application = new FinalDeclaration(data, registrantStatus);\r\n } catch (e) {\r\n this.log.error('Error loading application', e);\r\n }\r\n return this.application;\r\n })\r\n );\r\n }\r\n\r\n getTutors(): Observable {\r\n if (this.tutors) {\r\n return observableOf(this.tutors);\r\n } else {\r\n return super.get(`v1.0/finaldeclarationform`).pipe(\r\n tap(result => {\r\n this.tutors = result;\r\n console.log(result);\r\n })\r\n );\r\n }\r\n }\r\n\r\n setStep(formId, step: FinalDeclarationStep) {\r\n return super.post('v1.0/finaldeclarationform/resetstep', { formId, step });\r\n }\r\n\r\n saveFinalDeclarationApplication(\r\n application: FinalDeclaration\r\n ): Observable {\r\n const payload: any = Object.assign({}, application);\r\n payload.form = application.activeForm;\r\n delete payload.forms;\r\n delete payload.activeForm;\r\n delete payload.tutoredBy;\r\n delete payload.training;\r\n return super.post('v1.0/finaldeclarationform', payload).pipe(\r\n tap(response => {\r\n application.activeForm.id = response.formId;\r\n })\r\n );\r\n }\r\n\r\n sendToCountersigner(registrationNumber: string) {\r\n return super.post(\r\n `v1.0/finaldeclarationform/countersigner/${registrationNumber}`,\r\n {}\r\n );\r\n }\r\n\r\n recallFromCountersigner() {\r\n return super.delete(`v1.0/finaldeclarationform/countersigner/recall`);\r\n }\r\n\r\n getCountersignerForm(countersignatureId): Observable {\r\n return super\r\n .get(`v1.0/countersigner/registrationform/${countersignatureId}`)\r\n .pipe(map(data => new FinalDeclaration(data, null)));\r\n }\r\n\r\n cancelCountersignature(formId) {\r\n return super.post('v1.0/registrationform/update',\r\n { formId, status: ApplicationStatus.InProgress });\r\n }\r\n submitCountersignatureOutcome(payload) {\r\n return super.post(\r\n 'v1.0/finaldeclarationform/countersigner/countersignatures/decision',\r\n payload\r\n );\r\n }\r\n getDeclarationFormTemplates(): Observable> {\r\n if (this.templateGroup) {\r\n return observableOf(this.templateGroup);\r\n } else {\r\n return super.get(`v1.0/forms?group=6`)\r\n .pipe(map(data => {\r\n this.templateGroup = data;\r\n return this.templateGroup;\r\n }));\r\n }\r\n }\r\n submitFinalDeclarationForm(formId) {\r\n return super.post('v1.0/finaldeclarationform/trainee/feedback', formId);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, of } from 'rxjs';\r\nimport { map, tap } from 'rxjs/operators';\r\nimport { IndependentPrescriberApplication } from '../../registration/independent-precriber/model/IndependentPrescriberApplication';\r\nimport { AuthService } from './auth.service';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nimport { LogService } from './log.service';\r\nimport { RegistrantStatus } from '../../registration/model/RegistrantStatus';\r\nimport { IndependentPrescriberApplicationStep } from '../../registration/independent-precriber/model/IndependentPrescriberApplicationStep';\r\nimport { IndependentPrescriberData } from '../../registration/model/IndependentPrescriberData';\r\nimport { FileUpload } from '../../shared/model/FileUpload';\r\nimport { UploadType } from '../../shared/model/UploadType';\r\nimport { PaymentType } from '../model/paymentType';\r\nimport { CurrentApplicationService } from './prereg/currentApplication.service';\r\nimport { ServiceBase } from './service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nconst mockApplication = {\r\n courseProvider: 'ABC',\r\n dateAwarded: new Date('08-30-2020'),\r\n clinicalSpecialities: 'Pharma ',\r\n isPrescriberRegistered: false,\r\n prescriberMentorName: 'Test Mentor Name',\r\n registrationNumber: 2902901,\r\n UKregulatoryBody: 'Pharm GPhC',\r\n documents: [],\r\n activeForm: {\r\n step: 1,\r\n declaration: {\r\n isQ1Confirmed: true,\r\n isQ2Confirmed: false,\r\n isQ3Confirmed: false,\r\n isQ4Confirmed: true,\r\n isQ5Confirmed: false\r\n }\r\n\r\n },\r\n mentorDetails: [\r\n {\r\n 'tutorGPhCId': 'b1875ac5-7aaf-e411-80e6-005056851bfe',\r\n 'name': 'Mr Test Tutor 1',\r\n 'registrationNumber': '2044541',\r\n 'startDate': '2019-09-19T00:00:00',\r\n 'endDate': '2020-09-16T00:00:00'\r\n }\r\n ],\r\n forms: [\r\n {\r\n 'countersignatures': [],\r\n 'id': 'xyz',\r\n 'formStatus': 4,\r\n 'step': 1,\r\n 'declaration': {\r\n 'isQ1Confirmed': true,\r\n 'isQ2Confirmed': false,\r\n 'isQ3Confirmed': false,\r\n 'isQ4Confirmed': true,\r\n 'isQ5Confirmed': false\r\n }\r\n }\r\n ],\r\n equalityDiversity: {\r\n ethnicity: 1,\r\n ethnicityOther: 'asd',\r\n nationality: 2,\r\n religion: 1,\r\n religionOther: 'dfg',\r\n disabled: 1,\r\n disabilityDetails: 'str',\r\n gender: 3,\r\n sexualOrientation: 2\r\n },\r\n registrant: {\r\n title: 'mr',\r\n forenames: 'str',\r\n surname: 'ing'\r\n },\r\n applicationFee: 250\r\n};\r\n\r\n@Injectable()\r\nexport class IndependentPrescriberService extends ServiceBase {\r\n\r\n application: IndependentPrescriberApplication;\r\n paymentType: PaymentType;\r\n\r\n constructor(http: HttpClient, auth: AuthService, log: LogService, errorHandler: CustomErrorHandler,\r\n private currentAppService: CurrentApplicationService) {\r\n super(http, auth, log, errorHandler);\r\n }\r\n\r\n getApplication(registrantStatus: RegistrantStatus) {\r\n return super.get('v1.0/indyprescriberapp').pipe(map(data => {\r\n try {\r\n this.application = new IndependentPrescriberApplication(data, registrantStatus);\r\n } catch (e) {\r\n this.log.error('Error loading the application', e);\r\n }\r\n return this.application;\r\n }));\r\n }\r\n\r\n saveApplication(\r\n application: IndependentPrescriberApplication\r\n ): Observable {\r\n const payload: any = Object.assign({}, application);\r\n payload.form = application.activeForm;\r\n delete payload.forms;\r\n delete payload.activeForm;\r\n return super.post('v1.0/indyprescriberapp', payload).pipe(\r\n tap(response => {\r\n application.activeForm.id = response.formId;\r\n })\r\n );\r\n }\r\n\r\n sendToCountersigner(registrationNumber: string) {\r\n return super.post(\r\n `v1.0/indyprescriberapp/countersigner/${registrationNumber}`,\r\n {}\r\n );\r\n }\r\n\r\n recallFromCountersigner() {\r\n return super.delete(`v1.0/indyprescriberapp/countersigner/recall`);\r\n }\r\n\r\n saveApplicationPayment() {\r\n return super.post('v1.0/payment/initiate', { paymentType: PaymentType.IndependentPrescriberApplicationFee });\r\n }\r\n\r\n getCountersignerForm(countersignatureId): Observable {\r\n return super\r\n .get(`v1.0/indyprescriberapp/countersignature/${countersignatureId}`)\r\n .pipe(map(data => new IndependentPrescriberData(data)));\r\n }\r\n setStep(formId, step) {\r\n return super.post('v1.0/indyprescriberapp/resetstep', { formId, step });\r\n }\r\n\r\n submitCountersignatureOutcome(payload) {\r\n return super.post(\r\n 'v1.0/indyprescriberapp/countersignature/decision',\r\n payload\r\n );\r\n }\r\n\r\n getProof(file: FileUpload) {\r\n const url = `v1.0/${UploadType.InpendentPrescriberSupportDocuments}/files/${file.fileId}`;\r\n return this.getFileWithToken(url);\r\n }\r\n\r\n download(url: string) {\r\n return this.getFile(url);\r\n }\r\n}\r\n","import { Injectable, EventEmitter } from '@angular/core';\r\nimport { LayoutState } from '../model/LayoutState';\r\nimport { BannerState } from '../model/BannerState';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class LayoutService {\r\n\r\n initialState: LayoutState = {\r\n bannerState: BannerState.default,\r\n fullscreen: false,\r\n showBranding: true,\r\n navbarOpen: false,\r\n accountMode: true,\r\n width: 0,\r\n height: 0,\r\n xs: false,\r\n md: false,\r\n lg: false,\r\n overlay: false,\r\n fullscreenSpinner: { visible: false, text: 'Saving' }\r\n };\r\n\r\n public state$ = new BehaviorSubject(this.initialState);\r\n\r\n public get state() {\r\n return this.state$.value;\r\n }\r\n\r\n public setBannerState(bannerState: BannerState) {\r\n // if (hasBanner === this.state.hasBanner ) { return; }\r\n setTimeout(() => {\r\n const newState = Object.assign(this.state$.value, { bannerState });\r\n this.state$.next(newState);\r\n });\r\n }\r\n\r\n public setOverlay(overlay: boolean) {\r\n setTimeout(() => {\r\n const newState = Object.assign(this.state$.value, { overlay });\r\n this.state$.next(newState);\r\n });\r\n }\r\n/*\r\n private overlayFadeout() {\r\n setTimeout(() => {\r\n const newState = Object.assign(this.state$.value, { overlayFadeout: true });\r\n this.state$.next(newState);\r\n\r\n setTimeout(() => {\r\n const nextState = Object.assign(this.state$.value, { overlayFadeout: false });\r\n this.state$.next(nextState);\r\n }, 400);\r\n\r\n });\r\n }\r\n*/\r\n\r\n\r\n\r\n public setAccountMode(accountMode: boolean) {\r\n setTimeout(() => {\r\n const newState = Object.assign(this.state$.value, { accountMode });\r\n this.state$.next(newState);\r\n });\r\n }\r\n\r\n\r\n\r\n\r\n public setNavbarOpen(navbarOpen: boolean) {\r\n // if (hasBanner === this.state.hasBanner ) { return; }\r\n setTimeout(() => {\r\n const newState = Object.assign(this.state$.value, { navbarOpen });\r\n this.state$.next(newState);\r\n });\r\n }\r\n\r\n public toggleNavbar() {\r\n this.setNavbarOpen(!this.state$.value.navbarOpen);\r\n }\r\n\r\n public setBranding(showBranding: boolean) {\r\n // if (showBranding === this.state.showBranding ) { return; }\r\n setTimeout(() => {\r\n const newState = Object.assign(this.state$.value, { showBranding });\r\n this.state$.next(newState);\r\n });\r\n }\r\n\r\n public toggleFullscreen() {\r\n setTimeout(() => {\r\n const newState = Object.assign(this.state$.value, { fullscreen: !this.state$.value.fullscreen });\r\n this.state$.next(newState);\r\n });\r\n }\r\n\r\n public setFullscreen(fullscreen) {\r\n // if (fullscreen === this.state.fullscreen ) { return; }\r\n setTimeout(() => {\r\n const newState = Object.assign(this.state$.value, { fullscreen });\r\n this.state$.next(newState);\r\n });\r\n }\r\n\r\n public setFullscreenSpinner(visible: boolean, text = 'Saving') {\r\n setTimeout(() => {\r\n const newState = Object.assign(this.state$.value, {\r\n fullscreenSpinner: { visible, text },\r\n overlay: visible\r\n });\r\n this.state$.next(newState);\r\n });\r\n }\r\n\r\n public setSize(width: number, height: number) {\r\n let xs, md, lg;\r\n if (width < 767) {\r\n xs = true;\r\n md = false;\r\n lg = false;\r\n }\r\n if (width > 767) {\r\n xs = false;\r\n md = true;\r\n lg = true;\r\n }\r\n\r\n if (width > 1024) {\r\n lg = true;\r\n md = false;\r\n xs = false;\r\n }\r\n setTimeout(() => {\r\n const newState = Object.assign(this.state$.value, { width, height, xs, md, lg });\r\n this.state$.next(newState);\r\n });\r\n }\r\n\r\n\r\n public reset(fullscreen = false) {\r\n\r\n setTimeout(() => {\r\n const newState = Object.assign(this.state$.value, {\r\n bannerState: BannerState.default,\r\n fullscreen,\r\n fullscreenSpinner: { visible: false, text: 'Saving' },\r\n branding: true,\r\n navbarOpen: false,\r\n overlay: false,\r\n accountMode: false\r\n });\r\n this.state$.next(newState);\r\n });\r\n/*\r\n this.setBannerState(BannerState.default);\r\n this.setFullscreen(false);\r\n this.setBranding(true);\r\n this.setNavbarOpen(false);\r\n this.setOverlay(false);\r\n this.setAccountMode(false);\r\n // TODO: window should be abstracted\r\n */\r\n window.scrollTo(0, 0);\r\n }\r\n}\r\n","import { Injectable, EventEmitter, ReflectiveInjector } from '@angular/core';\r\nimport { Log } from '../model/Log';\r\nimport { LogLevel } from '../model/LogLevel';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { environment } from '../../../environments/environment';\r\nimport { UserActivity } from '../model/UserActivity';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { RequestOptions, Headers, URLSearchParams } from '@angular/http';\r\nimport { ParseLocation } from '@angular/compiler';\r\nimport { LocationStrategy, PathLocationStrategy } from '@angular/common';\r\nimport { AppInsightService } from './AppInsight/app-insight.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable()\r\nexport class LogService {\r\n private myAppInsightService: AppInsightService;\r\n constructor(private http?: HttpClient) {\r\n const injector = ReflectiveInjector.resolveAndCreate([AppInsightService]);\r\n this.myAppInsightService = injector.get(AppInsightService);\r\n }\r\n\r\n public onNotification = new EventEmitter();\r\n\r\n logs: Array = [];\r\n newError: Log;\r\n newRouteBlock: Log;\r\n isOffline = false;\r\n notifyIsOffline = false;\r\n notifyLoggedOut = false;\r\n\r\n offline(isOffline) {\r\n this.notifyIsOffline = isOffline;\r\n this.isOffline = isOffline;\r\n if (isOffline) {\r\n this.onNotification.emit();\r\n }\r\n }\r\n\r\n loggedOut() {\r\n this.notifyLoggedOut = true;\r\n this.onNotification.emit();\r\n }\r\n\r\n clear() {\r\n this.logs = [];\r\n }\r\n clearNew() {\r\n this.newError = undefined;\r\n // this.isOffline = false;\r\n }\r\n clearRouteBlock() {\r\n this.newRouteBlock = undefined;\r\n }\r\n\r\n private add(text: string, level: LogLevel, data: any) {\r\n const log: Log = { text, level, data, date: new Date() };\r\n this.logs.push(log);\r\n this.logs = this.logs.slice(this.logs.length - 100, this.logs.length);\r\n return log;\r\n }\r\n\r\n info(text: string, ...data: any[]) {\r\n const log = this.add(text, LogLevel.info, data);\r\n return log;\r\n }\r\n\r\n routeBlock(message: string, path: string) {\r\n const log = this.info(message);\r\n log.routeBlock = true;\r\n log.routeBlocked = path;\r\n this.newRouteBlock = log;\r\n }\r\n\r\n error(text: string, ...data: any[]) {\r\n const log = this.add(text, LogLevel.error, data);\r\n if (data && data.length && data[0].exceptionMessage) {\r\n log.exception = data[0];\r\n }\r\n console.error(text, data);\r\n this.myAppInsightService.logException(new Error(text), '', data, '', LogLevel.error);\r\n return log;\r\n }\r\n\r\n postActivity(activity: UserActivity, location: string, data: any = {}): any {\r\n const payload = {\r\n A: activity,\r\n L: location,\r\n V: JSON.stringify(data)\r\n };\r\n const endpoint = `${environment.api.root}/v1.0/t`;\r\n return this.http.post(endpoint, payload);\r\n }\r\n\r\n flag(log) {\r\n this.newError = log;\r\n this.onNotification.emit();\r\n }\r\n\r\n warn(text: string, ...data: any[]) {\r\n this.add(text, LogLevel.warn, data);\r\n }\r\n\r\n critical(text: string, ...data: any[]) {\r\n this.add(text, LogLevel.critical, data);\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AuthService } from './auth.service';\r\nimport { LogService } from './log.service';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport 'rxjs/add/observable/range';\r\nimport 'rxjs/add/observable/interval';\r\nimport 'rxjs/add/operator/take';\r\nimport 'rxjs/add/operator/concat';\r\nimport 'rxjs/add/operator/finally';\r\nimport { environment } from '../../../environments/environment';\r\nimport { ServiceBase } from './service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable()\r\nexport class MaintenanceMessageService extends ServiceBase {\r\n header = 'MyGphc service announcement';\r\n body = `MyGPhC is currently unavailable due to essential maintenance. Please try again later.`;\r\n active = false;\r\n open = false;\r\n allowClose = true;\r\n // state representing hideLogin\r\n stateOfLogin$ = new BehaviorSubject(true);\r\n\r\n close() {\r\n this.open = false;\r\n }\r\n\r\n constructor(http: HttpClient, auth: AuthService, log: LogService, errorHandler: CustomErrorHandler) {\r\n super(http, auth, log, errorHandler);\r\n this.getMaintenanceMessage();\r\n }\r\n\r\n getMaintenanceMessage() {\r\n return this.http.request('GET',`${environment.maintenanceAPIURL}/maintenance-message`)\r\n .subscribe((response) => {\r\n if(response) {\r\n const { messageBody, messageTitle,\r\n messageActive, showLogin } = response['value'];\r\n this.header = messageTitle;\r\n this.body = messageBody;\r\n this.open = messageActive;\r\n this.stateOfLogin$.next(showLogin);\r\n // console.table(JSON.parse(response['_body']).value);\r\n }\r\n });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AuthService } from './auth.service';\r\nimport { LogService } from './log.service';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { FormTemplate } from '../../dynamic/model/FormTemplate';\r\nimport { RegApplication } from '../../prereg/model/RegApplication';\r\nimport { ApplicationStatus } from '../../prereg/model/ApplicationStatus';\r\nimport { RegistrantStatus } from '../../registration/model/RegistrantStatus';\r\nimport { FileUpload } from '../../shared/model/FileUpload';\r\nimport { UploadType } from '../../shared/model/UploadType';\r\nimport { tap, map } from 'rxjs/operators';\r\nimport { of as observableOf, from as observableFrom, of } from 'rxjs';\r\nimport { PreregApplicationStep } from '../../shared/model/student/PreregApplicationStep';\r\nimport { TechnicianApplication } from '../../technician/model/TechnicianApplication';\r\nimport { FormScope } from '../../registration/model/FormScope';\r\nimport { CurrentApplicationService } from './prereg/currentApplication.service';\r\nimport { ServiceBase } from './service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n\r\n\r\n@Injectable() export class PreregService extends ServiceBase {\r\n\r\n templateGroup;\r\n application: RegApplication;\r\n\r\n constructor(http: HttpClient, auth: AuthService, log: LogService,\r\n errorHandler: CustomErrorHandler, private currentAppService: CurrentApplicationService) {\r\n super(http, auth, log, errorHandler);\r\n }\r\n\r\n /* \r\n Mock of for AROS applications\r\n */\r\n getApplicationDetails(): Observable {\r\n return super.get('v1.0/trainee/availableform').pipe(map(data => {\r\n try {\r\n this.application = data;\r\n // { availableForm: 0}\r\n\r\n\r\n switch (data.availableForm) {\r\n case data.availableForm === FormScope.ProgressReport:\r\n\r\n break;\r\n case data.availableForm === FormScope.Trainee:\r\n // work out which form it is\r\n\r\n break;\r\n case data.availableForm === FormScope.FinalDeclaration:\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n\r\n\r\n } catch (e) {\r\n this.log.error('Error loading application', e);\r\n }\r\n return this.application;\r\n }));\r\n }\r\n\r\n\r\n getAvailableForm(): Observable {\r\n return super.get('v1.0/trainee/availableform').pipe(\r\n map(data => {\r\n this.currentAppService.availableForm.next(data.availableForm);\r\n return data.availableForm;\r\n })\r\n );\r\n }\r\n\r\n /* \r\n Mock of for AROS applications\r\n */\r\n\r\n\r\n getRegApplication(registrantStatus: RegistrantStatus): Observable {\r\n return super.get('v1.0/registrationform').pipe(map(data => {\r\n try {\r\n this.application = new RegApplication(data, registrantStatus);\r\n } catch (e) {\r\n this.log.error('Error loading application', e);\r\n }\r\n return this.application;\r\n }));\r\n\r\n }\r\n\r\n\r\n getDeclarationFormTemplates(): Observable> {\r\n if (this.templateGroup) {\r\n return observableOf(this.templateGroup);\r\n } else {\r\n return super.get(`v1.0/forms?group=3`)\r\n .pipe(map(data => {\r\n this.templateGroup = data;\r\n return this.templateGroup;\r\n }));\r\n }\r\n }\r\n\r\n cancelCountersignature(formId) {\r\n return super.post('v1.0/registrationform/update',\r\n { formId, status: ApplicationStatus.InProgress });\r\n }\r\n\r\n reSubmitApplication(formId) {\r\n return super.post('v1.0/registrationform/resubmit', { formId });\r\n }\r\n\r\n setStep(formId, step: PreregApplicationStep) {\r\n return super.post('v1.0/registrationform/resetstep', { formId, step });\r\n }\r\n\r\n saveRegApplication(application: RegApplication): Observable {\r\n const payload: any = Object.assign({}, application);\r\n payload.form = application.activeForm;\r\n delete payload.forms;\r\n delete payload.activeForm;\r\n delete payload.tutoredBy;\r\n delete payload.assessment;\r\n delete payload.training;\r\n delete payload.reports;\r\n return super.post('v1.0/registrationform', payload).pipe(tap(response => {\r\n application.activeForm.id = response.formId;\r\n }));\r\n }\r\n\r\n saveApplicationPayment() {\r\n return super.post('v1.0/payment/initiate', { paymentType: 1 });\r\n }\r\n saveFirstYearPayment() {\r\n return super.post('v1.0/payment/initiate', { paymentType: 2 });\r\n }\r\n\r\n sendToCountersigner(pharmacistRegNumber: string) {\r\n return super.post(`v1.0/registrationform/countersigner/${pharmacistRegNumber}`, {});\r\n }\r\n\r\n getCountersignerForm(id) {\r\n return super.get(`v1.0/countersigner/registrationform/${id}`)\r\n .pipe(map(data => new RegApplication(data, null)));\r\n }\r\n\r\n getTechnicianCountersignerForm(id) {\r\n return super.get(`v1.0/countersigner/registrationform/${id}`)\r\n .pipe(map(data => new TechnicianApplication(data, null)));\r\n }\r\n\r\n submitCountersignatureOutcome(payload) {\r\n return super.post('v1.0/countersigner/countersignatures/decision', payload);\r\n }\r\n\r\n getCountersignatureRequests(pharmacistRegNumber: string) {\r\n return super.get('v1.0/countersigner/countersignatures');\r\n }\r\n\r\n recallFromCountersigner() {\r\n return super.delete(`v1.0/registrationform/countersigner/recall`);\r\n }\r\n\r\n getSupportingDocument(file: FileUpload) {\r\n const url = `v1.0/${UploadType.RegistrationFormSupportingDocuments}/files/${file.fileId}`;\r\n return this.getFileWithToken(url);\r\n }\r\n\r\n getStudentSupportingDocs(file: FileUpload) {\r\n const url = `v1.0/${UploadType.PreRegistrationFormSupportingDocuments}/files/${file.fileId}`;\r\n return this.getFileWithToken(url);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ServiceBase } from '../service.base';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { Applicant } from '../../../account/model/Applicant';\r\nimport { FormScope } from '../../../registration/model/FormScope';\r\nimport { Application } from '../../../prereg/model/Application';\r\nimport { IndependentPrescriberApplication } from '../../../registration/independent-precriber/model/IndependentPrescriberApplication';\r\nimport { Registrant } from '../../../registration/model/Registrant';\r\n@Injectable()\r\nexport class CurrentApplicationService {\r\n\r\n trainee: BehaviorSubject = new BehaviorSubject(null);\r\n availableForm: BehaviorSubject = new BehaviorSubject(0);\r\n registrant: BehaviorSubject = new BehaviorSubject(null);\r\n\r\n setTrainee(application: Application): void {\r\n const { trainee } = application;\r\n this.trainee.next(trainee);\r\n }\r\n\r\n setIPRegistrant(application: IndependentPrescriberApplication): void {\r\n const { registrant } = application;\r\n this.registrant.next(registrant);\r\n }\r\n}\r\n","\r\nimport {throwError as observableThrowError} from 'rxjs';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\n\r\nimport { of as observableOf, from as observableFrom } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { FaqCategory } from '../model/Faq';\r\nimport { environment } from '../../../environments/environment';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable()\r\nexport class PublicService {\r\n\r\n faq: FaqCategory[];\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n getFaq(): Observable> {\r\n if (this.faq) {\r\n return observableOf(this.faq);\r\n }\r\n\r\n const endpoint = `${environment.api.root}/v1.0/contents/faq`;\r\n return this.http.get(endpoint)\r\n .pipe(map(response => {\r\n const data = response['data'];\r\n data.categories.forEach(c => {\r\n c.openState = 'closed';\r\n c.questions.forEach(q => {\r\n q.openState = 'closed';\r\n });\r\n });\r\n this.faq = >data.categories;\r\n return this.faq;\r\n }))\r\n .catch(response => observableThrowError(response.json().data));\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { AuthService } from './auth.service';\r\nimport { LogService } from './log.service';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nimport { RegisterSearchParams, RegisterSearchBy, RegisterSearchResult } from '../../registration/model/RegisterSearchParams';\r\nimport { of as observableOf, from as observableFrom, BehaviorSubject } from 'rxjs';\r\nimport { map, tap } from 'rxjs/operators';\r\nimport { LetterType } from '../../registration/model/LetterType';\r\nimport { PremisesSearchParams, PremisesSearchResult, PremisesSearchBy } from '../../registration/model/PremisesSearchParams';\r\nimport { Address } from '../../account/model/Address';\r\nimport { ApplicationDetails } from '../../registration/model/ApplicationDetails';\r\nimport { ServiceBase } from './service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nconst mockLetters = [\r\n {\r\n letterType: LetterType.Remediation,\r\n letterDate: '2016-07-05T00:00:00',\r\n data: {}\r\n },\r\n {\r\n letterType: LetterType.NoticeOfIntentToRemove,\r\n letterDate: '2017-07-05T00:00:00',\r\n data: {}\r\n }, {\r\n letterType: LetterType.NoticeOfRemoval,\r\n letterDate: '2018-07-05T00:00:00',\r\n data: {}\r\n }, {\r\n letterType: LetterType.NoticeOfEntry,\r\n letterDate: '2015-07-05T00:00:00',\r\n data: {}\r\n }\r\n];\r\n\r\n\r\n@Injectable()\r\nexport class RegistrationService extends ServiceBase {\r\n\r\n letters;\r\n ccpsRegBodieSelected$ = new BehaviorSubject>([]);\r\n\r\n constructor(\r\n http: HttpClient,\r\n auth: AuthService,\r\n log: LogService,\r\n errorHandler: CustomErrorHandler\r\n ) {\r\n super(http, auth, log, errorHandler);\r\n }\r\n\r\n searchRegister(params: RegisterSearchParams): Observable> {\r\n const gphcId = results => {\r\n return results.map(result => {\r\n result.gphcId = result.gPhCId;\r\n return result;\r\n });\r\n };\r\n\r\n let url = params.applicationType ? `/v1.0/registrant/autocomplete?Skip=${params.skip}&Take=${params.take}&${params.applicationType}=true&` :\r\n `/v1.0/registrant/autocomplete?Skip=${params.skip}&Take=${params.take}&`;\r\n if(params.searchBy === RegisterSearchBy.Number) {\r\n url = url + `RegistrationNumber=${params.regNumber}`\r\n } else {\r\n url = params.firstName ? (params.lastName ? url + `Forenames=${params.firstName}&Surname=${params.lastName}` : url + `Forenames=${params.firstName}`) : \r\n url + `Surname=${params.lastName}`;\r\n }\r\n\r\n return super.get(url).pipe(map(gphcId)); \r\n }\r\n\r\n searchPremises(params: PremisesSearchParams): Observable> {\r\n const premisesAddress = premises => {\r\n premises.map(premise => {\r\n premise.address = new Address(premise.address);\r\n });\r\n return premises;\r\n };\r\n switch (params.searchBy) {\r\n case PremisesSearchBy.Postcode:\r\n return super.get(`v1.0/premise/${params.postcode}`)\r\n .pipe(map(result => result.premises))\r\n .pipe(map(premisesAddress));\r\n case PremisesSearchBy.Number:\r\n return super.get(`v1.0/premise/${params.regNumber}`)\r\n .pipe(map(result => result.premises))\r\n .pipe(map(premisesAddress));\r\n default:\r\n return observableOf([]);\r\n }\r\n\r\n }\r\n\r\n getLetters() {\r\n if (this.letters) {\r\n return observableOf(this.letters);\r\n } else {\r\n return super.get('/v1.0/registrant/letters?Skip=0&Take=1?Skip=0&Take=1')\r\n .pipe(tap(letters => {\r\n this.letters = letters;\r\n }));\r\n }\r\n }\r\n\r\n getLearningContracts() {\r\n return super.get('/v1.0/tutor/learningcontracts');\r\n }\r\n\r\n\r\n submitLearningContractResponse(payload) {\r\n return super.post('/v1.0/tutor/learningcontracts/decision', payload);\r\n }\r\n\r\n getLearningContract(formId) {\r\n return super.get(`v1.0/tutor/learningcontract/?formId=${formId}`);\r\n }\r\n\r\n createLetters() {\r\n return super.get('v1.0/registrant/letters/create');\r\n }\r\n\r\n getAvailableForms() : Observable { \r\n return super.get('v1.0/registrant/availableforms');\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { RenewalConfig } from '../../renewal/model/RenewalConfig';\r\nimport { Renewal } from '../../renewal/model/Renewal';\r\nimport { AuthService } from './auth.service';\r\nimport { LogService } from './log.service';\r\nimport { RenewalStatus } from '../../renewal/model/RenewalStatus';\r\nimport { WorldpayCartId } from '../../renewal/model/WorldpayCartId';\r\nimport { WorldpayConfig } from '../../renewal/model/WorldpayConfig';\r\nimport { RenewalPaymentMethod } from '../../renewal/model/RenewalPaymentMethod';\r\nimport { FormTemplate } from '../../dynamic/model/FormTemplate';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\n\r\nimport { of as observableOf, from as observableFrom, BehaviorSubject } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { ServiceBase } from './service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable()\r\nexport class RenewalService extends ServiceBase {\r\n\r\n templateGroup;\r\n applicationStatus$ = new BehaviorSubject(null);\r\n\r\n constructor(http: HttpClient, auth: AuthService, log: LogService, errorHandler: CustomErrorHandler) {\r\n super(http, auth, log, errorHandler);\r\n }\r\n\r\n failTest(): Observable {\r\n return super.get(`api/nosuchthing`);\r\n }\r\n\r\n getFormTemplates(): Observable> {\r\n if (this.templateGroup) {\r\n return observableOf(this.templateGroup);\r\n } else {\r\n return super.get(`v1.0/forms?group=1`)\r\n .pipe(map(data => {\r\n this.templateGroup = data;\r\n return this.templateGroup;\r\n }));\r\n }\r\n }\r\n\r\n\r\n getRenewal(): Observable {\r\n this.log.info('loading renewal...');\r\n return super.get(`v1.0/registrant/renewals`).pipe(map(data => {\r\n\r\n if (!data.renewals || !data.renewals.length) {\r\n this.log.info('get renewals returned null or empty');\r\n return {\r\n status: RenewalStatus.NotDue,\r\n revalidationCompleted: false,\r\n paymentMethod: RenewalPaymentMethod.Unknown,\r\n isCash: false,\r\n isDD: false,\r\n isDue: false,\r\n notDue: true,\r\n selectedCard: undefined,\r\n agreed: false,\r\n renewalFee: undefined,\r\n renewalDate: undefined,\r\n windowCloseDate: undefined,\r\n isComplete: false\r\n };\r\n }\r\n const renewal: Renewal = data.renewals[0];\r\n renewal.notDue = !renewal.isRenewable;\r\n renewal.isDue = renewal.isRenewable;\r\n if (!renewal.isRenewable) {\r\n renewal.status = RenewalStatus.NotDue;\r\n }\r\n renewal.isCash = renewal.paymentMethod === RenewalPaymentMethod.PaymentCard;\r\n\r\n renewal.isDD = renewal.paymentMethod === RenewalPaymentMethod.DirectDebitAnnual ||\r\n renewal.paymentMethod === RenewalPaymentMethod.DirectDebitQuarterly;\r\n\r\n renewal.isComplete = renewal.status === RenewalStatus.Complete ||\r\n renewal.status === RenewalStatus.PaymentInProgress ||\r\n renewal.status === RenewalStatus.DDPaymentPending;\r\n\r\n this.log.info('renewal loaded', renewal);\r\n\r\n return renewal;\r\n }));\r\n }\r\n\r\n saveDeclaration(payload): Observable {\r\n return super.post(`v1.0/registrant/renewals`, payload)\r\n .pipe(map(data => new WorldpayCartId(data.renewalIdentifier)));\r\n }\r\n\r\n getWordpayConfig(): Observable {\r\n return super.get(`v1.0/worldpay/configuration`);\r\n }\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { map, tap } from 'rxjs/operators';\r\nimport { ReturnToRegisterStep } from '../../registration/return-to-register/model/ReturnToRegisterStep';\r\nimport { RegistrantStatus } from '../../registration/model/RegistrantStatus';\r\nimport { ReturnToRegisterApplication } from '../../registration/return-to-register/model/ReturnToRegister';\r\nimport { AuthService } from './auth.service';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nimport { LogService } from './log.service';\r\nimport { Observable, of as observableOf, } from 'rxjs';\r\nimport { FormTemplate } from '../../dynamic/model/FormTemplate';\r\nimport { FormGroupType } from '../../dynamic/model/FormGroupType';\r\nimport { FileUpload } from '../../shared/model/FileUpload';\r\nimport { UploadType } from '../../shared/model/UploadType';\r\nimport { PaymentType } from '../model/paymentType';\r\nimport { RegistrantType } from '../../../app/registration/model/RegistrantType';\r\nimport { ServiceBase } from './service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable()\r\nexport class ReturnToRegisterService extends ServiceBase {\r\n\r\n application: ReturnToRegisterApplication;\r\n templateGroup: any;\r\n registrant : any;\r\n\r\n constructor(http: HttpClient, auth: AuthService, log: LogService, errorHandler: CustomErrorHandler) {\r\n super(http, auth, log, errorHandler);\r\n this.registrant = auth.user.registrant;\r\n }\r\n\r\n \r\n\r\n getApplication(registrantStatus: RegistrantStatus) {\r\n return super.get('v1.0/returntoregisterapp/' + this.registrant.isRTRAppAvailable).pipe(map(data => {\r\n try {\r\n this.application = new ReturnToRegisterApplication(data, registrantStatus);\r\n } catch (e) {\r\n this.log.error('Error loading the application', e);\r\n }\r\n return this.application;\r\n }));\r\n }\r\n\r\n saveApplication(application) {\r\n const payload: any = Object.assign({}, application);\r\n payload.form = application.activeForm;\r\n delete payload.forms;\r\n delete payload.activeForm;\r\n return super.post('v1.0/returntoregisterapp', payload).pipe(tap(response => {\r\n application.activeForm.id = response.formId;\r\n }));\r\n }\r\n\r\n saveApplicationPayment() {\r\n\r\n switch (this.registrant.isRTRAppAvailable) {\r\n case 1:\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PharmacistRTRAppFeeVoluntaryRemovalLessThanMonth )}); \r\n case 2:\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PharmacistRTRAppFeeVoluntaryRemovalMoreThanMonth )});\r\n case 3:\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PharmacistRTRAppFeeAfterNonRenewalLessThanYear )});\r\n case 4:\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PharmacistRTRAppFeeAfterNonComplianceLessThanYear )});\r\n case 5:\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PhyTechRTRAppFeeVoluntaryRemovalLessThanMonth )});\r\n case 6:\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PhyTechRTRAppFeeVoluntaryRemovalMoreThanMonth )});\r\n case 7:\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PhyTechRTRAppFeeAfterNonRenewalLessThanYear )});\r\n case 8:\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PhyTechRTRAppFeeAfterNonComplianceLessThanYear )}); \r\n default:\r\n return \r\n }\r\n \r\n \r\n }\r\n setStep(formId, step: ReturnToRegisterStep) {\r\n return super.post('v1.0/returntoregister/resetstep', { formId, step });\r\n }\r\n \r\n getSupportingDocument(file: FileUpload) {\r\n const url = `v1.0/${UploadType.ReturnToRegisterSupportingDocuments}/files/${file.fileId}`;\r\n return this.getFileWithToken(url);\r\n }\r\n\r\n getDeclarationFormTemplates(): Observable> {\r\n if (this.templateGroup) {\r\n return observableOf(this.templateGroup);\r\n } else {\r\n return super.get(`v1.0/forms?group=`+FormGroupType.ReturnToRegisterApplicationDeclarationForms)\r\n .pipe(map(data => {\r\n this.templateGroup = data;\r\n return this.templateGroup;\r\n }));\r\n }\r\n }\r\n\r\n saveRestorationPayment() {\r\n const feeCode=this.application.restorationToRegisterFeeCode;\r\n const FEECODES = {\r\n pharmacistRestorationFee: '241REF',\r\n phyTechnicianRestorationFee: '242REF',\r\n pharmacistRestorationAndRenewalFee: '241RESREN',\r\n phyTechnicianRestorationAndRenewalFee: '242RESREN',\r\n }\r\n switch (feeCode) { \r\n case FEECODES.pharmacistRestorationFee:\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PharmacistRestorationFee )}); \r\n case FEECODES.phyTechnicianRestorationFee:\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PhyTechnicianRestorationFee )});\r\n case FEECODES.pharmacistRestorationAndRenewalFee:\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PharmacistRestorationAndRenewalFee )});\r\n case FEECODES.phyTechnicianRestorationAndRenewalFee:\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PhyTechnicianRestorationAndRenewalFee )});\r\n default:\r\n return \r\n }\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { RevalidationItem } from '../../shared/model/revalidation/RevalidationItem';\r\nimport { Revalidation } from '../../shared/model/revalidation/Revalidation';\r\nimport { SubmissionExpectations } from '../../shared/model/revalidation/SubmissionExpectations';\r\nimport { RevalidationItemType } from '../../shared/model/revalidation/RevalidationItemType';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { FormTemplate } from '../../dynamic/model/FormTemplate';\r\nimport { FormType } from '../../dynamic/model/FormType';\r\nimport { AuthService } from './auth.service';\r\nimport { LogService } from './log.service';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nimport { of as observableOf, from as observableFrom } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\n\r\nimport { ExtCircListItem } from '../../shared/model/revalidation/ExtCircListItem';\r\nimport { FormAnswer } from '../../dynamic/model/FormAnswer';\r\nimport { ExtenuatingCircumstance } from '../../shared/model/revalidation/ExtenuatingCircumstance';\r\nimport { UploadType } from '../../shared/model/UploadType';\r\nimport { FileUpload } from '../../shared/model/FileUpload';\r\nimport { ServiceBase } from './service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nfunction revalidationFormTemplate(type: RevalidationItemType) {\r\n switch (type) {\r\n case RevalidationItemType.PeerDiscussion:\r\n return FormType.PeerDiscussionEntry;\r\n case RevalidationItemType.Planned:\r\n return FormType.PlannedCpdEntry;\r\n case RevalidationItemType.Unplanned:\r\n return FormType.UnplannedCpdEntry;\r\n case RevalidationItemType.ReflectiveAccount:\r\n return FormType.ReflectiveAccountEntry;\r\n }\r\n}\r\n\r\nfunction formTypeToRevalidationType(type: FormType) {\r\n switch (type) {\r\n case FormType.PeerDiscussionEntry:\r\n return RevalidationItemType.PeerDiscussion;\r\n case FormType.PlannedCpdEntry:\r\n return RevalidationItemType.Planned;\r\n case FormType.UnplannedCpdEntry:\r\n return RevalidationItemType.Unplanned;\r\n case FormType.ReflectiveAccountEntry:\r\n return RevalidationItemType.ReflectiveAccount;\r\n }\r\n}\r\n\r\n\r\n@Injectable()\r\nexport class RevalidationService extends ServiceBase {\r\n forms: any = {};\r\n templateGroup;\r\n pastSubmissions;\r\n\r\n constructor(http: HttpClient, auth: AuthService, log: LogService, errorHandler: CustomErrorHandler) {\r\n super(http, auth, log, errorHandler);\r\n }\r\n /*\r\n getFormTemplate(type: RevalidationItemType): Observable {\r\n const url = `assets/cpd/formConfig/${RevalidationItemType[type]}.json`;\r\n return this._http.get(url)\r\n .map(response => response.json())\r\n .do(data => console.log(data));\r\n }\r\n */\r\n\r\n getFormTemplates(): Observable> {\r\n if (this.templateGroup) {\r\n return observableOf(this.templateGroup);\r\n } else {\r\n return super.get(`v1.0/forms?group=2`)\r\n .pipe(map(data => {\r\n this.templateGroup = data;\r\n data.forEach(form => {\r\n this.forms[form.type] = form;\r\n this.forms[form.dynamicFormId] = form;\r\n });\r\n return this.templateGroup;\r\n }));\r\n }\r\n }\r\n\r\n getExceptionalCircumstanceRenewalDates() {\r\n return super.get(`v1.0/registrant/revalidation/extenuatingcircumstances/renewaldates`);\r\n /*\r\n return observableOf([\r\n { renewalDate: '2017-10-31', name: 'Previous year' },\r\n { renewalDate: '2018-10-31', name: 'Current year' },\r\n { renewalDate: '2019-10-31', name: 'Next year' }\r\n ]);*/\r\n }\r\n\r\n getExtenuatingCircumstance(id): Observable {\r\n return super.get(`v1.0/registrant/revalidation/extenuatingcircumstances/${id}`);\r\n }\r\n\r\n getProof(file: FileUpload) {\r\n const url = `v1.0/${UploadType.ExtenuatingCircumstanceProof}/files/${file.fileId}`;\r\n return this.getFileWithToken(url);\r\n }\r\n\r\n\r\n getFeedback(id) {\r\n return super.get(`v1.0/registrant/submission/${id}/feedback`);\r\n }\r\n\r\n\r\n resetExtenuatingCircumstancesForm(id) {\r\n return super.delete(`v1.0/registrant/revalidation/extenuatingcircumstances/${id}`);\r\n }\r\n\r\n getExtenuatingCircumstancesFormTemplate(): Observable {\r\n const formType = 7;\r\n if (this.forms[formType]) {\r\n return observableOf(this.forms[formType]);\r\n } else {\r\n return super.get(`v1.0/forms?type=${formType}`)\r\n .pipe(map(data => {\r\n this.forms[formType] = data[0];\r\n return this.forms[formType];\r\n }));\r\n }\r\n }\r\n\r\n getFormTemplateByType(type: RevalidationItemType): Observable {\r\n if (this.forms[RevalidationItemType[type]]) {\r\n return observableOf(this.forms[RevalidationItemType[type]]);\r\n } else {\r\n return super.get(`v1.0/forms?type=${revalidationFormTemplate(type)}`)\r\n .pipe(map(data => {\r\n const form: FormTemplate = data[0];\r\n this.forms[RevalidationItemType[type]] = form;\r\n this.forms[form.dynamicFormId] = form;\r\n return form;\r\n }));\r\n }\r\n }\r\n\r\n getFormTemplateById(id: string): Observable {\r\n if (this.forms[id]) {\r\n return observableOf(this.forms[id]);\r\n } else {\r\n return super.get(`v1.0/forms/${id}`)\r\n .pipe(map(data => {\r\n const form: FormTemplate = data[0];\r\n this.forms[form.dynamicFormId] = form;\r\n return form;\r\n }));\r\n }\r\n }\r\n\r\n save(item: RevalidationItem, revalidationId) {\r\n if (item.id) {\r\n return super.put(`v1.0/registrant/revalidation/entries/${item.id}`, item);\r\n } else {\r\n return super.post(`v1.0/registrant/revalidation/${revalidationId}/entries`, item);\r\n }\r\n }\r\n\r\n delete(item: RevalidationItem) {\r\n return super.delete(`v1.0/registrant/revalidation/entries/${item.id}`);\r\n }\r\n\r\n submit(revalidationId) {\r\n return super.post(`v1.0/registrant/revalidation/${revalidationId}/submit`, {});\r\n }\r\n\r\n getEntry(id, revalidationId): Observable {\r\n return super.get(`v1.0/registrant/revalidation/${revalidationId}/entries/${id}`)\r\n .pipe(map(data => {\r\n const item: RevalidationItem = data.revalidationEntries[0];\r\n item.readonly = item.submitted;\r\n return item;\r\n }));\r\n }\r\n\r\n\r\n getEntries(id): Observable {\r\n return super.get(`v1.0/registrant/revalidation/${id}/entries`)\r\n .pipe(map(data => data.revalidationEntries));\r\n }\r\n\r\n get(): Observable {\r\n return super.get('v1.0/registrant/revalidation');\r\n }\r\n\r\n getPastSubmissions(): Observable {\r\n\r\n return super.get('v1.0/registrant/submissions')\r\n .pipe(map(data => data.submissions));\r\n }\r\n\r\n patch(item: RevalidationItem, revalidationId) {\r\n return super.post(`v1.0/registrant/revalidation/${revalidationId}/entry/${item.id}`,\r\n {\r\n included: item.included,\r\n isCompleted: item.completed\r\n });\r\n }\r\n\r\n submitExtenuatingCircumstances(id) {\r\n return super.post(`v1.0/registrant/revalidation/ExtenuatingCircumstances/${id}/submit`, { });\r\n }\r\n\r\n saveExtenuatingCircumstances(payload) {\r\n return super.post(`v1.0/registrant/revalidation/ExtenuatingCircumstances`, payload);\r\n }\r\n\r\n getExtenuatingCircumstancesList(): Observable> {\r\n return super.get(`v1.0/registrant/revalidation/ExtenuatingCircumstances/list`)\r\n .pipe(map(result => >result.extenuatingCircumstanceListModels));\r\n }\r\n getLatestRevalidation(): Observable {\r\n return super.get('v1.0/registrant/GetLatestRevalidation');\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Review } from '../../review/model/Review';\r\nimport { ReviewSummaryItem } from '../../review/model/ReviewSummaryItem';\r\nimport { ReviewSummary } from '../../review/model/ReviewSummary';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { AuthService } from './auth.service';\r\nimport { LogService } from './log.service';\r\nimport { Feedback } from '../../review/model/Feedback';\r\nimport { PerformanceIndicator } from '../../review/model/PerformanceIndicator';\r\nimport { Message } from '../../review/model/Message';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nimport { of as observableOf, from as observableFrom } from 'rxjs';\r\nimport { map, tap } from 'rxjs/operators';\r\nimport { ReviewStage } from '../../review/model/ReviewStage';\r\nimport { ReviewDeadlineGrouping } from '../../review/model/ReviewDeadlineGrouping';\r\nimport { ServiceBase } from './service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\ndeclare function require(moduleName: string): any;\r\nconst mockReviews = {\r\n '89395f41-97be-4e2c-915d-18249b05f5cf': require(`./mock/reviews/89395f41-97be-4e2c-915d-18249b05f5cf.mock.json`),\r\n 'b65a21bb-2ccc-4849-99cf-5da5e0a031fd': require(`./mock/reviews/b65a21bb-2ccc-4849-99cf-5da5e0a031fd.mock.json`),\r\n 'cda4c885-699e-464d-99c1-11c6639631b7': require(`./mock/reviews/cda4c885-699e-464d-99c1-11c6639631b7.mock.json`)\r\n , 'b65a21bb-2ccc-4849-99cf-5da5e0a031fc': require(`./mock/reviews/b65a21bb-2ccc-4849-99cf-5da5e0a031fc.mock.json`),\r\n 'b65a21bb-2ccc-4849-99cf-5da5e0a031fe': require(`./mock/reviews/b65a21bb-2ccc-4849-99cf-5da5e0a031fe.mock.json`)\r\n};\r\n\r\nconst mockReviewSummaries = require('./mock/reviewSummaries.mock.json');\r\n\r\nfunction mapReviewSummary(i): ReviewSummaryItem {\r\n const item = new ReviewSummaryItem();\r\n Object.assign(item, i);\r\n return item;\r\n}\r\n/*\r\nfunction mapReviewToSummary(review: Review): ReviewSummary {\r\n const out: ReviewSummary = new ReviewSummary();\r\n out.cpdSubmissionId = review.cpdReviewId;\r\n out.id = review.cpdReviewId;\r\n out.title = review.cpdReviewId;\r\n out.reviewerConfirmation = review.reviewerConfirmation;\r\n out.stage = review.stage;\r\n out.reviewDeadline = '2017-08-01T00:00:00';\r\n // out.isFeedbackEditable = review.isFeedbackEditable;\r\n out.isLead = review.isLeadReviewer;\r\n return out;\r\n}\r\n*/\r\nfunction mapReview(data): Review {\r\n return new Review(data);\r\n}\r\n\r\n\r\n\r\n@Injectable()\r\nexport class ReviewService extends ServiceBase {\r\n\r\n constructor(http: HttpClient, auth: AuthService, log: LogService, errorHandler: CustomErrorHandler) {\r\n super(http, auth, log, errorHandler);\r\n }\r\n\r\n reviewSummary: ReviewSummary;\r\n\r\n getReviewSummary(bustCache = false): Observable {\r\n /* return observableOf(mockReviewSummaries.data.reviewSummaries.map(mapReviewSummary));*/\r\n\r\n if (bustCache) {\r\n this.reviewSummary = undefined;\r\n }\r\n\r\n const stages = Object.keys(ReviewStage).map(key => ReviewStage[key]).filter(item => !isNaN(item) && item < 5 && item > 0);\r\n\r\n if (this.reviewSummary) {\r\n return observableOf(this.reviewSummary);\r\n }\r\n\r\n return super.get('v1.0/reviewer/reviewsummaries')\r\n .pipe(map(data => data.reviewSummaries.map(mapReviewSummary)))\r\n .pipe(map(items => {\r\n\r\n const deadlineGroupings: Array = items.reduce((acc, item) => {\r\n const existingGrouping = acc.find(g => g.deadline === item.reviewDeadline);\r\n if (existingGrouping) {\r\n existingGrouping.items.push(item);\r\n } else {\r\n const newGrouping = { deadline: item.reviewDeadline, counts: [], items: [item] };\r\n acc.push(newGrouping);\r\n }\r\n return acc;\r\n }, []);\r\n\r\n deadlineGroupings.forEach(g => {\r\n g.counts.push({ key: 'Total', count: g.items.length, items: g.items });\r\n stages.forEach(stage => {\r\n const stageItems = g.items.filter(item => item.stage === stage);\r\n g.counts.push({ key: ReviewStage[stage], count: stageItems.length, items: stageItems });\r\n });\r\n const qaItems = g.items.filter(item => item.stage > 4);\r\n g.counts.push({ key: 'QualityAssurance', count: qaItems.length, items: qaItems });\r\n if (qaItems.length === g.items.length) {\r\n g.completed = true;\r\n }\r\n });\r\n\r\n deadlineGroupings.sort((a, b) => {\r\n if (a.completed && !b.completed) {\r\n return 1;\r\n }\r\n if (new Date(a.deadline) > new Date(b.deadline)) { return 1; }\r\n return -1;\r\n });\r\n\r\n this.reviewSummary = {\r\n headers: ['Total', ...stages.map(stage => ReviewStage[stage]), 'QualityAssurance'],\r\n deadlineGroupings\r\n };\r\n return this.reviewSummary;\r\n\r\n }));\r\n }\r\n\r\n load(id): Observable {\r\n // const data = mockReviews[id].data;\r\n // return observableOf(mapReview(data));\r\n\r\n return super.get(`v1.0/reviewer/reviews/${id}`)\r\n .pipe(map(data => mapReview(data)));\r\n }\r\n\r\n save(item): Observable {\r\n return observableOf(false);\r\n }\r\n\r\n\r\n saveAnnotation(reviewId, entryId, annotation) {\r\n return super.post(`v1.0/reviewer/annotations`, {\r\n reviewId,\r\n revalidationEntryId: entryId,\r\n annotation\r\n }).pipe(tap(() => { this.reviewSummary = undefined; }));\r\n // bust cache\r\n\r\n }\r\n submitDiscussion(reviewId) {\r\n return super.post(`v1.0/reviewer/discussioncompleted`, { reviewId, completed: true });\r\n }\r\n\r\n setInitialAssessment(reviewId, reviewerAssessment: PerformanceIndicator) {\r\n return super.post(`v1.0/reviewer/assessments`, { reviewId, reviewerAssessment });\r\n }\r\n\r\n sendDiscussionMessage(reviewId, text) {\r\n return super.post(`v1.0/reviewer/messages`, { reviewId, text });\r\n }\r\n\r\n getDiscussionMessages(reviewId): Observable {\r\n return super.get(`v1.0/reviewer/messages?reviewId=${reviewId}`);\r\n }\r\n\r\n saveFeedback(reviewId, feedback: Feedback) {\r\n return super.post(`v1.0/reviewer/feedbacks`, { reviewId, feedback, submit: false });\r\n }\r\n\r\n submitFeedback(reviewId, feedback: Feedback) {\r\n return super.post(`v1.0/reviewer/feedbacks`, { reviewId, feedback, submit: true });\r\n }\r\n\r\n submitFeedbackApproval(reviewId, approve, reviewFeedbackId, reason?) {\r\n return super.post(`v1.0/reviewer/feedbacks/approval`, { reviewId, approve, reviewFeedbackId, reason });\r\n }\r\n\r\n\r\n\r\n\r\n}\r\n","import { Observable, ObservableInput } from 'rxjs/Observable';\r\nimport { AuthService } from './auth.service';\r\nimport { LogService } from './log.service';\r\nimport { RequestOptions, Headers, URLSearchParams, ResponseContentType } from '@angular/http';\r\nimport { HttpClient, HttpHeaders, HttpParams, HttpResponse } from '@angular/common/http';\r\nimport { environment } from '../../../environments/environment';\r\nimport { from as observableFrom } from 'rxjs';\r\nimport { map, mergeMap, tap } from 'rxjs/operators';\r\nimport { of as observableOf } from 'rxjs';\r\n\r\n\r\n\r\n\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nexport abstract class ServiceBase {\r\n\r\n mock: any;\r\n protected log: LogService;\r\n\r\n useMock = environment.useMock;\r\n\r\n constructor(\r\n protected http: HttpClient,\r\n private auth: AuthService,\r\n log: LogService,\r\n private errorHandler: CustomErrorHandler\r\n ) {\r\n this.log = log;\r\n }\r\n\r\n private handleError(err, caught) {\r\n return this.errorHandler.handleServerError(err, caught);\r\n }\r\n\r\n private setMock(data) {\r\n this.mock = data;\r\n this.mock['v1.0/forms?type=3'] = this.mock['v1.0/forms/08c8cbd0-9d7c-46f4-8d17-6a044986c75a'];\r\n this.mock['v1.0/forms?type=4'] = this.mock['v1.0/forms/3e3066b3-ca8a-4d61-8685-4c95b4e47e93'];\r\n this.mock['v1.0/forms?type=5'] = this.mock['v1.0/forms/991af3c1-dbcf-466a-86f1-12290163de32'];\r\n this.mock['v1.0/forms?type=6'] = this.mock['v1.0/forms/4360e21b-04ff-462d-906a-a1bc3ae42c78'];\r\n }\r\n\r\n private mockGet(url: string, params?: Object): Observable {\r\n if (params) {\r\n const search = new URLSearchParams();\r\n for (const key in params) {\r\n if (params.hasOwnProperty(key)) {\r\n search.set(key, params[key]);\r\n }\r\n }\r\n url += search.toString();\r\n }\r\n\r\n if (this.mock) {\r\n return observableOf(this.mock[url].data);\r\n } else {\r\n return this.http.get('/assets/mock.json')\r\n .pipe(map((response: any) => {\r\n this.setMock(response.json());\r\n return this.mock[url].data;\r\n }))\r\n .catch(this.handleError.bind(this));\r\n }\r\n }\r\n\r\n protected get(url: string, params?: Object, props?: Object): Observable {\r\n if (this.useMock) {\r\n return this.mockGet(url, params);\r\n }\r\n return observableFrom(this.auth.getToken())\r\n .catch(this.handleError.bind(this))\r\n .pipe(mergeMap(token => {\r\n const endpoint = `${environment.api.root}/${url}`;\r\n const headers = new HttpHeaders().set('Authorization', `Bearer ${token}`);\r\n let httpPaarams: HttpParams = new HttpParams();\r\n if (params) {\r\n Object.keys(params).forEach((key: string) => {\r\n const value: string | number | boolean | Date = params[key];\r\n if ((typeof value !== 'undefined') && (value !== null)) {\r\n httpPaarams = httpPaarams.append(key, value.toString());\r\n }\r\n });\r\n }\r\n\r\n return this.http.request('GET', endpoint, \r\n {\r\n headers:{'Authorization': `Bearer ${token}`},\r\n params: httpPaarams\r\n })\r\n .pipe(\r\n map(response => {\r\n if ((response)._body === '') {\r\n return null;\r\n } else {\r\n if (response) {\r\n return response['data'];\r\n } else {\r\n return null;\r\n }\r\n }\r\n }),\r\n tap(data => {\r\n this.log.isOffline = false;\r\n }))\r\n .catch(this.handleError.bind(this));\r\n }))\r\n .catch(this.handleError.bind(this));\r\n }\r\n\r\n protected put(url, payload): Observable {\r\n return observableFrom(this.auth.getToken())\r\n .catch(this.handleError.bind(this))\r\n .pipe(mergeMap(token => {\r\n const endpoint = `${environment.api.root}/${url}`;\r\n return this.http.put(endpoint, payload,{ headers:{'Authorization': `Bearer ${token}`}}).catch(this.handleError.bind(this));\r\n }))\r\n .catch(this.handleError.bind(this));\r\n }\r\n protected post(url, payload, headers: Headers = new Headers()): Observable {\r\n return observableFrom(this.auth.getToken())\r\n .catch(this.handleError.bind(this))\r\n .pipe(mergeMap(token => {\r\n const endpoint = `${environment.api.root}/${url}`;\r\n const headers = {'Authorization': `Bearer ${token}`};\r\n return this.http\r\n .post(endpoint, payload, {headers})\r\n .pipe(map(response => {\r\n if (response) {\r\n if (response && response['data']) {\r\n return response['data'];\r\n } else {\r\n return response;\r\n }\r\n } else {\r\n return null;\r\n }\r\n }))\r\n .catch(this.handleError.bind(this));\r\n }))\r\n .catch(this.handleError.bind(this));\r\n }\r\n\r\n protected patch(url, payload): Observable {\r\n return observableFrom(this.auth.getToken())\r\n .catch(this.handleError.bind(this))\r\n .pipe(mergeMap(token => {\r\n const endpoint = `${environment.api.root}/${url}`;\r\n const headers = {'Authorization': `Bearer ${token}`};\r\n return this.http\r\n .patch(endpoint, payload, {headers})\r\n .catch(this.handleError.bind(this));\r\n }))\r\n .catch(this.handleError.bind(this));\r\n }\r\n\r\n protected delete(url): Observable {\r\n return observableFrom(this.auth.getToken())\r\n .catch(this.handleError.bind(this))\r\n .pipe(mergeMap(token => {\r\n const endpoint = `${environment.api.root}/${url}`;\r\n const headers = {'Authorization': `Bearer ${token}`};\r\n return this.http\r\n .delete(endpoint, {headers})\r\n .catch(this.handleError.bind(this));\r\n }))\r\n .catch(this.handleError.bind(this));\r\n }\r\n\r\n\r\n protected getFile(url): Observable {\r\n return this.http.get(url)\r\n .pipe(map((response: any) => {\r\n return response;\r\n }))\r\n .catch(this.handleError.bind(this));\r\n }\r\n\r\n protected getFileWithToken(url): Observable {\r\n return observableFrom(this.auth.getToken())\r\n .catch(this.handleError.bind(this))\r\n .pipe(mergeMap(token => {\r\n const endpoint = `${environment.api.root}/${url}`;\r\n const headers = {'Authorization': `Bearer ${token}`};\r\n return this.http\r\n .get(endpoint, {headers: headers , observe: 'response', responseType: 'blob'})\r\n .pipe(map(response => {\r\n return (response).body;\r\n }));\r\n }))\r\n .catch(this.handleError.bind(this));\r\n\r\n }\r\n\r\n protected getHtml(url): Observable {\r\n return this.http.get(url)\r\n .pipe(map(response => (response)._body))\r\n .catch(this.handleError.bind(this));\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AuthService } from './auth.service';\r\nimport { LogService } from './log.service';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { Qualification } from '../../shared/model/student/Qualification';\r\nimport { PreregApplication } from '../../shared/model/student/PreregApplication';\r\nimport { PreregApplicationStep } from '../../shared/model/student/PreregApplicationStep';\r\nimport { FileUpload } from '../../shared/model/FileUpload';\r\nimport { UploadType } from '../../shared/model/UploadType';\r\nimport { tap, map } from 'rxjs/operators';\r\nimport { of as observableOf, from as observableFrom } from 'rxjs';\r\nimport { RegistrantStatus } from '../../registration/model/RegistrantStatus';\r\nimport { FormTemplate } from '../../dynamic/model/FormTemplate';\r\nimport { PreregApplicationForm } from '../../shared/model/student/PreregApplicationForm';\r\nimport { ApplicationStatus } from '../../prereg/model/ApplicationStatus';\r\nimport { Placement } from '../../shared/model/student/Placement';\r\nimport { TrainingSchemeType } from '../../shared/model/student/TrainingSchemeType';\r\nimport { ServiceBase } from './service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nconst mockApplication = {\r\n trainee: {\r\n title: { name: 'Mr', id: 123 },\r\n forenames: 'Donald',\r\n middleName: '',\r\n surname: 'Trump',\r\n address: {\r\n line1: '10 street',\r\n line2: '',\r\n line3: '',\r\n town: 'New York',\r\n county: '',\r\n postcode: 'ASBC',\r\n country: 'USA'\r\n },\r\n contact: {\r\n email: 'donald@trump.com',\r\n mobilePhone: '',\r\n telephone1: '45674534'\r\n },\r\n dateOfBirth: '1945-10-12T00:00:00',\r\n qualification: { courseName: 'MPharm DeMonfort', courseType: 123 },\r\n equalityDiversity: undefined\r\n },\r\n forms: [new PreregApplicationForm({ formStatus: ApplicationStatus.NotStarted }, RegistrantStatus.Applicant)]\r\n};\r\n\r\nconst applicationSaveConfig = (application: PreregApplication, step: PreregApplicationStep) => {\r\n let config;\r\n switch (step) {\r\n case PreregApplicationStep.Training:\r\n config = {\r\n endpoint: 'v1.0/preregform/placement',\r\n payload: {\r\n placements: application.activeForm.placements.map(placement => placement.toJson()),\r\n trainingScheme: application.activeForm.trainingScheme\r\n },\r\n map: response => {\r\n response.placements.map((placement, i) => {\r\n const applicationFormPlacement = application.activeForm.placements[i];\r\n placement.tutors.map((tutors, index) => {\r\n applicationFormPlacement.tutors[index].tutoredById = tutors.tutoredById;\r\n });\r\n applicationFormPlacement.trainingSite.trainedAtId = placement.trainingSite.trainedAtId;\r\n applicationFormPlacement.placementId = placement.placementId;\r\n });\r\n }\r\n };\r\n break;\r\n default:\r\n const payload: any = Object.assign({}, application);\r\n payload.form = Object.assign({}, application.activeForm);\r\n delete payload.form.placements;\r\n delete payload.forms;\r\n delete payload.activeForm;\r\n config = {\r\n endpoint: 'v1.0/preregform',\r\n payload,\r\n map: response => {\r\n if (response.formId) {\r\n application.activeForm.id = response.formId;\r\n }\r\n }\r\n };\r\n }\r\n return config;\r\n};\r\n\r\n@Injectable()\r\nexport class StudentService extends ServiceBase {\r\n\r\n constructor(http: HttpClient, auth: AuthService, log: LogService, errorHandler: CustomErrorHandler) {\r\n super(http, auth, log, errorHandler);\r\n }\r\n\r\n templateGroup;\r\n application: PreregApplication;\r\n\r\n getQualifications(): Observable> {\r\n return super.get('v1.0/qualification')\r\n .pipe(map(data => data.qualifications));\r\n }\r\n\r\n getApplication(registrantStatus: RegistrantStatus): Observable {\r\n /* return observableOf(new PreregApplication(mockApplication, registrantStatus));*/\r\n return super.get('v1.0/preregform').pipe(map(data => {\r\n try {\r\n this.application = new PreregApplication(data, registrantStatus);\r\n } catch (e) {\r\n this.log.error('Error loading application', e);\r\n }\r\n return this.application;\r\n }));\r\n\r\n }\r\n\r\n getDeclarationFormTemplates(): Observable> {\r\n if (this.templateGroup) {\r\n return observableOf(this.templateGroup);\r\n } else {\r\n return super.get(`v1.0/forms?type=10`)\r\n .pipe(map(data => {\r\n this.templateGroup = data;\r\n return this.templateGroup;\r\n }));\r\n }\r\n }\r\n\r\n cancelCountersignature(formId) {\r\n return super.post('v1.0/preregform/update',\r\n { formId, status: ApplicationStatus.InProgress });\r\n }\r\n\r\n reSubmitApplication(formId) {\r\n return super.post('v1.0/preregform/resubmit', { formId });\r\n }\r\n\r\n setStep(formId, step: PreregApplicationStep) {\r\n return super.post('v1.0/preregform/resetstep', { formId, step });\r\n }\r\n\r\n saveApplication(application: PreregApplication, step: PreregApplicationStep): Observable {\r\n const config = applicationSaveConfig(application, step);\r\n return super.post(config.endpoint, config.payload).pipe(tap(config.map));\r\n }\r\n\r\n getPlacements(formId?: any): Observable<{ placements: Array, trainingScheme: { type: TrainingSchemeType, number: string }}> {\r\n return super.get('v1.0/preregform/placement', {'formId': formId}).pipe(map(data => {\r\n let placements: Array;\r\n if (!data.placements.length) {\r\n placements = [new Placement()];\r\n } else {\r\n placements = data.placements.map(placement => new Placement(placement));\r\n }\r\n placements.forEach(placement => {\r\n placement.trainingWindow = {\r\n start: {\r\n from: new Date(data.trainingDetails.startDateForCurrentYear.split('T')[0]),\r\n to: new Date(data.trainingDetails.firstTrainingCloseDateForCurrentYear.split('T')[0])\r\n },\r\n end: { to: undefined }\r\n };\r\n });\r\n return {\r\n placements,\r\n trainingScheme: data.trainingScheme\r\n };\r\n }));\r\n }\r\n\r\n\r\n saveApplicationPayment() {\r\n return super.post('v1.0/payment/initiate', { paymentType: 3 });\r\n }\r\n\r\n sendLearningContracts() {\r\n return super.post(`/v1.0/preregform/learningcontract`, {});\r\n }\r\n\r\n getCountersignerForm(id) {\r\n return super.get(`v1.0/countersigner/registrationform/${id}`)\r\n .pipe(map(data => new PreregApplication(data, null)));\r\n }\r\n\r\n submitCountersignatureOutcome(payload) {\r\n return super.post('v1.0/countersigner/countersignatures/decision', payload);\r\n }\r\n\r\n getCountersignatureRequests(pharmacistRegNumber: string) {\r\n return super.get('v1.0/countersigner/countersignatures');\r\n }\r\n\r\n recallFromCountersigner() {\r\n return super.delete(`v1.0/preregform/countersigner/recall`);\r\n }\r\n\r\n getSupportingDocument(file: FileUpload) {\r\n const url = `v1.0/${UploadType.RegistrationFormSupportingDocuments}/files/${file.fileId}`;\r\n return this.getFileWithToken(url);\r\n }\r\n\r\n sendLearningContract(data) {\r\n return super.post('/v1.0/preregform/learningcontract', { data });\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AuthService } from './auth.service';\r\nimport { LogService } from './log.service';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { TechnicianApplication } from '../../technician/model/TechnicianApplication';\r\nimport { TechnicianApplicationStep } from '../../technician/model/TechnicianApplicationStep';\r\nimport { FileUpload } from '../../shared/model/FileUpload';\r\nimport { UploadType } from '../../shared/model/UploadType';\r\nimport { tap, map } from 'rxjs/operators';\r\nimport { of as observableOf, from as observableFrom, of } from 'rxjs';\r\nimport { RegistrantStatus } from '../../registration/model/RegistrantStatus';\r\nimport { FormTemplate } from '../../dynamic/model/FormTemplate';\r\nimport { PreregApplicationForm } from '../../shared/model/student/PreregApplicationForm';\r\nimport { ApplicationStatus } from '../../prereg/model/ApplicationStatus';\r\nimport { TechnicianActivation } from '../../account/activation/model/TechnicianActivation';\r\nimport { TechnicianQualificationType } from '../../technician/model/TechnicianQualificationType';\r\nimport { ServiceBase } from './service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n\r\nconst applicationSaveConfig = (application: TechnicianApplication, step: TechnicianApplicationStep) => {\r\n const payload: any = Object.assign({}, application);\r\n payload.form = Object.assign({}, application.activeForm);\r\n payload.form.workExperiences = application.activeForm.workExperiences.map((experience) => {\r\n const jsonPayload = experience.toJson();\r\n const expectedWorkExperiencemembers = ['startDate', 'endDate', 'workedHoursPerWeek',\r\n 'jobtitle', 'supervisingPharmacist', 'premise'];\r\n return (Object.keys(jsonPayload).length < expectedWorkExperiencemembers.length) ? null : jsonPayload;\r\n });\r\n\r\n function formatExperience(workExperiences: Array): boolean {\r\n const experienceProps = [];\r\n const hasValidWorkExperiences = workExperiences.every(exp => !!exp);\r\n workExperiences.forEach((experience) => {\r\n for (const key in experience) {\r\n experienceProps.push(experience[key]);\r\n }\r\n });\r\n const hasValidExperienceProperties = experienceProps.every(prop => !!prop);\r\n return hasValidWorkExperiences && hasValidExperienceProperties;\r\n }\r\n\r\n const validExperiences = formatExperience(payload.form.workExperiences);\r\n\r\n if (!validExperiences) {\r\n payload.form.workExperiences = [];\r\n }\r\n\r\n // console.log({ payload :payload.form});\r\n delete payload.forms;\r\n delete payload.activeForm;\r\n const config = {\r\n endpoint: 'v1.0/technicianform',\r\n payload,\r\n map: response => {\r\n if (response.formId) {\r\n application.activeForm.id = response.formId;\r\n }\r\n }\r\n };\r\n\r\n return config;\r\n};\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TechnicianService extends ServiceBase {\r\n\r\n constructor(http: HttpClient, auth: AuthService, log: LogService, errorHandler: CustomErrorHandler) {\r\n super(http, auth, log, errorHandler);\r\n }\r\n\r\n templateGroup;\r\n application: TechnicianApplication;\r\n\r\n /* \r\n Start of pharmacy technician calls\r\n */\r\n\r\n tempSignUp(activation: TechnicianActivation) {\r\n const payload = {\r\n forenames: activation.forenames,\r\n surname: activation.surname,\r\n middleName: activation.middleName,\r\n dateOfBirth: activation.dob\r\n };\r\n return super.post(`v1.0/temp/signup`, payload);\r\n }\r\n\r\n\r\n getTechnicianDetails() {\r\n return super.get('v1.0/temp/signup').pipe(\r\n map(technicianDetails => {\r\n const payload = {\r\n forenames: technicianDetails.forenames,\r\n surname: technicianDetails.surname,\r\n middleName: technicianDetails.middleName,\r\n dob: technicianDetails.dateOfBirth\r\n }\r\n return payload;\r\n }));\r\n }\r\n\r\n confirmTechnicianDetails(activation: TechnicianActivation) {\r\n const payload = {\r\n forenames: activation.forenames,\r\n surname: activation.surname,\r\n middleName: activation.middleName,\r\n dateOfBirth: activation.dob\r\n };\r\n return super.post(`v1.0/temp/confirm`, payload);\r\n }\r\n\r\n getQualificationList(qualificationType: TechnicianQualificationType) {\r\n return super.get(`v1.0/qualification/?QualificationType=${qualificationType}`)\r\n .pipe(map(data => data.qualifications));\r\n }\r\n\r\n\r\n getApplication(registrantStatus: RegistrantStatus): Observable {\r\n /* return observableOf(new PreregApplication(mockApplication, registrantStatus));*/\r\n return super.get('v1.0/technicianform').pipe(map(data => {\r\n try {\r\n this.application = new TechnicianApplication(data, registrantStatus);\r\n } catch (e) {\r\n this.log.error('Error loading application', e);\r\n }\r\n return this.application;\r\n }));\r\n\r\n }\r\n\r\n getDeclarationFormTemplates(): Observable> {\r\n if (this.templateGroup) {\r\n return observableOf(this.templateGroup);\r\n } else {\r\n return super.get(`v1.0/forms?group=4`)\r\n .pipe(map(data => {\r\n this.templateGroup = data;\r\n return this.templateGroup;\r\n }));\r\n }\r\n }\r\n\r\n\r\n sendToCountersigner(regNumber: string) {\r\n return super.post(`v1.0/technicianform/countersigner/${regNumber}`, {});\r\n }\r\n\r\n\r\n recallFromCountersigner() {\r\n return super.post(`v1.0/technicianform/countersigner/recall`, {});\r\n }\r\n\r\n getSupportingDocuments(file: FileUpload) {\r\n const url = `v1.0/${UploadType.PharmacyTechnicianSupportingDocuments}/files/${file.fileId}`;\r\n return this.getFileWithToken(url);\r\n }\r\n\r\n\r\n\r\n saveApplicationPayment() {\r\n return super.post('v1.0/payment/initiate', { paymentType: 4 });\r\n }\r\n\r\n\r\n saveApplication(application: TechnicianApplication, step: TechnicianApplicationStep): Observable {\r\n const config = applicationSaveConfig(application, step);\r\n return super.post(config.endpoint, config.payload).pipe(tap(config.map));\r\n }\r\n\r\n\r\n\r\n getSupportingDocument(file: FileUpload) {\r\n const url = `v1.0/${UploadType.PharmacyTechnicianSupportingDocuments}/files/${file.fileId}`;\r\n return this.getFileWithToken(url);\r\n }\r\n\r\n\r\n submitCountersignatureOutcome(payload) {\r\n return super.post('v1.0/technicianapplicant/countersigner/countersignatures/decision', payload);\r\n }\r\n\r\n\r\n setStep(formId, step: TechnicianApplicationStep) {\r\n return super.post('v1.0/technicianform/resetstep', { formId, step });\r\n }\r\n\r\n\r\n cancelCountersignature(formId) {\r\n return super.post('v1.0/technicianform/update',\r\n { formId, status: ApplicationStatus.InProgress });\r\n }\r\n\r\n saveFirstYearPayment() {\r\n return super.post('v1.0/payment/initiate', { paymentType: 5 });\r\n }\r\n\r\n\r\n\r\n /* \r\n End of pharmacy technician calls\r\n */\r\n\r\n\r\n\r\n reSubmitApplication(formId) {\r\n return super.post('v1.0/preregform/resubmit', { formId });\r\n }\r\n\r\n\r\n sendLearningContracts() {\r\n return super.post(`/v1.0/preregform/learningcontract`, {});\r\n }\r\n\r\n getCountersignerForm(id) {\r\n return super.get(`v1.0/countersigner/registrationform/${id}`)\r\n .pipe(map(data => new TechnicianApplication(data, null)));\r\n }\r\n\r\n\r\n getCountersignatureRequests(pharmacistRegNumber: string) {\r\n return super.get('v1.0/countersigner/countersignatures');\r\n }\r\n\r\n\r\n\r\n sendLearningContract(data) {\r\n return super.post('/v1.0/preregform/learningcontract', { data });\r\n }\r\n\r\n}\r\n","import { Injectable, EventEmitter } from '@angular/core';\r\nimport { AuthService } from './auth.service';\r\n\r\nimport { RequestOptions, Headers, URLSearchParams } from '@angular/http';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nimport { UserActivity } from '../model/UserActivity';\r\nimport { LogService } from './log.service';\r\nimport { ServiceBase } from './service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable()\r\nexport class TrackingService extends ServiceBase {\r\n\r\n constructor(http: HttpClient, auth: AuthService, log: LogService, errorHandler: CustomErrorHandler) {\r\n super(http, auth, log, errorHandler);\r\n }\r\n\r\n postActivity(activity: UserActivity, location: string, data?: any): any {\r\n\r\n const headers: Headers = new Headers();\r\n const payload = {\r\n A: activity,\r\n L: location,\r\n V: JSON.stringify(data)\r\n };\r\n return this.post('v1.0/t', payload);\r\n }\r\n\r\n}\r\n","\r\nimport {throwError as observableThrowError} from 'rxjs';\r\nimport { Injectable, NgZone } from '@angular/core';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { map, tap } from 'rxjs/operators';\r\nimport { environment } from '../../../environments/environment';\r\nimport { LogService } from './log.service';\r\nimport { Router } from '@angular/router';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable()\r\nexport class UpdaterService {\r\n\r\n\r\n updateInterval;\r\n updating = false;\r\n updateRequired = false;\r\n version;\r\n\r\n\r\n constructor(protected http: HttpClient, private log: LogService, private router: Router, private zone: NgZone) {\r\n this.version = { current: environment.version };\r\n }\r\n\r\n check() {\r\n return this.http\r\n .get(environment.webRoot + '/assets/version.json?t=' + new Date().getTime())\r\n .pipe(\r\n map(response => {\r\n const config = response;\r\n this.updateRequired = config['version'] !== environment.version;\r\n return { current: environment.version, deployed: config['version'] };\r\n }),\r\n tap(data => {\r\n this.log.offline(false);\r\n })).catch(response => {\r\n if (response.status === 0 ) {\r\n this.log.offline(true);\r\n }\r\n return observableThrowError(response);\r\n }\r\n );\r\n }\r\n\r\n startChecking() {\r\n this.updateInterval = setInterval(this.checkForUpdates.bind(this), 60000);\r\n }\r\n\r\n checkForUpdates() {\r\n if (this.updateRequired) { return; }\r\n this.check().subscribe(version => {\r\n setTimeout(() => {\r\n this.version = version;\r\n }, 200);\r\n });\r\n }\r\n\r\n update() {\r\n this.updating = true;\r\n setTimeout(() => {\r\n this.router.navigate(['']).then(() => {\r\n this.zone.runOutsideAngular(() => {\r\n if(window.location.href.indexOf('#') >= 0) {\r\n window.location.reload(); \r\n } else {\r\n window.location.href = window.location.href;\r\n }\r\n });\r\n });\r\n });\r\n }\r\n\r\n postpone() {\r\n this.updateRequired = false;\r\n window.clearInterval(this.updateInterval);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AuthService } from './auth.service';\r\nimport { LogService } from './log.service';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { RequestOptions, Headers } from '@angular/http';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\n\r\n\r\nimport { UploadType } from '../../shared/model/UploadType';\r\nimport { FileUpload } from '../../shared/model/FileUpload';\r\nimport { ServiceBase } from './service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable()\r\nexport class UploadService extends ServiceBase {\r\n\r\n constructor(http: HttpClient, auth: AuthService, log: LogService, errorHandler: CustomErrorHandler) {\r\n super(http, auth, log, errorHandler);\r\n }\r\n\r\n upload(type: UploadType, formData: FormData, sessionId: string) {\r\n const url = `v1.0/${type}/uploads/${sessionId}`;\r\n return this.post(url, formData);\r\n }\r\n\r\n deleteFile(upload: FileUpload, deleteUrl) {\r\n return this.delete(`${deleteUrl}/${upload.fileId}`);\r\n }\r\n}\r\n","import { Injectable, Input } from '@angular/core';\r\nimport { BehaviorSubject, Observable, Subject } from 'rxjs';\r\nimport { FormTemplate } from '../../dynamic/model/FormTemplate';\r\nimport { ApplicationFormMode } from '../../prereg/model/ApplicationFormMode';\r\nimport { ApplicationStatus } from '../../prereg/model/ApplicationStatus';\r\nimport { RegistrantStatus } from '../../registration/model/RegistrantStatus';\r\nimport { VoluntaryRemovalApplication } from '../../registration/voluntary-removal/model/VoluntaryRemovalApplication';\r\nimport { VoluntaryRemovalApplicationStep } from '../../registration/voluntary-removal/model/VoluntaryRemovalApplicationStep';\r\nimport { AuthService } from './auth.service';\r\nimport { CustomErrorHandler } from './CustomErrorHandler';\r\nimport { LogService } from './log.service';\r\n\r\nimport { tap, map } from 'rxjs/operators';\r\nimport { of as observableOf, from as observableFrom, of } from 'rxjs';\r\nimport { FormAnswer } from '../../dynamic/model/FormAnswer';\r\nimport { AnswerType } from '../../dynamic/model/AnswerType';\r\nimport { PaymentType } from '../model/paymentType';\r\nimport { RegistrantType } from '../../registration/model/RegistrantType';\r\nimport { ServiceBase } from './service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nconst mockAppData = {\r\n\r\n trainee: {\r\n title: { name: 'XYZ', id: 0 },\r\n forenames: '',\r\n middleName: '',\r\n surname: '',\r\n address: {\r\n line1: 'XXX',\r\n line2: '',\r\n line3: '',\r\n town: 'YYY',\r\n county: 'ZZZ',\r\n postcode: 'X123',\r\n country: 'XYZ'\r\n },\r\n contact: {\r\n email: 'test@test.com',\r\n mobilePhone: '123456789',\r\n telephone1: ''\r\n },\r\n dateOfBirth: '01-01-1985',\r\n qualification: { courseName: 'pharmacy', courseType: 1 },\r\n equalityDiversity: {\r\n ethnicity: 0,\r\n ethnicityOther: '',\r\n nationality: 0,\r\n religion: 0,\r\n religionOther: '',\r\n disabled: 0,\r\n disabilityDetails: '',\r\n gender: 0,\r\n sexualOrientation: 0\r\n }\r\n },\r\n forms: [{\r\n id: '',\r\n formStatus: ApplicationStatus.InProgress,\r\n isMentorRegistered: false,\r\n declarations: [],\r\n attachments: [],\r\n isOverallDeclarationConfirmed: false,\r\n step: VoluntaryRemovalApplicationStep.DateReasonForRemovalRequired,\r\n minStep: VoluntaryRemovalApplicationStep.DateReasonForRemovalRequired,\r\n mode: ApplicationFormMode.Editable,\r\n registrantStatus: RegistrantStatus.Applicant\r\n }],\r\n activeForm: {\r\n id: '',\r\n formStatus: ApplicationStatus.InProgress,\r\n isMentorRegistered: false,\r\n declarations: [],\r\n attachments: [],\r\n isOverallDeclarationConfirmed: false,\r\n step: VoluntaryRemovalApplicationStep.DateReasonForRemovalRequired,\r\n minStep: VoluntaryRemovalApplicationStep.DateReasonForRemovalRequired,\r\n mode: ApplicationFormMode.Editable,\r\n declaration: {\r\n isQ1Confirmed: true,\r\n isQ2Confirmed: true\r\n },\r\n isSuperintendent: true,\r\n registrantStatus: RegistrantStatus.Applicant,\r\n removeFromTheRegister: true,\r\n finalDateOfRemoval: new Date('07-09-2022'),\r\n removalDateChosen: new Date('03-10-2022'),\r\n reasonForRemoval: null,\r\n details: null,\r\n hasAnnotation: true,\r\n ownerName: 'Mr.XXX YYY',\r\n ownerNumber: '1234567',\r\n equalityDiversity: {\r\n disabilityDetails: '',\r\n disabled: 981360000,\r\n ethnicity: 981360003,\r\n ethnicityOther: '',\r\n gender: 981360001,\r\n nationality: undefined,\r\n religion: 981360000,\r\n religionOther: '',\r\n sexualOrientation: 981360005\r\n },\r\n applicationFees: 256,\r\n feeDescription: 'quarterly renewal fee',\r\n collectionMethod: 'online',\r\n dueDate: '31/05/2022',\r\n amount: 256,\r\n outStandingFee: 256\r\n },\r\n status: ApplicationStatus.NotStarted\r\n};\r\n\r\n@Injectable()\r\nexport class VoluntaryRemovalService extends ServiceBase {\r\n\r\n application: VoluntaryRemovalApplication;\r\n templateGroup: any;\r\n dataSource: Subject = new Subject();\r\n data$: Observable;\r\n PaymentType: PaymentType;\r\n RegistrantType: RegistrantType;\r\n type: PaymentType;\r\n registrant;\r\n isOutStandingPaymentZero = false;\r\n\r\n constructor(http: HttpClient, auth: AuthService, log: LogService, errorHandler: CustomErrorHandler) {\r\n super(http, auth, log, errorHandler);\r\n this.registrant = auth.user.registrant;\r\n this.data$ = this.dataSource.asObservable();\r\n }\r\n\r\n sendFtpDeclarationAnswers(ftpAnsers) {\r\n this.dataSource.next(ftpAnsers);\r\n }\r\n\r\n get isPaymentPending() {\r\n return !this.isOutStandingPaymentZero;\r\n }\r\n\r\n isOutstandingPaymentZero(expiryDate, dateOfRemoval, pendingFee) {\r\n if (!expiryDate || !dateOfRemoval) {\r\n this.isOutStandingPaymentZero = false;\r\n } else {\r\n const expDate = new Date(expiryDate);\r\n const dayJustBeforeNextRenewalYear = expDate;\r\n dayJustBeforeNextRenewalYear.setFullYear(expDate.getFullYear() - 1);\r\n\r\n if (new Date(dateOfRemoval).setHours(0, 0, 0, 0) <= dayJustBeforeNextRenewalYear.setHours(0, 0, 0, 0)) {\r\n this.isOutStandingPaymentZero = true;\r\n } else {\r\n this.isOutStandingPaymentZero = !pendingFee;\r\n }\r\n }\r\n\r\n return this.isOutStandingPaymentZero;\r\n }\r\n\r\n\r\n\r\n getApplication(registrantStatus: RegistrantStatus) {\r\n return super.get('v1.0/voluntaryremovalapp').pipe(map(data => {\r\n try {\r\n this.application = new VoluntaryRemovalApplication(data, registrantStatus);\r\n } catch (e) {\r\n this.log.error('Error loading the application', e);\r\n }\r\n return this.application;\r\n }));\r\n }\r\n\r\n getDeclarationFormTemplates(): Observable> {\r\n if (this.templateGroup) {\r\n return observableOf(this.templateGroup);\r\n } else {\r\n return super.get(`v1.0/forms?group=7`)\r\n .pipe(map(data => {\r\n this.templateGroup = data;\r\n return this.templateGroup;\r\n }));\r\n }\r\n }\r\n\r\n setStep(formId, step: VoluntaryRemovalApplicationStep) {\r\n return super.post('v1.0/voluntaryremovalapp/resetstep', { formId, step });\r\n }\r\n\r\n saveVRApplication(application) {\r\n const payload: any = Object.assign({}, application);\r\n payload.form = application.activeForm;\r\n delete payload.forms;\r\n delete payload.activeForm;\r\n return super.post('v1.0/voluntaryremovalapp', payload).pipe(tap(response => {\r\n application.activeForm.id = response.formId;\r\n }));\r\n }\r\n\r\n\r\n submitVoluntaryApplicationWithoutDues(formId) {\r\n return super.post('v1.0/voluntaryremovalapp/submit', formId);\r\n }\r\n\r\n saveApplicationPayment() {\r\n if (this.registrant.type === RegistrantType.Pharmacist) {\r\n if (this.application.outstandingPayments.length === 1) {\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PharmacistVRemoval1QuarterRenewalFee )});\r\n } else if (this.application.outstandingPayments.length === 2) {\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PharmacistVRemoval2QuarterRenewalFee )});\r\n } else if (this.application.outstandingPayments.length === 3) {\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PharmacistVRemoval3QuarterRenewalFee )});\r\n }\r\n } else if (this.registrant.type === RegistrantType.PharmacyTechnician) {\r\n if (this.application.outstandingPayments.length === 1) {\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PTechnicianVRemoval1QuarterRenewalFee )});\r\n } else if (this.application.outstandingPayments.length === 2) {\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PTechnicianVRemoval2QuarterRenewalFee )});\r\n } else if (this.application.outstandingPayments.length === 3) {\r\n return super.post('v1.0/payment/initiate', { paymentType: (PaymentType.PTechnicianVRemoval3QuarterRenewalFee )});\r\n }\r\n }\r\n }\r\n\r\n}\r\n","import { Component, ViewChild, Input, HostListener, AfterViewInit, OnDestroy,\r\n ElementRef, NgZone, Renderer2 } from '@angular/core';\r\nimport { Tooltip } from './Tooltip';\r\nimport { TooltipService } from './tooltip.service';\r\nimport Popper from 'popper.js';\r\n\r\n@Component({\r\n selector: 'app-tooltip',\r\n moduleId: module.id,\r\n templateUrl: './tooltip.component.html',\r\n styleUrls: ['./tooltip.component.scss']\r\n})\r\nexport class TooltipComponent implements AfterViewInit, OnDestroy {\r\n\r\n public tooltip: Tooltip;\r\n @Input('tooltip') set setTooltip(tooltip) {\r\n this.tooltip = tooltip;\r\n if (this.tooltip) {\r\n this.create();\r\n }\r\n }\r\n @Input() index;\r\n @ViewChild('tooltipRef', { static: true }) tooltipElement: ElementRef;\r\n @ViewChild('focus') focusElement: ElementRef;\r\n\r\n private popper: Popper;\r\n\r\n constructor(private zone: NgZone, public service: TooltipService,\r\n private renderer: Renderer2) {\r\n\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.create();\r\n }\r\n\r\n get allowNext() {\r\n if (!this.service.activeContext) { return false; }\r\n return this.index < this.service.activeContext.tooltips.length - 1;\r\n }\r\n\r\n nextTip() {\r\n this.service.nextTip();\r\n }\r\n\r\n exit() {\r\n this.service.close();\r\n }\r\n\r\n create() {\r\n if (!this.tooltip || !this.tooltip.source) { return; }\r\n this.zone.runOutsideAngular(() => {\r\n this.popper = new Popper(\r\n this.tooltip.source.nativeElement,\r\n this.tooltipElement.nativeElement,\r\n {\r\n placement: this.tooltip.placement || 'right',\r\n });\r\n });\r\n setTimeout(() => {\r\n if (!this.service.activeContext) {\r\n this.tooltip.source.nativeElement.focus();\r\n } else {\r\n this.focusElement.nativeElement.focus();\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.destroy();\r\n }\r\n\r\n destroy() {\r\n if (this.popper) {\r\n this.zone.runOutsideAngular(() => {\r\n this.popper.destroy();\r\n });\r\n\r\n this.popper = null;\r\n this.service.soloTip = undefined;\r\n }\r\n }\r\n\r\n\r\nremoveTags(content): string {\r\n let withoutTags = content.replace(/<[^>]*>/g, ' ');\r\n withoutTags = withoutTags.replace(/\\s+/g, ' ');\r\n return withoutTags.trim();\r\n}\r\n\r\n getAriaLabel() {\r\n const label = this.removeTags(this.tooltip.content);\r\n\r\n if (!this.service.activeContext) { return label; }\r\n if (this.allowNext) {\r\n return label + ' Hit \\'Enter\\' to see the next tip, or \\'escape\\' to exit.';\r\n } else {\r\n return label + ' Hit \\'Enter\\' to finish.';\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, OnInit, OnDestroy, AfterViewInit, Input, ElementRef, HostListener, HostBinding, Renderer2 } from '@angular/core';\r\nimport { TooltipService } from './tooltip.service';\r\nimport { Tooltip } from './Tooltip';\r\nimport { AuthService } from '../service/auth.service';\r\n\r\n@Directive({ selector: '[appTooltip]' })\r\nexport class TooltipDirective implements OnInit, OnDestroy {\r\n\r\n appTooltip: Tooltip;\r\n @Input('appTooltip') set setAppTooltip(tooltip: Tooltip) {\r\n if (!tooltip) { return; }\r\n if (this.appTooltip) {\r\n this.destroy();\r\n }\r\n this.appTooltip = tooltip;\r\n this.init();\r\n }\r\n hovering = false;\r\n showDelay = 500;\r\n @HostBinding('attr.aria-label') ariaLabel;\r\n\r\n constructor(private tooltipService: TooltipService,\r\n private element: ElementRef, private service: TooltipService,\r\n private auth: AuthService,\r\n private renderer: Renderer2) { }\r\n\r\n ngOnInit() {\r\n if (!this.appTooltip) { return; }\r\n this.init();\r\n }\r\n\r\n init() {\r\n this.appTooltip = Object.assign({}, this.appTooltip,\r\n {\r\n source: this.element,\r\n visible: false,\r\n width: this.appTooltip.width || 150\r\n }\r\n );\r\n if (!this.appTooltip.used) {\r\n this.service.add(this.appTooltip);\r\n }\r\n\r\n this.ariaLabel = this.removeTags(this.appTooltip.content);\r\n\r\n }\r\n\r\n removeTags(content): string {\r\n let withoutTags = content.replace(/<[^>]*>/g, ' ');\r\n withoutTags = withoutTags.replace(/\\s+/g, ' ');\r\n return withoutTags.trim();\r\n }\r\n\r\n\r\n @HostListener('mouseenter', ['$event']) onMouseEnter($event) {\r\n this.show();\r\n }\r\n @HostListener('focus', ['$event']) onFocus($event) {\r\n this.show();\r\n }\r\n\r\n @HostListener('mouseleave', ['$event']) onMouseLeave($event) {\r\n this.hide();\r\n }\r\n @HostListener('blur', ['$event']) onBlur($event) {\r\n this.hide();\r\n }\r\n\r\n show() {\r\n if (this.auth.user && this.auth.user.preference &&\r\n this.auth.user.preference.ui && !this.auth.user.preference.ui.showTooltips) { return; }\r\n if (!this.appTooltip || this.appTooltip.notSolo) { return; }\r\n if (this.service.soloTip === this.appTooltip) { return; }\r\n if (this.service.activeContext) { return; }\r\n this.hovering = true;\r\n setTimeout(() => {\r\n if (this.service.activeContext) { return; }\r\n if (this.hovering && !(this.appTooltip.isHidden && this.appTooltip.isHidden())) {\r\n this.service.showTooltip(this.appTooltip);\r\n }\r\n }, this.showDelay);\r\n }\r\n\r\n hide() {\r\n if (!this.appTooltip) { return; }\r\n this.hovering = false;\r\n this.service.hideTooltip(this.appTooltip);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy();\r\n }\r\n\r\n destroy(): void {\r\n if (!this.appTooltip) { return; }\r\n this.service.remove(this.appTooltip);\r\n this.hovering = false;\r\n this.appTooltip = undefined;\r\n this.service.soloTip = undefined;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TooltipService } from './tooltip.service';\r\nimport { TooltipDirective } from './tooltip.directive';\r\nimport { TooltipContextDirective } from './tooltipContext.directive';\r\nimport { TooltipComponent } from './tooltip.component';\r\nimport { TooltipContainerComponent } from './tooltipContainer.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n TooltipDirective,\r\n TooltipContainerComponent,\r\n TooltipComponent,\r\n TooltipContextDirective\r\n ],\r\n exports: [\r\n TooltipDirective,\r\n TooltipContainerComponent,\r\n TooltipComponent,\r\n TooltipContextDirective\r\n ]\r\n})\r\nexport class TooltipModule { }\r\n","import { Injectable, EventEmitter } from '@angular/core';\r\nimport { Tooltip } from './Tooltip';\r\nimport { TooltipContext } from './TooltipContext';\r\nimport { LayoutService } from '../service/layout.service';\r\n\r\n@Injectable()\r\nexport class TooltipService {\r\n\r\n constructor(private layout: LayoutService) {\r\n\r\n }\r\n public contexts: Array = [];\r\n public activeContext: TooltipContext;\r\n allVisible = false;\r\n public activeContextChanged = new EventEmitter();\r\n public activeTipChanged = new EventEmitter();\r\n public activeTipIndex = 0;\r\n active: Array = [];\r\n public soloTip: Tooltip;\r\n\r\n public add(tooltip: Tooltip) {\r\n if (!tooltip.contextId) { return; }\r\n setTimeout(() => {\r\n const contexts = this.contexts.filter(c => c.id === tooltip.contextId);\r\n if (!contexts.length) { return; }\r\n const context = contexts[0];\r\n const alreadyAdded = !!context.tooltips.filter(t => t.id === tooltip.id).length;\r\n if (!alreadyAdded) {\r\n context.tooltips.push(tooltip);\r\n }\r\n });\r\n\r\n }\r\n\r\n public addContext(context: TooltipContext) {\r\n this.contexts.push(context);\r\n }\r\n\r\n public removeContext(context: TooltipContext) {\r\n const idx = this.contexts.indexOf(context);\r\n if (this.activeContext && context.id === this.activeContext.id) {\r\n this.activeContext = undefined;\r\n }\r\n this.contexts.splice(idx, 1);\r\n }\r\n\r\n\r\n\r\n public remove(tooltip: Tooltip) {\r\n if (!tooltip.contextId) { return; }\r\n const contextFilter = this.contexts.filter(c => c.id === tooltip.contextId);\r\n if (contextFilter.length > 0) {\r\n const context = contextFilter[0];\r\n const idx = context.tooltips.indexOf(tooltip);\r\n context.tooltips.splice(idx, 1);\r\n }\r\n\r\n }\r\n\r\n public close() {\r\n this.setActiveContext(undefined);\r\n this.soloTip = undefined;\r\n setTimeout(() => {\r\n this.setActiveContext(undefined);\r\n this.soloTip = undefined;\r\n }, 350);\r\n }\r\n\r\n public setActiveContext(contextId: string) {\r\n this.soloTip = undefined;\r\n if (contextId) {\r\n const context = this.contexts.filter(c => c.id === contextId)[0];\r\n this.activeContext = context;\r\n this.active = this.activeContext.tooltips.sort((a, b) => {\r\n if (a.order > b.order) { return 1; }\r\n return -1;\r\n });\r\n this.layout.setOverlay(true);\r\n } else {\r\n this.activeContext = undefined;\r\n this.layout.setOverlay(false);\r\n this.active = [];\r\n }\r\n\r\n this.activeTipIndex = 0;\r\n this.activeContextChanged.emit(this.activeContext);\r\n this.activeTipChanged.emit(this.activeTooltip);\r\n }\r\n\r\n get activeTooltip() {\r\n if (!this.activeContext || !this.activeContext.tooltips.length) { return undefined; }\r\n return this.activeContext.tooltips[this.activeTipIndex];\r\n }\r\n\r\n showTooltip(tooltip: Tooltip) {\r\n this.soloTip = tooltip;\r\n }\r\n hideTooltip(tooltip: Tooltip) {\r\n if (this.soloTip === tooltip) {\r\n this.soloTip = undefined;\r\n }\r\n }\r\n\r\n public nextTip() {\r\n if (this.activeTipIndex < this.activeContext.tooltips.length - 1) {\r\n this.activeTipIndex++;\r\n } else {\r\n this.setActiveContext(undefined);\r\n this.activeTipIndex = 0;\r\n }\r\n this.activeTipChanged.emit(this.activeTooltip);\r\n }\r\n\r\n public prevTip() {\r\n if (this.activeTipIndex > 0) {\r\n this.activeTipIndex--;\r\n } else {\r\n this.activeTipIndex = this.activeContext.tooltips.length - 1;\r\n }\r\n this.activeTipChanged.emit(this.activeTooltip);\r\n }\r\n\r\n\r\n public toggleActiveContext(contextId: string) {\r\n if (this.activeContext && this.activeContext.id === contextId) {\r\n this.setActiveContext(undefined);\r\n } else {\r\n this.setActiveContext(contextId);\r\n }\r\n }\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 { TooltipService } from './tooltip.service';\r\n\r\n@Component({\r\n selector: 'app-tooltip-container',\r\n moduleId: module.id,\r\n templateUrl: './tooltipContainer.component.html',\r\n styleUrls: ['./tooltipContainer.scss']\r\n})\r\nexport class TooltipContainerComponent {\r\n\r\n constructor(public service: TooltipService) { }\r\n\r\n showSoloTip() {\r\n return !!this.service.soloTip;\r\n }\r\n\r\n}\r\n","import { Directive, OnInit, OnDestroy, Input, ElementRef, HostListener, Renderer2 } from '@angular/core';\r\nimport { TooltipService } from './tooltip.service';\r\nimport { TooltipContext } from './TooltipContext';\r\n\r\n@Directive({ selector: '[appTooltipContext]' })\r\nexport class TooltipContextDirective implements OnInit, OnDestroy {\r\n\r\n @Input() appTooltipContext = '';\r\n context: TooltipContext;\r\n private id: number;\r\n sub1: any;\r\n sub2: any;\r\n\r\n constructor(private renderer: Renderer2, private tooltipService: TooltipService,\r\n private element: ElementRef, private service: TooltipService) { }\r\n\r\n ngOnInit() {\r\n\r\n this.context = {\r\n id: this.appTooltipContext,\r\n source: this.element,\r\n tooltips: [],\r\n active: false\r\n };\r\n this.service.addContext(this.context);\r\n\r\n this.sub1 = this.service.activeTipChanged.subscribe((activeTooltip) => {\r\n this.service.contexts.forEach(context => {\r\n context.tooltips.forEach(tooltip => {\r\n this.renderer.removeClass(tooltip.source.nativeElement, 'foreground');\r\n });\r\n });\r\n if (activeTooltip) {\r\n this.renderer.addClass(activeTooltip.source.nativeElement, 'foreground');\r\n }\r\n });\r\n\r\n this.sub2 = this.service.activeContextChanged.subscribe((activeContext) => {\r\n\r\n if (activeContext && activeContext.id === this.context.id) {\r\n this.renderer.addClass(this.element.nativeElement, 'tooltips-active');\r\n } else {\r\n this.renderer.removeClass(this.element.nativeElement, 'tooltips-active');\r\n }\r\n });\r\n }\r\n\r\n\r\n ngOnDestroy(): void {\r\n this.service.removeContext(this.context);\r\n this.sub1.unsubscribe();\r\n this.sub2.unsubscribe();\r\n }\r\n\r\n}\r\n","import { Component, OnInit, ErrorHandler } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { LogService } from '../core/service/log.service';\r\nimport { User } from '../account/model/User';\r\nimport { StudentService } from '../core/service/student.service';\r\nimport { PreregApplication } from '../shared/model/student/PreregApplication';\r\nimport { ApplicationStatus } from '../prereg/model/ApplicationStatus';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'app-student-dashboard',\r\n moduleId: module.id,\r\n templateUrl: './studentDashboard.component.html',\r\n styleUrls: ['../style/dashboard.scss']\r\n})\r\nexport class StudentDashboardComponent implements OnInit {\r\n\r\n user: User;\r\n loadingApplication = false;\r\n application: PreregApplication;\r\n ApplicationStatus = ApplicationStatus;\r\n isApplicationOpen;\r\n applicationClosedMessage;\r\n error = false;\r\n constructor(private _router: Router, private auth: AuthService,\r\n private log: LogService, private service: StudentService, private datePipe: DatePipe\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.load();\r\n }\r\n\r\n load() {\r\n this.user = this.auth.user;\r\n this.loadApplication();\r\n }\r\n\r\n loadApplication() {\r\n\r\n this.loadingApplication = true;\r\n this.service.getApplication(this.auth.user.registrationStatus)\r\n .subscribe(application => {\r\n this.application = application;\r\n this.isApplicationOpen = this.application.preRegistrationApplicationScheme.isOpened;\r\n const from = this.datePipe.transform(this.application.preRegistrationApplicationScheme.startDateForCurrentYear, 'd MMMM yyyy');\r\n const to = this.datePipe.transform(this.application.preRegistrationApplicationScheme.endDateForCurrentYear, 'd MMMM yyyy');\r\n this.applicationClosedMessage = `Applications open between ${from} and ${to}.`;\r\n this.loadingApplication = false;\r\n\r\n }, error => {\r\n this.error = error;\r\n this.loadingApplication = false;\r\n });\r\n }\r\n\r\n}\r\n","\r\n
    \r\n

    Home

    \r\n

    \r\n A summary of your trainee pharmacist application status.\r\n

    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n \r\n {{ user }}\r\n \r\n
    \r\n\r\n
    \r\n\r\n \r\n Application\r\n\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n {{ ApplicationStatus[application.status] | caseSplit }}\r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n \r\n
    \r\n {{ applicationClosedMessage }}\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n \r\n
    Error
    \r\n
    \r\n
    \r\n
    ","import { NgModule, ErrorHandler } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormAlternativeComponent } from './formAlternative.component';\r\nimport { FormQuestionComponent } from './formQuestion.component';\r\nimport { FollowupQuestionComponent } from './followupQuestion.component';\r\nimport { FormQuestionControlComponent } from './formQuestionControl.component';\r\nimport { SharedModule } from '../shared/shared.module';\r\nimport { CustomErrorHandler } from '../core/service/CustomErrorHandler';\r\nimport { MatNativeDateModule } from '@angular/material/core';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\n\r\n@NgModule({\r\n imports: [\r\n FormsModule,\r\n CommonModule,\r\n SharedModule,\r\n MatNativeDateModule,\r\n MatDatepickerModule\r\n ],\r\n declarations: [\r\n FormAlternativeComponent,\r\n FormQuestionComponent,\r\n FollowupQuestionComponent,\r\n FormQuestionControlComponent\r\n ],\r\n exports: [\r\n FormAlternativeComponent,\r\n FormQuestionComponent,\r\n FollowupQuestionComponent,\r\n FormQuestionControlComponent\r\n ],\r\n providers: [\r\n { provide: ErrorHandler, useClass: CustomErrorHandler }\r\n ]\r\n})\r\nexport class DynamicModule { }\r\n","import { Component, Input, Output, OnInit, EventEmitter, ChangeDetectionStrategy } from '@angular/core';\r\nimport { FormQuestion } from './model/FormQuestion';\r\nimport { Form } from './model/Form';\r\nimport { AnswerType } from './model/AnswerType';\r\nimport {\r\n trigger,\r\n state,\r\n style,\r\n animate,\r\n transition\r\n} from '@angular/animations';\r\n\r\n@Component({\r\n selector: 'app-followup-question',\r\n moduleId: module.id,\r\n templateUrl: './followupQuestion.component.html',\r\n styleUrls: ['./followupQuestion.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [\r\n trigger('openState', [\r\n state('open', style({\r\n height: '*' \r\n })),\r\n state('closed', style({\r\n height: '0' \r\n })),\r\n transition('open => closed', animate('300ms ease-in-out')),\r\n transition('closed => open', animate('300ms ease-in-out'))\r\n ])\r\n]\r\n})\r\nexport class FollowupQuestionComponent implements OnInit {\r\n @Input() question: FormQuestion;\r\n @Input() form: Form;\r\n @Input() readonly = false;\r\n @Input() visible;\r\n hasFocus;\r\n\r\n openState = 'closed';\r\n AnswerType = AnswerType;\r\n\r\n ngOnInit() {\r\n this.openState = 'open';\r\n }\r\n\r\n setFocus() {\r\n this.hasFocus = true;\r\n setTimeout(() => {\r\n this.hasFocus = false;\r\n });\r\n }\r\n\r\n\r\n}\r\n","
    \r\n\r\n \r\n

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

    {{question.body}}

    \r\n \r\n
    \r\n\r\n\r\n
    \r\n","import { Component, Input, OnInit, ChangeDetectionStrategy } from '@angular/core';\r\nimport { FormQuestion } from './model/FormQuestion';\r\nimport { FormAlternative } from './model/FormAlternative';\r\nimport { FormValidator } from './service/FormValidator';\r\nimport { Form } from './model/Form';\r\nimport { Subject } from 'rxjs';\r\nimport { debounceTime } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-form-alternative',\r\n moduleId: module.id,\r\n templateUrl: './formAlternative.component.html',\r\n styleUrls: ['formAlternative.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class FormAlternativeComponent implements OnInit {\r\n\r\n @Input() form: Form;\r\n @Input() question: FormQuestion;\r\n @Input() readonly = false;\r\n public alternativeSelections = new Subject();\r\n selectedAlternativeText: string;\r\n\r\n get selectedAlternative(): FormAlternative {\r\n if (!this.question.answer) {\r\n return undefined;\r\n }\r\n return this.question.alternatives\r\n .filter(a => a.id === this.question.answer)[0];\r\n\r\n }\r\n\r\n // return true only for FTP VR application to display different additional information\r\n get formType(): boolean {\r\n return (this.form.formType == 17 ? true: false);\r\n\r\n }\r\n\r\n get isApplicationCCPS(): boolean {\r\n return (this.form?.formType === 20);\r\n }\r\n\r\n constructor(private service: FormValidator) {\r\n\r\n const subscription = this.alternativeSelections\r\n .pipe(debounceTime(250))\r\n .subscribe(this.onSelect.bind(this));\r\n\r\n }\r\n\r\n ngOnInit() {\r\n if (this.readonly) {\r\n const selectedAlternative = this.question.alternatives.find(a => a.id === this.question.answer);\r\n if (selectedAlternative) {\r\n this.selectedAlternativeText = selectedAlternative.text;\r\n }\r\n }\r\n }\r\n\r\n\r\n onSelect(selected: FormAlternative) {\r\n this.service.setAnswer(this.form.id, this.question.id, selected.id, selected.referenceNumber);\r\n }\r\n\r\n onReferenceNumberChange(el, selectedAlternative) { \r\n this.service.setAnswer(this.form.id, this.question.id,selectedAlternative.id, el.target.value);\r\n }\r\n}\r\n"," 2\"\r\n [id]=\"question.id\"\r\n [value]=\"question.answer\">\r\n\r\n

    \r\n By default no answer is selected, to select \"yes\" or \"no\": press  left or right .\r\n

    \r\n\r\n {{alternative.text}}\r\n
    \r\n\r\n
    \r\n {{ selectedAlternativeText }}\r\n
    \r\n\r\n\r\n

    \r\n You must meet this requirement.\r\n

    \r\n
    \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n
    \r\n You must tell us about this by filling in a making a declaration form, once you have completed this online you will need to enter the declaration reference number in the field below, this will be sent to you in a confirmation email. \r\n We will use the information you give us in the form to assess if you are fit to practise, and if you meet the criteria to register as a pharmacy professional. If do not provide us enough information your application will be delayed.\r\n
    \r\n \r\n
    \r\n
    \r\n You must tell us about this by filling in a something to declare form. We will use the information you give us in the form to assess if you are fit to practise, and share that information with the organisation you have specified. \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n You must tell us about this by filling in a something to declare form. We will use the information you give us in the form to assess if you are fit to practise\r\n and whether it is in the public interest to remove your entry from the register.\r\n
    \r\n
    \r\n","import { Component, Input, Output, EventEmitter, ChangeDetectionStrategy } from '@angular/core';\r\nimport { FormQuestion } from './model/FormQuestion';\r\nimport { Form } from './model/Form';\r\nimport { AnswerType } from './model/AnswerType';\r\nimport { Tooltip } from '../core/tooltip/Tooltip';\r\n\r\n@Component({\r\n selector: 'app-form-question',\r\n moduleId: module.id,\r\n templateUrl: './formQuestion.component.html',\r\n styleUrls: ['./formQuestion.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class FormQuestionComponent {\r\n @Input() question: FormQuestion;\r\n @Input() form: Form;\r\n @Input() readonly = false;\r\n @Output() infoChanged = new EventEmitter();\r\n\r\n helpTooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click for more information about this question.',\r\n width: 290,\r\n placement: 'right',\r\n order: -1\r\n };\r\n\r\n helpVisible = false;\r\n AnswerType = AnswerType;\r\n\r\n toggleHelp() {\r\n this.helpVisible = !this.helpVisible;\r\n }\r\n\r\n onInfoChanged(info) {\r\n this.infoChanged.emit(info);\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n \r\n

    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n\r\n
    ","import { Component, Input, Output, EventEmitter, ChangeDetectionStrategy, HostBinding, OnInit } from '@angular/core';\r\nimport { AnswerType } from './model/AnswerType';\r\nimport { FormQuestion } from './model/FormQuestion';\r\nimport { Form } from './model/Form';\r\nimport { FormValidator } from './service/FormValidator';\r\nimport { LayoutService } from '../core/service/layout.service';\r\n@Component({\r\n selector: 'app-form-question-control',\r\n moduleId: module.id,\r\n templateUrl: './formQuestionControl.component.html',\r\n styleUrls: ['./formQuestionControl.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class FormQuestionControlComponent {\r\n @Input() form: Form;\r\n @Input() question: FormQuestion;\r\n @Input() title: string;\r\n @Input() readonly = false;\r\n hasFocus = false;\r\n @Input('hasFocus') set setHasFocus(focus) {\r\n this.hasFocus = focus;\r\n }\r\n @Output() infoChanged = new EventEmitter();\r\n\r\n @Input('visible') set setVisible(visible) {\r\n\r\n if (visible) {\r\n if ((this.question && this.question.defaultAnswer) && !this.question.answer) {\r\n this.validator.setAnswer(this.form.id, this.question.id, this.question.defaultAnswer, this.question.referenceNumber);\r\n }\r\n }\r\n\r\n }\r\n\r\n type = AnswerType;\r\n datePickerVisible = false;\r\n\r\n constructor(private validator: FormValidator, public layout: LayoutService) { }\r\n\r\n\r\n\r\n update(answer?) {\r\n this.validator.setAnswer(this.form.id, this.question.id, answer, this.question.referenceNumber);\r\n }\r\n\r\n toggleDatePicker() {\r\n this.datePickerVisible = !this.datePickerVisible;\r\n }\r\n\r\n\r\n onInfoChanged(info) {\r\n this.infoChanged.emit(info);\r\n }\r\n\r\n}\r\n","
    \r\n\r\n \r\n\r\n
    \r\n \r\n\r\n \r\n

    \r\n Please check that you have entered the email address correctly\r\n

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

    {{error}}

    \r\n
    ","export enum AnswerType {\r\n Unknown = 0,\r\n /// \r\n /// This Answer represents an alternative out of many. Can be presented as RadioButtons or a DropDown.\r\n /// \r\n Alternative = 1,\r\n /// \r\n /// Typically a CheckBox.\r\n /// \r\n Bool,\r\n Number = 4,\r\n Date = 8,\r\n Time,\r\n DateTime = 24,\r\n Email = 32,\r\n /// \r\n /// A TextField around 60 Characters Limit. These are just guidelines though,\r\n /// and it all comes down to how you decide to store the data.\r\n /// \r\n ShortText = 64,\r\n /// \r\n /// A TextField around 250 Characters Limit. These are just guidelines though,\r\n /// and it all comes down to how you decide to store the data.\r\n /// \r\n LongText = 128,\r\n /// \r\n /// A TextArea with no Size Limitation (basically varchar(max)). These are just\r\n /// guidelines though, and it all comes down to how you decide to store the data.\r\n /// \r\n FreeText = 256,\r\n}\r\n","import { QuestionGroup } from './QuestionGroup';\r\nimport { IProgress } from '../../shared/IProgress';\r\nimport { FormTemplate } from './FormTemplate';\r\nimport { FormQuestion } from './FormQuestion';\r\nimport { AnswerType } from './AnswerType';\r\nimport { FormType } from './FormType';\r\nimport utils from '../../shared/service/utils';\r\n\r\nexport class Form implements IProgress {\r\n\r\n type: FormType;\r\n dynamicFormId: string;\r\n formType: FormType;\r\n id: string;\r\n formTitle: string;\r\n formBody: string;\r\n questionGroups: QuestionGroup[];\r\n\r\n progress: number;\r\n completed: boolean;\r\n total: number;\r\n invalid = false;\r\n error = false;\r\n dirty = false;\r\n\r\n constructor(template: FormTemplate, id?: string) {\r\n\r\n this.dynamicFormId = template.dynamicFormId;\r\n this.formTitle = template.formTitle;\r\n this.formBody = template.formBody;\r\n this.formType =template.type;\r\n this.id = id || utils.guid();\r\n this.questionGroups = template.questionGroups.map(group => {\r\n const questions = group.questions.map(question => new FormQuestion(question));\r\n return Object.assign({}, group, { questions });\r\n });\r\n\r\n this.total = this.questionGroups.reduce((acc, item: QuestionGroup) => {\r\n acc += item.questions.length;\r\n return acc;\r\n }, 0);\r\n this.progress = 0;\r\n this.completed = false;\r\n }\r\n}\r\n","export enum FormGroupType\r\n{\r\n Unknown = 0,\r\n RenewalDeclarationForms = 1,\r\n RevalidationForms = 2,\r\n RegistrationApplicationDeclarationForms = 3,\r\n TechnicianApplicantDeclarationForms = 4,\r\n ProgressReportApplicationDeclartionForms = 5,\r\n FinalTrainingApplicationDeclartionForms =6,\r\n VoluntaryRemovalApplicationDeclarationForms = 7,\r\n ReturnToRegisterApplicationDeclarationForms = 8\r\n}","import { AnswerType } from './AnswerType';\r\nimport { FormAlternative } from './FormAlternative';\r\nimport { EventEmitter } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\n\r\n\r\ninterface TimeAnswer {\r\n hour: number;\r\n minute: number;\r\n second: number;\r\n}\r\nexport class FormQuestion {\r\n id: string;\r\n shortName: string;\r\n title: string;\r\n body: null;\r\n tooltip: string;\r\n type: AnswerType;\r\n min: number | Date;\r\n max: number | Date;\r\n isRequired: boolean;\r\n isHidden: boolean;\r\n answer: string;\r\n defaultAnswer: string;\r\n time: TimeAnswer;\r\n alternatives: FormAlternative[] = [];\r\n requiredAlternative: FormAlternative;\r\n isValid: boolean;\r\n wrongAlternative: boolean;\r\n hasWrongAlternative: boolean;\r\n errors: Array = [];\r\n alternativeSelected = new Subject();\r\n referenceNumber: string;\r\n\r\n constructor(formQuestion) {\r\n Object.assign(this, Object.assign({}, formQuestion));\r\n\r\n this.alternatives.forEach(a => {\r\n a.questions = a.questions.map(q => new FormQuestion(q));\r\n });\r\n\r\n this.requiredAlternative = this.alternatives.find(a => a.isRequired);\r\n\r\n }\r\n\r\n\r\n\r\n}\r\n","export enum FormType {\r\n CftpDeclaration = 1,\r\n RenewalDeclaration = 2,\r\n PlannedCpdEntry = 3,\r\n UnplannedCpdEntry = 4,\r\n PeerDiscussionEntry = 5,\r\n ReflectiveAccountEntry = 6,\r\n ExtenuatingCircumstances = 7,\r\n CftpDeclarationRos = 8,\r\n RenewalDeclarationRos = 9,\r\n CftpDeclarationPRos = 10,\r\n CftpDeclarationTros = 11,\r\n RenewalDeclarationTros = 12,\r\n CftpDeclarationARos = 13,\r\n RenewalDeclarationARos = 14,\r\n CftpDeclarationFinalTraining = 15,\r\n RenewalDeclarationFinalTraining = 16,\r\n CftpDeclarationVRForm = 17,\r\n CftpDeclarationRTR = 18,\r\n JoinDeclarationRTR = 19,\r\n CftpDeclarationCPSC = 20\r\n}\r\n","export abstract class FormValidator {\r\n setAnswer(formGuid: string, questionId: string, answer: any, referenceNumber: string) { }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Form } from '../model/Form';\r\nimport { FormTemplate } from '../model/FormTemplate';\r\nimport { FormQuestion } from '../model/FormQuestion';\r\nimport { QuestionGroup } from '../model/QuestionGroup';\r\nimport { FormAlternative } from '../model/FormAlternative';\r\nimport { AnswerType } from '../model/AnswerType';\r\nimport { FormValidator } from './FormValidator';\r\nimport { FormAnswer } from '../model/FormAnswer';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class FormValidationService extends FormValidator {\r\n\r\n forms: Array
    = [];\r\n state$ = new BehaviorSubject>([]);\r\n\r\n public addForm(template: FormTemplate, formId?: string) {\r\n const form = new Form(template, formId);\r\n this.forms.push(form);\r\n return form;\r\n }\r\n\r\n\r\n public removeForm(formId) {\r\n const forms = this.forms.filter(form => form.id !== formId);\r\n this.forms = forms.splice(0);\r\n }\r\n\r\n public setForm(template: FormTemplate) {\r\n const form = new Form(template);\r\n this.forms = [form];\r\n this.updateState();\r\n return form;\r\n }\r\n\r\n public getForm(dynamicFormId: string) {\r\n return this.forms.find(form => form.dynamicFormId === dynamicFormId);\r\n }\r\n\r\n\r\n loadAnswers(form: Form, answers: Array) {\r\n answers.forEach(answer => {\r\n this.setAnswer(form.id, answer.questionId, answer.answer, answer.referenceNumber);\r\n \r\n });\r\n form.dirty = false;\r\n this.updateState();\r\n }\r\n\r\n updateState() {\r\n this.state$.next(this.forms);\r\n }\r\n\r\n protected findQuestion(form: Form, questionId: string): FormQuestion {\r\n return form.questionGroups.reduce((result: FormQuestion, group: QuestionGroup) => {\r\n if (result) { return result; }\r\n const filter = group.questions.filter(q => {\r\n return questionId === q.id;\r\n });\r\n if (filter.length) {\r\n result = filter[0];\r\n }\r\n return result;\r\n }, undefined);\r\n }\r\n\r\n protected findChild(form: Form, questionId: string): any {\r\n\r\n let result: any;\r\n form.questionGroups.forEach(group => {\r\n group.questions.forEach(q => {\r\n q.alternatives.forEach(a => {\r\n a.questions.forEach(aq => {\r\n if (aq.id === questionId) {\r\n result = { parent: q, question: aq };\r\n return;\r\n }\r\n });\r\n });\r\n });\r\n });\r\n return result;\r\n }\r\n\r\n protected updateParent(form: Form, question: FormQuestion, answer,referenceNumber: string) {\r\n this.updateQuestion(question, answer, referenceNumber);\r\n this.updateForm(form);\r\n }\r\n\r\n public hasError(form) {\r\n return form.questionGroups\r\n .filter(group => group.questions\r\n .filter(q => q.wrongAlternative).length)\r\n .length;\r\n }\r\n\r\n\r\n protected updateForm(form: Form) {\r\n form.progress = this.getProgress(form);\r\n form.invalid = this.hasInvalid(form);\r\n form.error = this.hasError(form);\r\n form.completed = this.getIsCompleted(form);\r\n form.dirty = true;\r\n let forms = [form];\r\n forms = forms.concat(this.forms.filter(f => f.id !== form.id));\r\n this.forms = forms;\r\n this.state$.next(forms);\r\n }\r\n\r\n protected pad(value) {\r\n value = '' + value;\r\n if (!value) {\r\n return '00';\r\n }\r\n if (value.length < 2) {\r\n return '0' + value;\r\n }\r\n return value;\r\n }\r\n\r\n\r\n protected updateQuestion(question: FormQuestion, answer: any, referenceNumber: string) {\r\n const previousAnswer = question.answer;\r\n\r\n if (question.type === AnswerType.Number) {\r\n\r\n if (answer !== undefined && answer !== null) {\r\n if (answer.trim() === '') {\r\n question.answer = '';\r\n } else {\r\n question.answer = parseInt(answer, 10).toString();\r\n }\r\n } else {\r\n question.answer = '';\r\n }\r\n } else {\r\n question.answer = answer;\r\n }\r\n\r\n if (question.type === AnswerType.Alternative) {\r\n question.alternativeSelected.next(question.alternatives.find(alternative => alternative.id === answer));\r\n }\r\n\r\n question.referenceNumber = referenceNumber ? referenceNumber : null;\r\n\r\n question.isValid = this.isValid(question);\r\n if (previousAnswer !== undefined) {\r\n question.alternatives.forEach(a => {\r\n if (a.id !== answer) {\r\n a.questions.forEach(q => {\r\n delete q.answer;\r\n delete q.isValid;\r\n q.errors = [];\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n protected updateChild(form: Form, parent: FormQuestion, question: FormQuestion, answer: any, referenceNumber: string) {\r\n this.updateQuestion(question, answer, referenceNumber);\r\n parent.isValid = this.isValid(parent);\r\n this.updateForm(form);\r\n }\r\n\r\n public setAnswer(formId: string, questionId: string, answer: any, referenceNumber: string) {\r\n const form: Form = this.forms.find(f => f.id === formId);\r\n const formToUpdate: Form = Object.assign({}, form);\r\n const questionToUpdate: FormQuestion = this.findQuestion(formToUpdate, questionId);\r\n if (questionToUpdate) {\r\n this.updateParent(formToUpdate, questionToUpdate, answer, referenceNumber);\r\n } else {\r\n const child = this.findChild(formToUpdate, questionId);\r\n if(child) {\r\n this.updateChild(formToUpdate, child.parent, child.question, answer, referenceNumber);\r\n } \r\n }\r\n }\r\n\r\n protected getIsCompleted(form): boolean {\r\n return form.progress === form.total;\r\n }\r\n\r\n protected getProgress(form): number {\r\n return form.questionGroups.reduce((acc, item: QuestionGroup) => {\r\n acc += item.questions.filter(q => q.isValid).length;\r\n return acc;\r\n }, 0);\r\n }\r\n\r\n protected hasInvalid(form): boolean {\r\n return form.questionGroups.reduce((acc, item: QuestionGroup) => {\r\n acc += item.questions.filter(q => q.isValid === false).length;\r\n return acc;\r\n }, 0) > 0;\r\n }\r\n\r\n protected isValid(question: FormQuestion): boolean {\r\n\r\n question.errors = [];\r\n if (question.answer && question.type === AnswerType.Email) {\r\n const regex = /^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,6})+$/;\r\n return regex.test(question.answer);\r\n }\r\n\r\n if (question.type === AnswerType.Number) {\r\n if (question.answer === '' || isNaN(+question.answer)) {\r\n question.errors.push('You must answer this question');\r\n return false;\r\n }\r\n if (question.max !== undefined && +question.answer > question.max) {\r\n question.errors.push('You must enter a number less than ' + question.max);\r\n return false;\r\n }\r\n if (question.min !== undefined && +question.answer < question.min) {\r\n question.errors.push('You must enter a number greater than ' + question.min);\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n if(question && question.type === AnswerType.Date && question.shortName === 'extend_until') { \r\n if(!question.answer) {\r\n question.errors.push('Please select a date');\r\n return false;\r\n }\r\n if(question.answer && (new Date(question.answer).setHours(0,0,0,0) < new Date(question.min).setHours(0,0,0,0))) {\r\n question.errors.push('Please select a future date');\r\n return false;\r\n } \r\n }\r\n\r\n if (!question.isRequired) {\r\n return true;\r\n }\r\n\r\n // TODO: avoid mutating question here\r\n question.wrongAlternative = this.wrongAlternative(question);\r\n question.hasWrongAlternative = this.hasWrongAlternative(question);\r\n\r\n if (question.answer === undefined || question.answer === null ||\r\n question.answer === '' || question.answer.trim && question.answer.trim() === '') {\r\n question.errors.push('This is mandatory');\r\n return false;\r\n }\r\n\r\n if (question.type !== AnswerType.Alternative) { return true; }\r\n\r\n if (question.wrongAlternative || question.hasWrongAlternative) {\r\n return false;\r\n }\r\n\r\n let isValid = true;\r\n const selectedAlternative: FormAlternative = question.alternatives\r\n .filter(a => a.id === question.answer)[0];\r\n if (selectedAlternative && selectedAlternative.questions && selectedAlternative.questions.length) {\r\n selectedAlternative.questions.forEach(q => {\r\n if (!q.isValid && !(!q.isRequired && !q.answer)) {\r\n isValid = false;\r\n }\r\n });\r\n }\r\n if (selectedAlternative && selectedAlternative.showAdditionalInfo) {\r\n if(!question.referenceNumber) isValid = false; else isValid = true;\r\n }\r\n return isValid;\r\n }\r\n\r\n public wrongAlternative(question: FormQuestion) {\r\n if (question.type !== AnswerType.Alternative) { return false; }\r\n if (!question.answer) {\r\n return false;\r\n }\r\n return (question.requiredAlternative && question.answer !== question.requiredAlternative.id);\r\n }\r\n\r\n public hasWrongAlternative(question: FormQuestion) {\r\n if (question.type !== AnswerType.Alternative) { return false; }\r\n if (!question.answer) {\r\n return false;\r\n }\r\n let hasWrong = false;\r\n const selectedAlternative: FormAlternative = question.alternatives\r\n .filter(a => a.id === question.answer)[0];\r\n if (selectedAlternative && selectedAlternative.questions && selectedAlternative.questions.length) {\r\n selectedAlternative.questions.forEach(q => {\r\n if (q.wrongAlternative) {\r\n hasWrong = true;\r\n }\r\n });\r\n }\r\n return hasWrong;\r\n }\r\n\r\n public hasAnsweredYes(question: FormQuestion) {\r\n const selectedAlternative = this.getSelectedAlternative(question);\r\n if (!selectedAlternative) { return false; }\r\n if (selectedAlternative.name === 'Y') {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n\r\n public hasToDeclare(question: FormQuestion) {\r\n\r\n let hasToDeclare = false;\r\n const selectedAlternative = this.getSelectedAlternative(question);\r\n if (!selectedAlternative) { return false; }\r\n if (selectedAlternative.showAdditionalInfo) {\r\n hasToDeclare = true;\r\n }\r\n\r\n selectedAlternative.questions.forEach(q => {\r\n\r\n const selectedAlternative2 = this.getSelectedAlternative(q);\r\n if (!selectedAlternative2) { hasToDeclare = false; return; }\r\n if (selectedAlternative2.showAdditionalInfo) {\r\n hasToDeclare = true;\r\n return;\r\n }\r\n\r\n selectedAlternative2.questions.forEach(q2 => {\r\n const selectedAlternative3 = this.getSelectedAlternative(q2);\r\n if (!selectedAlternative3) { hasToDeclare = false; return; }\r\n if (selectedAlternative3.showAdditionalInfo) {\r\n hasToDeclare = true;\r\n return;\r\n }\r\n });\r\n });\r\n\r\n return hasToDeclare;\r\n\r\n }\r\n\r\n private getSelectedAlternative(question: FormQuestion): FormAlternative {\r\n if (question.type !== AnswerType.Alternative) { return undefined; }\r\n if (!question.answer) {\r\n return undefined;\r\n }\r\n return question.alternatives\r\n .find(a => a.id === question.answer);\r\n }\r\n\r\npublic getQuestionByShortname(form: Form, shortName): FormQuestion {\r\n let out;\r\n form.questionGroups.forEach(group => {\r\n const q = group.questions.find(question => question.shortName === shortName);\r\n if (q) {\r\n out = q;\r\n return;\r\n } else {\r\n group.questions.forEach(question => {\r\n if (question.type === AnswerType.Alternative) {\r\n question.alternatives.forEach(alternative => {\r\n const qa = alternative.questions.find(ques => ques.shortName === shortName);\r\n if (qa) {\r\n out = qa;\r\n return;\r\n }\r\n });\r\n }\r\n });\r\n }\r\n });\r\n return out;\r\n}\r\n\r\n public getAnswers(form) {\r\n return {\r\n internalId: form.id,\r\n dynamicFormId: form.dynamicFormId,\r\n answers: form.questionGroups.reduce((accGroupAnswers, group) => {\r\n const answers = group.questions.reduce((accQuestionAnswers, question) => {\r\n if (question.answer) {\r\n const selectedAlternative = question.alternatives.filter(a => a.id === question.answer)[0];\r\n accQuestionAnswers.push({ questionId: question.id, shortName: question.shortName, answer: selectedAlternative.id, referenceNumber: question.referenceNumber });\r\n if (selectedAlternative.questions && selectedAlternative.questions.length) {\r\n const followUpAnswers = selectedAlternative.questions.reduce((accFollowUpAnswers, followup) => {\r\n if (followup.answer) {\r\n if (followup.type === AnswerType.Alternative) {\r\n const selectedFollowup = followup.alternatives.filter(a => a.id === followup.answer)[0];\r\n accFollowUpAnswers.push({ questionId: followup.id, shortName: followup.shortName, answer: selectedFollowup.id });\r\n } else {\r\n accFollowUpAnswers.push({ questionId: followup.id, shortName: followup.shortName, answer: followup.answer });\r\n }\r\n }\r\n return accFollowUpAnswers;\r\n }, []);\r\n accQuestionAnswers = accQuestionAnswers.concat(followUpAnswers);\r\n }\r\n }\r\n return accQuestionAnswers;\r\n }, []);\r\n accGroupAnswers = accGroupAnswers.concat(answers);\r\n return accGroupAnswers;\r\n }, [])\r\n };\r\n }\r\n\r\n public getPayload(): Array<{ dynamicFormId: string, answers: Array }> {\r\n return this.forms.map(form => {\r\n return this.getAnswers(form);\r\n });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Router, CanActivate, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { LogService } from '../core/service/log.service';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class AccountActivationGuard implements CanActivate {\r\n constructor(\r\n private authService: AuthService,\r\n private log: LogService,\r\n private router: Router) {}\r\n\r\n canActivate(route: ActivatedRouteSnapshot) {\r\n\r\n // if (environment.dev) {\r\n return true;\r\n // }\r\n /*\r\n if (this.authService.userId && !this.authService.user) {\r\n return true;\r\n } else if (this.authService.user) {\r\n this.log.routeBlock('Your account has already been activated', route.url[0].path);\r\n // this.authService.logout();\r\n return false;\r\n } else {\r\n this.log.routeBlock('You must sign to activate your account', route.url[0].path);\r\n return false;\r\n }\r\n */\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\n\r\nexport interface CanComponentDeactivate {\r\n canDeactivate: () => Observable | Promise | boolean;\r\n}\r\n\r\n@Injectable()\r\nexport class CanDeactivateGuard implements CanDeactivate {\r\n canDeactivate(component: CanComponentDeactivate) {\r\n return component.canDeactivate ? component.canDeactivate() : true;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, ActivatedRoute } from '@angular/router';\r\nimport { RegistrationService } from '../core/service/registration.service';\r\nimport { LogService } from '../core/service/log.service';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { LetterType } from '../registration/model/LetterType';\r\nimport { map } from 'rxjs/operators';\r\n\r\n@Injectable()\r\nexport class LetterGuard implements CanActivate {\r\n letterType;\r\n constructor(\r\n private log: LogService,\r\n private authService: AuthService,\r\n private regService: RegistrationService\r\n ) {}\r\n canActivate(route: ActivatedRouteSnapshot) {\r\n return true;\r\n const letterType = parseInt(route.params.letterType, 10);\r\n return this.regService.getLetters().pipe(map(letters => {\r\n const hasLetter = !!letters.find(letter => letter.letterType === letterType);\r\n if (hasLetter) {\r\n return true;\r\n } else {\r\n this.log.routeBlock('Letter not found', route.url[0].path);\r\n return false;\r\n }\r\n }));\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Router, CanActivate, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { LogService } from '../core/service/log.service';\r\n\r\n@Injectable()\r\nexport class LoggedInOnlyGuard implements CanActivate {\r\n constructor(\r\n private authService: AuthService,\r\n private log: LogService,\r\n private router: Router) {}\r\n\r\n canActivate(route: ActivatedRouteSnapshot) {\r\n if (this.authService.user) {\r\n return true;\r\n } else {\r\n this.log.routeBlock('You must sign in to view this page', route.url[0].path);\r\n this.authService.loginRedirect = window.location.pathname;\r\n this.router.navigate(['./signin']);\r\n return false;\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { LogService } from '../core/service/log.service';\r\n\r\n@Injectable()\r\nexport class NotRevalidationExemptGuard implements CanActivate {\r\n constructor(private authService: AuthService, private log: LogService) { }\r\n canActivate(route: ActivatedRouteSnapshot) {\r\n const authUser = this.authService.user && this.authService.user.registrant;\r\n if (!(authUser && authUser.exemptFromRevalidationSubmissions)) {\r\n return true;\r\n } else {\r\n this.log.routeBlock('Please file your revalidation under your pharmacist account', route.url[0].path);\r\n return false;\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { LogService } from '../core/service/log.service';\r\n\r\n@Injectable()\r\nexport class PreregOnlyGuard implements CanActivate {\r\n constructor(private authService: AuthService, private log: LogService) {}\r\n canActivate(route: ActivatedRouteSnapshot) {\r\n if (this.authService.user && this.authService.user.isPrereg) {\r\n return true;\r\n } else {\r\n this.log.routeBlock('You must be a pre-reg trainee to view this page', route.url[0].path);\r\n return false;\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { LogService } from '../core/service/log.service';\r\n\r\n@Injectable()\r\nexport class RegistrantsOnlyGuard implements CanActivate {\r\n constructor(private authService: AuthService, private log: LogService) {}\r\n canActivate(route: ActivatedRouteSnapshot) {\r\n if (this.authService.user && this.authService.user.isRegistrant) {\r\n return true;\r\n } else {\r\n this.log.routeBlock('You must be a registrant to view this page', route.url[0].path);\r\n return false;\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { LogService } from '../core/service/log.service';\r\n\r\n@Injectable()\r\nexport class ReviewersOnlyGuard implements CanActivate {\r\n constructor(private authService: AuthService, private log: LogService) {}\r\n canActivate(route: ActivatedRouteSnapshot) {\r\n if (this.authService.user && this.authService.user.isReviewer) {\r\n return true;\r\n } else {\r\n this.log.routeBlock('You must be a reviewer to view this page', route.url[0].path);\r\n return false;\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { LogService } from '../core/service/log.service';\r\n\r\n@Injectable()\r\nexport class StudentsOnlyGuard implements CanActivate {\r\n constructor(private authService: AuthService, private log: LogService) {}\r\n canActivate(route: ActivatedRouteSnapshot) {\r\n if (this.authService.user && this.authService.user.isStudent) {\r\n return true;\r\n } else {\r\n this.log.routeBlock('You must be a student to view this page', route.url[0].path);\r\n return false;\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { LogService } from '../core/service/log.service';\r\n\r\n@Injectable()\r\nexport class TechnicianOnlyGuard implements CanActivate {\r\n constructor(private authService: AuthService, private log: LogService) {}\r\n canActivate(route: ActivatedRouteSnapshot) {\r\n if (this.authService.user && this.authService.user.isTechnicianApplicant) {\r\n return true;\r\n } else {\r\n this.log.routeBlock('You must be a Technician Applicant to view this page', route.url[0].path);\r\n return false;\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Router, CanActivate, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { LogService } from '../core/service/log.service';\r\n\r\n@Injectable()\r\nexport class UserLoadedGuard implements CanActivate {\r\n constructor(\r\n private authService: AuthService,\r\n private log: LogService,\r\n private router: Router) {}\r\n\r\n canActivate(route: ActivatedRouteSnapshot):Observable | Promise | boolean {\r\n // this fix has been implemented to resolve browser reload issue after signing in\r\n return new Promise((resolve) => {\r\n setTimeout(() => {\r\n if (this.authService.user) {\r\n resolve(true);\r\n } else {\r\n this.log.routeBlock('You must sign in to view this page', route.url[0].path);\r\n this.authService.loginRedirect = window.location.pathname;\r\n this.router.navigate(['./signin']);\r\n resolve(false);\r\n }\r\n }, 0);\r\n })\r\n \r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { LogService } from '../core/service/log.service';\r\n\r\n@Injectable()\r\nexport class PreregAssessmentRegistrationGuard implements CanActivate {\r\n constructor(private authService: AuthService, private log: LogService) { }\r\n canActivate(route: ActivatedRouteSnapshot) {\r\n if (this.authService.user) {\r\n return true;\r\n } else {\r\n this.log.routeBlock('Please file your revalidation under your pharmacist account', route.url[0].path);\r\n return false;\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 { AuthService } from './core/service/auth.service';\r\nimport { User } from './account/model/User';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n templateUrl: './home.component.html'\r\n})\r\nexport class HomeComponent implements OnInit {\r\n\r\n user: User;\r\n constructor(private authService: AuthService) {\r\n }\r\n\r\n ngOnInit() {\r\n this.user = this.authService.user;\r\n }\r\n}\r\n","export enum CollectionMethod {\r\n DirectDebit = 717750001,\r\n Card = 717750000,\r\n Bacs = 717750002,\r\n Cheque = 717750003\r\n}\r\n","import { PaymentChannel } from './PaymentChannel';\r\nimport { PaymentStatus } from './PaymentStatus';\r\n\r\nexport class Payment {\r\n\r\n id: number;\r\n description: string;\r\n transactionTime: string;\r\n totalAmount: number;\r\n currency: string;\r\n paymentCard: number;\r\n paymentChannel: PaymentChannel;\r\n paymentNumber: string;\r\n status: PaymentStatus;\r\n\r\n constructor(receipt) {\r\n Object.assign(this, receipt);\r\n }\r\n }\r\n","export enum PaymentChannel {\r\n Unknown = 0,\r\n Manual = 717750000,\r\n Web = 717750001,\r\n Telephone = 717750002,\r\n DirectDebit = 717750003\r\n}\r\n","export enum PaymentMethod {\r\n Card = 717750000,\r\n DirectDebit = 717750001\r\n}\r\n","export enum PaymentStatus {\r\n Outstanding = 717750000,\r\n Paid = 717750001,\r\n // STEP BEFORE PAID or FAILED\r\n Called = 717750002,\r\n // DD CANCELLED, USER HAVE TO PAY BY CARD\r\n Cancelled = 717750003,\r\n // ALWAYS A FAILED DD PAYMENT\r\n Failed = 717750004\r\n}\r\n","\r\n
    \r\n
    \r\n

    View receipt

    \r\n
    \r\n \r\n
    Print
    \r\n
    \r\n
    \r\n \r\n
    Back
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n \"General\r\n\r\n

    Receipt

    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n #\r\n \r\n Description\r\n \r\n Date\r\n \r\n Amount\r\n \r\n Registration number\r\n \r\n Registration name\r\n
    \r\n {{receipt.paymentNumber}}\r\n \r\n {{receipt.description}}\r\n \r\n {{ receipt.paymentDate | utcDate }}\r\n \r\n {{ receipt.amount | currency: 'GBP' : 'symbol' : '.2' }}\r\n \r\n {{ user.registrant.registrationNumber }}\r\n \r\n {{ user.toString() }}\r\n
    \r\n\r\n
    \r\n Disclaimer: this receipt does not confirm that the recipient is currently registered with the GPhC.\r\n
    \r\n It should not be used as proof of registration. To confirm if a pharmacy professional is currently registered, check the\r\n GPhC register online at https://www.pharmacyregulation.org/registers.\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n

    No receipt found for id {{id}}.

    \r\n
    ","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Payment } from './model/Payment';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { PaymentService } from './service/payment.service';\r\nimport { User } from '../account/model/User';\r\nimport { AuthService } from '../core/service/auth.service';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n templateUrl: './receipt.component.html',\r\n styleUrls: ['receipt.scss']\r\n})\r\nexport class ReceiptComponent implements OnInit {\r\n\r\n user: User;\r\n constructor(private router: Router, private service: PaymentService,\r\n private route: ActivatedRoute, private auth: AuthService) {\r\n this.id = this.route.snapshot.params['id'];\r\n }\r\n\r\n id: string;\r\n loading = false;\r\n failed = false;\r\n receipt;\r\n\r\n ngOnInit() {\r\n this.load();\r\n }\r\n\r\n load() {\r\n this.user = this.auth.user;\r\n this.loading = true;\r\n this.failed = false;\r\n this.service.getPayments().subscribe(payments => {\r\n this.receipt = payments.find(payment => payment.paymentNumber === this.id);\r\n this.loading = false;\r\n }, error => {\r\n this.failed = true;\r\n this.loading = false;\r\n });\r\n }\r\n\r\n print() {\r\n (window).print();\r\n }\r\n\r\n exit() {\r\n this.router.navigate(['/receipts']);\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { PaymentService } from './service/payment.service';\r\nimport { Payment } from './model/Payment';\r\nimport { PaymentChannel } from './model/PaymentChannel';\r\nimport { PaymentStatus } from './model/PaymentStatus';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { User } from '../account/model/User';\r\n\r\n@Component({\r\n selector: 'app-receipts',\r\n moduleId: module.id,\r\n templateUrl: './receipts.component.html',\r\n styleUrls: ['./receipts.scss']\r\n})\r\nexport class ReceiptsComponent implements OnInit {\r\n user: User;\r\n loading = false;\r\n failed = false;\r\n receipts: Array;\r\n public PaymentStatus = PaymentStatus;\r\n public PaymentChannel = PaymentChannel;\r\n constructor(private router: Router, private service: PaymentService, private auth: AuthService) {\r\n }\r\n\r\n ngOnInit() {\r\n this.load();\r\n }\r\n\r\n load() {\r\n this.user = this.auth.user;\r\n this.loading = true;\r\n this.failed = false;\r\n this.service.getPayments().subscribe(payments => {\r\n this.receipts = payments.filter(payment => payment.status === PaymentStatus.Paid && payment.paymentNumber);\r\n this.loading = false;\r\n }, error => {\r\n this.failed = true;\r\n this.loading = false;\r\n });\r\n }\r\n\r\n showReceipt(receipt: Payment) {\r\n this.router.navigate(['/receipts', receipt.paymentNumber]);\r\n }\r\n\r\n}\r\n","\r\n
    \r\n

    Receipts

    \r\n

    \r\n View your payment history and print copies of your receipts\r\n

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

    \r\n No receipts available\r\n

    \r\n
    0\" style=\"padding-bottom: 20px;overflow-x: auto;\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Reference #DescriptionDateChannelAmountRegistration numberRegistered name
    {{receipt.description}}{{ receipt.paymentDate | utcDate }}{{ PaymentChannel[receipt.paymentChannel] }} {{ receipt.amount | currency: 'GBP': 'symbol' : '.2' }} {{ user.registrant.registrationNumber }} {{ user.toString() }}
    \r\n
    \r\n
    ","import { Injectable } from '@angular/core';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { LogService } from '../../core/service/log.service';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { Payment } from '../model/Payment';\r\nimport { CustomErrorHandler } from '../../core/service/CustomErrorHandler';\r\nimport { map } from 'rxjs/operators';\r\nimport { ServiceBase } from '../../core/service/service.base';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n\r\n@Injectable()\r\nexport class PaymentService extends ServiceBase {\r\n\r\n constructor(http: HttpClient, auth: AuthService, log: LogService, errorHandler: CustomErrorHandler) {\r\n super(http, auth, log, errorHandler);\r\n }\r\n\r\n getPayments(): Observable> {\r\n return super.get('v1.0/registrant/payments')\r\n .pipe(map(data => data.map(d => new Payment(d))));\r\n }\r\n}\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { LogService } from '../../core/service/log.service';\r\nimport { User } from '../../account/model/User';\r\nimport { LayoutService } from '../../core/service/layout.service';\r\nimport { CanComponentDeactivate } from '../../guard/CanDeactivate.guard';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ConfirmDialogComponent } from '../../shared/confirmDialog.component';\r\nimport { AssessmentRegistrationStep } from './model/AssessmentRegistrationStep';\r\nimport { FormStepperService } from '../../shared/formStepper/formStepper.service';\r\nimport { FormStepSummary } from '../../shared/formStepper/FormStepSummary';\r\nimport { FormStepperComponent } from '../../shared/formStepper/formStepper.component';\r\nimport { mergeMap } from 'rxjs/operators';\r\nimport { of as observableOf, from as observableFrom } from 'rxjs';\r\nimport { DatePipe } from '@angular/common';\r\nimport { AssessmentRegistration } from './model/AssessmentRegistration';\r\nimport { AssessmentRegistrationService } from '../../core/service/assessmentRegistration.service';\r\nimport { AssessmentRegistrationApplicationForm } from './model/AssessmentRegistrationApplicationForm';\r\nimport { ApplicationStatus } from '../model/ApplicationStatus';\r\n\r\n@Component({\r\n selector: 'app-assessment-registration-application',\r\n templateUrl: './assessmentRegistrationApplication.component.html',\r\n styleUrls: ['../application-form.scss'],\r\n providers: [FormStepperService]\r\n})\r\nexport class AssessmentRegistrationComponent implements OnInit, CanComponentDeactivate {\r\n saving: boolean = false;\r\n isApplicationOpen = true;\r\n\r\n user: User;\r\n loading = false;\r\n ready = false;\r\n loadingError = false;\r\n application: AssessmentRegistration;\r\n maxStep: AssessmentRegistrationStep;\r\n minStep: AssessmentRegistrationStep;\r\n showGuidanceWarning = false;\r\n AssessmentRegistrationStep = AssessmentRegistrationStep;\r\n applicationClosedMessage: string;\r\n\r\n @ViewChild(FormStepperComponent) formStepper;\r\n constructor(\r\n private router: Router,\r\n private auth: AuthService,\r\n private log: LogService,\r\n private service: AssessmentRegistrationService,\r\n public layout: LayoutService,\r\n private dialog: MatDialog,\r\n public formStepperService: FormStepperService,\r\n private datePipe: DatePipe\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.load();\r\n }\r\n\r\n get ineligible() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.Ineligible;\r\n }\r\n\r\n get allowResubmit() {\r\n return !this.application.activeForm.requirePayment;\r\n }\r\n\r\n canDeactivate() {\r\n if (\r\n !this.formStepper ||\r\n !this.formStepper.currentStep ||\r\n !this.formStepper.currentStep.dirty\r\n ) {\r\n return true;\r\n }\r\n return this.warnForDirty();\r\n }\r\n\r\n resubmitApplication() {\r\n this.layout.setFullscreenSpinner(true, 'Submitting...');\r\n this.service.reSubmitApplication(this.application.activeForm.id).subscribe(() => {\r\n this.router.navigate(['/home']);\r\n // invalidate cache\r\n delete this.service.application;\r\n this.layout.setFullscreenSpinner(false);\r\n }, error => {\r\n this.layout.setFullscreenSpinner(false);\r\n });\r\n }\r\n\r\n load() {\r\n var temp =new Date(); //CR-374 temp variable for date manupilation\r\n this.user = this.auth.user;\r\n this.loading = true;\r\n this.loadingError = false;\r\n this.service\r\n .getAssessmentRegistrationApplication(this.auth.user.registrationStatus)\r\n .subscribe(\r\n application => {\r\n this.application = application;\r\n /* CR - 374 : Display previous date on assessment registration application*/\r\n temp = new Date(this.application.assessmentRegistrationDeadlineDate); \r\n temp.setDate(temp.getDate()-1); \r\n this.application.assessmentRegistrationDeadlineDate = temp.toISOString(); \r\n /*CR - 374 changes end*/ \r\n this.isApplicationOpen = this.application.isOpen;\r\n\r\n if (!this.isApplicationOpen) {\r\n this.applicationClosedMessage = `Application you are trying to access is currently not available`;\r\n this.loading = false;\r\n return;\r\n }\r\n\r\n if (this.application.activeForm.step) {\r\n this.maxStep = this.application.activeForm.step;\r\n }\r\n if (this.application.activeForm.minStep) {\r\n this.minStep = this.application.activeForm.minStep;\r\n }\r\n\r\n this.loading = false;\r\n this.ready = true;\r\n setTimeout(() => {\r\n this.showGuidanceWarning = this.formStepper && this.formStepper.currentStep === AssessmentRegistrationStep.PersonalDetails;\r\n });\r\n },\r\n error => {\r\n this.loading = false;\r\n this.loadingError = true;\r\n }\r\n );\r\n }\r\n\r\n warnForDirty(): Observable {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n title: `Unsaved changes`,\r\n message: `

    Do you want to save your changes before exiting your application form?

    `\r\n }\r\n });\r\n return dialogRef.afterClosed().pipe(\r\n mergeMap(shouldSave => {\r\n if (shouldSave) {\r\n this.layout.setFullscreenSpinner(true);\r\n return observableFrom(\r\n this.save().then(\r\n () => {\r\n return true;\r\n },\r\n error => {\r\n // show error messages\r\n this.layout.setFullscreenSpinner(false);\r\n return false;\r\n }\r\n )\r\n );\r\n } else {\r\n return observableOf(true);\r\n }\r\n })\r\n );\r\n }\r\n\r\n save() {\r\n this.saving = true;\r\n this.application.activeForm.step = this.formStepperService.getFurthestStep();\r\n this.formStepper.currentStep.populateForm();\r\n return new Promise((resolve, reject) => {\r\n const start = performance.now();\r\n const minExecution = 300;\r\n function respond(cb) {\r\n const end = performance.now();\r\n const duration = end - start;\r\n if (duration < minExecution) {\r\n setTimeout(() => {\r\n cb();\r\n }, Math.round(minExecution - duration));\r\n } else {\r\n cb();\r\n }\r\n }\r\n if (true) {\r\n respond(() => {\r\n this.saving = false;\r\n resolve();\r\n });\r\n }\r\n this.service.saveAssessmentRegistrationApplication(this.application)\r\n .subscribe(\r\n () => {\r\n respond(() => {\r\n this.saving = false;\r\n resolve();\r\n });\r\n },\r\n error => {\r\n respond(() => {\r\n this.saving = false;\r\n reject(error);\r\n });\r\n }\r\n );\r\n });\r\n }\r\n\r\n goToStepId(stepId) {\r\n this.formStepper.goToStep(stepId);\r\n }\r\n\r\n goToStep(step: FormStepSummary) {\r\n if (step.disabled) {\r\n return;\r\n }\r\n this.formStepper.goToStep(step.stepId);\r\n }\r\n\r\n stepChanged(stepId) {\r\n setTimeout(() => {\r\n this.service.setStep(this.application.activeForm.id, stepId).subscribe();\r\n this.application.activeForm.step = stepId;\r\n }, 1000);\r\n }\r\n\r\n\r\n stepChange(): () => Promise {\r\n return function () {\r\n return new Promise((resolve, reject) => {\r\n if (\r\n this.formStepper.currentStep.dirty ||\r\n this.formStepper.currentStep.stepId\r\n ) {\r\n this.formStepper.serverErrors = [];\r\n return this.save().then(\r\n () => {\r\n resolve();\r\n },\r\n error => {\r\n this.formStepper.serverErrors = error.validationErrors;\r\n reject(error);\r\n }\r\n );\r\n } else {\r\n resolve();\r\n }\r\n });\r\n }.bind(this);\r\n }\r\n}\r\n","
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    \r\n Application to sit the registration assessment\r\n

    \r\n
    \r\n\r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n
    \r\n\r\n
    \r\n\r\n
    This application must be completed and submitted to the GPhC before\r\n {{ application.assessmentRegistrationDeadlineDate | utcDate }}
    \r\n\r\n
    \r\n
    \r\n\r\n
    Application you are trying to access is currently not available.
    \r\n\r\n
    \r\n\r\n
    \r\n

    \r\n Before you begin your application for registration, read the\r\n guidance on providing correctly certified supporting documents\r\n [hyperlink to policy website]\r\n

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

    \r\n An error occurred while attempting to\r\n load your application\r\n

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

    This application has been marked as ineligible.

    \r\n
    \r\n

    \r\n You can either re-submit this application as it is, or re-open\r\n this one for editing if you need to make changes.\r\n

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

    \r\n You can re-open this application if you would like to submit\r\n again.\r\n

    \r\n \r\n
    \r\n
    \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n \r\n Application to sit the registration assessment\r\n \r\n
    \r\n \r\n
    \r\n

    \r\n {{ applicationClosedMessage }}\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    ","import { Applicant } from '../../../account/model/Applicant';\r\nimport { ApplicationStatus } from '../../model/ApplicationStatus';\r\nimport { AssessmentRegistrationApplicationForm } from './AssessmentRegistrationApplicationForm';\r\nimport { Training } from '../../model/Training';\r\nimport { TraineeAssessment } from '../../model/TraineeAssessment';\r\nimport { Address } from '../../../account/model/Address';\r\nimport { RegistrantStatus } from '../../../registration/model/RegistrantStatus';\r\nimport { CourseType } from '../../../shared/model/student/CourseType';\r\nimport { Registrant } from '../../../registration/model/Registrant';\r\nimport { Application } from '../../model/Application';\r\nimport { FormScope } from '../../../registration/model/FormScope';\r\nimport { TrainingPlacement } from '../../model/TrainingPlacement';\r\nimport { FileUpload } from '../../../shared/model/FileUpload';\r\nimport { AssessmentTutorDetails } from '../../assessment-report/models/AssessmentTutors';\r\n\r\nexport class AssessmentRegistration implements Application {\r\n trainee: Applicant;\r\n registrant?: Registrant; // populated by the api once application status = approved pending registration, used for notice of entry\r\n activeAssessment: string;\r\n forms: Array = [];\r\n status: ApplicationStatus;\r\n activeForm: AssessmentRegistrationApplicationForm;\r\n pastApplications: Array;\r\n\r\n training: Training;\r\n tutorDetails: Array;\r\n assessmentAttempts: Array;\r\n\r\n declaration: {\r\n isQ1Confirmed: boolean;\r\n isQ2Confirmed: boolean;\r\n isQ3Confirmed: boolean;\r\n isQ4Confirmed: boolean;\r\n };\r\n\r\n registrationFees: {\r\n applicationFee: number;\r\n registrationFee: number;\r\n };\r\n\r\n form;\r\n assessmentRegistrationDeadlineDate: string;\r\n\r\n registrationApplicationScheme: {\r\n isOpened: boolean,\r\n openingDate: string\r\n };\r\n isOpen;\r\n\r\n constructor(data, registrantStatus: RegistrantStatus) {\r\n Object.assign(this, data);\r\n if (this.forms && this.forms.length > 0) {\r\n if (!!this.forms[0].scope && this.forms[0].scope != FormScope.TechnicianApplicant) {\r\n\r\n this.status = this.forms.length ? this.forms[0].formStatus : ApplicationStatus.NotStarted;\r\n this.activeForm = new AssessmentRegistrationApplicationForm(this.forms[0], registrantStatus);\r\n this.pastApplications = this.forms.filter((form, i) => {\r\n return i > 0;\r\n });\r\n }\r\n else {\r\n this.status = this.forms.length ? this.forms[0].formStatus : ApplicationStatus.NotStarted;\r\n this.activeForm = new AssessmentRegistrationApplicationForm(this.forms[0], registrantStatus);\r\n this.pastApplications = this.forms.filter((form, i) => {\r\n return i > 0;\r\n });\r\n }\r\n }\r\n }\r\n}\r\n","import { ApplicationStatus } from '../../model/ApplicationStatus';\r\nimport { FormAnswer } from '../../../dynamic/model/FormAnswer';\r\nimport { FileUpload } from '../../../shared/model/FileUpload';\r\nimport { AssessmentRegistrationStep } from './AssessmentRegistrationStep';\r\nimport { ApplicationFormMode } from '../../model/ApplicationFormMode';\r\nimport { CountersignatureResult } from '../../model/CountersignatureResult';\r\nimport { RegistrantStatus } from '../../../registration/model/RegistrantStatus';\r\nimport { ApplicationForm } from '../../model/ApplicationForm';\r\nimport { FormScope } from '../../../registration/model/FormScope';\r\nimport { Applicant } from '../../../account/model/Applicant';\r\nimport { AssessmentTutorDetails } from '../../assessment-report/models/AssessmentTutors';\r\nimport { TraineeAssessment } from './TraineeAssessment';\r\nimport { Training } from '../../model/Training';\r\n\r\nexport class AssessmentRegistrationApplicationForm implements ApplicationForm {\r\n\r\n id: string;\r\n\r\n formStatus: ApplicationStatus;\r\n declarations: Array<{ dynamicFormId: string, answers: Array }>;\r\n attachments: Array = [];\r\n isOverallDeclarationConfirmed: boolean;\r\n\r\n step: AssessmentRegistrationStep;\r\n minStep: AssessmentRegistrationStep;\r\n mode: ApplicationFormMode;\r\n registrantStatus: RegistrantStatus;\r\n requirePayment: boolean;\r\n scope: FormScope;\r\n trainee: Applicant;\r\n declaration: {\r\n isQ1Confirmed: boolean;\r\n isQ2Confirmed: boolean;\r\n isQ3Confirmed: boolean;\r\n isQ4Confirmed: boolean;\r\n };\r\n training: Training;\r\n tutorDetails: Array;\r\n assessmentAttempts: Array;\r\n isTrainingConfirmed: boolean;\r\n isAssessmentConfirmed: boolean;\r\n\r\n get readonly() {\r\n return !(\r\n this.formStatus === ApplicationStatus.NotStarted ||\r\n this.formStatus === ApplicationStatus.InProgress ||\r\n this.registrantStatus === RegistrantStatus.IneligibleToRegister\r\n );\r\n }\r\n\r\n constructor(data, registrantStatus) {\r\n Object.assign(this, data);\r\n this.registrantStatus = registrantStatus;\r\n\r\n this.requirePayment = !data.isPaid;\r\n\r\n\r\n\r\n }\r\n}","export enum AssessmentRegistrationStep {\r\n PersonalDetails = 1,\r\n SupportingDocuments = 2,\r\n Regulation = 3,\r\n Declaration = 4,\r\n Review = 5,\r\n Payment = 6,\r\n Submit = 7\r\n}\r\n","import { Component, OnInit, ViewChild, forwardRef, Input } from '@angular/core';\r\nimport { AssessmentRegistrationStep } from '../../model/AssessmentRegistrationStep';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { FormStepperComponent } from '../../../../shared/formStepper/formStepper.component';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { AssessmentRegistration } from '../../model/AssessmentRegistration';\r\n\r\n@Component({\r\n selector: 'app-assessment-registration-declaration',\r\n templateUrl: './assessmentRegistrationDeclaration.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => AssessmentRegistrationDeclarationComponent)\r\n }\r\n ]\r\n})\r\nexport class AssessmentRegistrationDeclarationComponent\r\n extends FormStepComponent\r\n implements OnInit {\r\n viewReady: any;\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n @Input() application: AssessmentRegistration;\r\n\r\n saving: boolean = false;\r\n title = ' Declarations';\r\n stepId = AssessmentRegistrationStep.Declaration;\r\n\r\n ngOnInit() {\r\n }\r\n\r\n update() {\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n load() {\r\n if (this.viewReady) {\r\n this.ready$.next(true);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.ready$.next(true);\r\n this.viewReady = true;\r\n });\r\n }\r\n\r\n validate() {\r\n const {\r\n isQ1Confirmed,\r\n isQ2Confirmed,\r\n isQ3Confirmed,\r\n isQ4Confirmed\r\n } = this.application.activeForm.declaration;\r\n\r\n let valid =\r\n isQ1Confirmed && isQ2Confirmed && isQ3Confirmed && isQ4Confirmed;\r\n const messages = [];\r\n\r\n if (!isQ1Confirmed) {\r\n messages.push('You have not confirmed the 1st declaration');\r\n }\r\n if (!isQ2Confirmed) {\r\n messages.push('You have not confirmed the 2nd declaration');\r\n }\r\n if (!isQ3Confirmed) {\r\n messages.push('You have not confirmed the 3rd declaration');\r\n }\r\n if (!isQ4Confirmed) {\r\n messages.push('You have not confirmed the 4th declaration');\r\n }\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n populateForm() { }\r\n}\r\n","\r\n
    \r\n

    \r\n
    \r\n Application to sit the registration assessment\r\n
    \r\n \r\n

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

    Applicant declarations

    \r\n
    \r\n

    \r\n \r\n The information that I have provided in this application is complete, true and accurate. I understand that if I\r\n am found to have given\r\n false or misleading information in connection with this application, it will affect my ability to join the\r\n register\r\n \r\n \r\n

    \r\n

    \r\n Please select this checkbox\r\n

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

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

    \r\n \r\n I understand and accept that the GPhC may use the information I have provided as part of this application to\r\n assess:\r\n

      \r\n
    • any application to join the register I may make
    • \r\n
    • any application to renew my registration I may make
    • \r\n
    • my fitness to practise
    • \r\n
    \r\n and that the GPhC may ask me for updated information for these purposes, in line with the GPhC privacy policy\r\n \r\n \r\n
    \r\n

    \r\n Please select this checkbox\r\n

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

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

    \r\n \r\n I have read and understood the registration assessment regulations relating to this sitting, and I agree to\r\n follow them\r\n \r\n \r\n

    \r\n

    \r\n Please select this checkbox\r\n

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

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

    \r\n \r\n I understand that I must provide appropriate photo identification on the day of the assessment, as specified\r\n by Surpass, and that\r\n I will not be able to sit the assessment without it\r\n \r\n \r\n

    \r\n

    \r\n Please select this checkbox\r\n

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

    \r\n
    \r\n
    \r\n
    \r\n","import { Component, forwardRef, ElementRef, ViewChild, Renderer2 } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { creditCards, CreditCard } from '../../../../renewal/model/CreditCard';\r\nimport { RenewalService } from '../../../../core/service/renewal.service';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { AssessmentRegistrationStep } from '../../model/AssessmentRegistrationStep';\r\nimport { AssessmentRegistrationService } from '../../../../core/service/assessmentRegistration.service';\r\n\r\n@Component({\r\n selector: 'app-assessment-payment-step',\r\n templateUrl: './assessmentRegistrationPaymentStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => AssessmentRegistrationPaymentStepComponent)\r\n }\r\n ]\r\n})\r\nexport class AssessmentRegistrationPaymentStepComponent extends FormStepComponent {\r\n title = 'Payment';\r\n stepId = AssessmentRegistrationStep.Payment;\r\n fee;\r\n cartId;\r\n selectedCard: CreditCard;\r\n creditCards = creditCards;\r\n worldpayConfig;\r\n @ViewChild('worldpayForm') worldpayForm: ElementRef;\r\n constructor(\r\n private renewalService: RenewalService,\r\n private renderer: Renderer2,\r\n stepper: FormStepperService,\r\n private assessmentRegistrationService: AssessmentRegistrationService\r\n ) {\r\n super(stepper);\r\n }\r\n load() {\r\n this.fee = this.application.assessmentRegistrationFee;\r\n this.renewalService.getWordpayConfig().subscribe(config => {\r\n this.worldpayConfig = config;\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n validate() {\r\n 2\r\n const messages = [];\r\n const valid = !!this.selectedCard;\r\n if (!valid) {\r\n messages.push('You must select a card type to proceed to payment');\r\n }\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n beforeNext() {\r\n this.assessmentRegistrationService\r\n .saveApplicationPayment()\r\n .subscribe(result => {\r\n this.cartId = JSON.stringify(result.paymentIdentifier);\r\n setTimeout(() => {\r\n // this.renderer.setProperty(this.worldpayForm.nativeElement, 'value','submit');\r\n this.worldpayForm.nativeElement.submit();\r\n }, 100);\r\n });\r\n return false;\r\n }\r\n\r\n populateForm() { }\r\n}\r\n","\r\n

    \r\n Application fee\r\n \"Worldpay

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

    Fees to be paid

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

    \r\n Assessment registration application fee: {{fee | currency: 'GBP': 'symbol' :'.2'}}\r\n

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

    Please select your card type

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

    \r\n We can only accept payments made in pounds sterling (GBP). Payments are processed using worldpay, for more\r\n information please\r\n review their\r\n privacy policy.\r\n

    \r\n

    \r\n When you make a card payment, you may be redirected to your card provider’s site to enter another password\r\n before they authorise\r\n your payment. You can find out more about 3-D Secure authentication from your card provider.\r\n

    \r\n
    \r\n\r\n \r\n \r\n \"{{card.name}}\r\n
    {{card.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","import { OnInit, Component, forwardRef, AfterViewInit, EventEmitter, Output, ViewChild, Input } from '@angular/core';\r\nimport { ContactEditComponent } from '../../../../account/contactEdit.component';\r\nimport { Tooltip } from '../../../../core/tooltip/Tooltip';\r\nimport { Applicant } from '../../../../account/model/Applicant';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { AssessmentRegistrationStep } from '../../model/AssessmentRegistrationStep';\r\n\r\n@Component({\r\n selector: 'app-assessment-registration-personal-details',\r\n templateUrl: './assessmentRegistrationPersonalDetails.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => AssessmentRegistrationPersonalDetailsComponent)\r\n }\r\n ]\r\n}) export class AssessmentRegistrationPersonalDetailsComponent extends FormStepComponent implements OnInit, AfterViewInit {\r\n\r\n\r\n showDetailsHelp = false;\r\n showContactHelp = false;\r\n applicant: Applicant;\r\n contactValid;\r\n hasAddress;\r\n hasTitle;\r\n hasNationality;\r\n selection;\r\n title = 'Contact details';\r\n @Input() stepId = AssessmentRegistrationStep.PersonalDetails;\r\n @Output() navigate = new EventEmitter();\r\n viewReady = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n @ViewChild('contact') contact: ContactEditComponent;\r\n ngOnInit() {\r\n this.applicant = this.application.trainee;\r\n }\r\n\r\n load() {\r\n if (this.viewReady) {\r\n this.ready$.next(true);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.ready$.next(true);\r\n this.viewReady = true;\r\n });\r\n }\r\n\r\n update() {\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n validate() {\r\n\r\n const messages = [];\r\n const valid = true;\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n populateForm() { }\r\n\r\n\r\n\r\n\r\n}\r\n","\r\n
    \r\n

    \r\n
    \r\n Contact details\r\n
    \r\n

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

    Please check that your name shows exactly as it appears on the identity document you intend to take with you to\r\n the\r\n assessment.

    \r\n\r\n

    If you need to change your name please complete a\r\n Change of details form.\r\n

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

    \r\n
    \r\n Contact details\r\n
    \r\n \r\n \r\n

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

    \r\n If any of the information shown below is incorrect, you can update it on the ‘Account’ section of myGPhC.\r\n

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

    Home address

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

    \r\n If you would like to receive your assessment results by email, please make sure that you have agreed to receive\r\n essential\r\n GPhC emails. You can check your communications preferences in the ‘Accounts’ section of myGPhC.

    \r\n
    \r\n\r\n\r\n\r\n
    ","import { Component, OnInit, ViewChild, forwardRef, Input, Output, EventEmitter } from '@angular/core';\r\nimport { AssessmentRegistrationStep } from '../../model/AssessmentRegistrationStep';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { FormStepperComponent } from '../../../../shared/formStepper/formStepper.component';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { AssessmentRegistration } from '../../model/AssessmentRegistration';\r\n//added new scss file to add background color\r\n@Component({\r\n selector: 'app-assessment-registration-regulation-step',\r\n templateUrl: './assessmentRegistrationRegulationStep.component.html',\r\n styleUrls: ['./assessmentRegistrationRegulation.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => AssessmentRegistrationRegulationStepComponent)\r\n }\r\n ]\r\n})\r\nexport class AssessmentRegistrationRegulationStepComponent\r\n extends FormStepComponent\r\n implements OnInit {\r\n viewReady: any;\r\n hasCheckedRgistrationRegulation;\r\n hasCheckedCorrectInformation;\r\n hasCheckedPhotoIdentification;\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n @Input() application: AssessmentRegistration;\r\n @Output() navigate = new EventEmitter();\r\n\r\n saving: boolean = false;\r\n title = 'Regulations';\r\n stepId = AssessmentRegistrationStep.Regulation;\r\n\r\n ngOnInit() {\r\n }\r\n\r\n update() {\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n load() {\r\n if (this.viewReady) {\r\n this.ready$.next(true);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.ready$.next(true);\r\n this.viewReady = true;\r\n });\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n const valid = true;\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n\r\n populateForm() { }\r\n}\r\n","\r\n
    \r\n

    \r\n
    \r\n Application to sit the registration assessment\r\n
    \r\n \r\n

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

    Registration assessment eligibility

    \r\n
    \r\n

    \r\n In order to apply to sit the upcoming registration assessment you need\r\n to submit this application, pay the application fee by the advertised\r\n deadline and confirm that you have read and understood the\r\n registration assessment regulations.\r\n

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

    Fee payment

    \r\n
    \r\n

    \r\n\r\n The payment that you make will only be applicable for the upcoming\r\n registration assessment. If you withdraw from the registration\r\n assessment you will receive a refund in due course. In order to sit a\r\n subsequent registration assessment you will need to apply again once\r\n the application has been made available and pay the required fee.\r\n\r\n

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

    Confirmation of application

    \r\n
    \r\n

    \r\n Once you have paid the application fee you will receive a notification\r\n confirming that your registration assessment application is being\r\n processed.\r\n

    \r\n

    \r\n We will issue confirmation of your final entry approximately 3 weeks\r\n prior to the assessment sitting. If you do not receive this by 2 weeks\r\n prior to the date of the assessment please contact\r\n regexam@pharmacyregulation.org.\r\n

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

    Contact details

    \r\n
    \r\n

    \r\n Please ensure that you keep your contact information up to date within\r\n myGPhC.\r\n

    \r\n

    \r\n If you would like to receive information about the assessment by email, \r\n please make sure that you have agreed to receive essential GPhC emails. \r\n You can check your communications preferences in the ‘Accounts’ section of myGPhC.\r\n

    \r\n

    \r\n If you do not do this, we will send all information about the\r\n registration assessment, including your results, by post which may\r\n delay receipt.\r\n

    \r\n
    \r\n
    \r\n\r\n
    \r\n","import { Component, OnInit, Input, forwardRef, Output, EventEmitter } from '@angular/core';\r\nimport { Applicant } from '../../../../account/model/Applicant';\r\nimport { AssessmentRegistration } from '../../model/AssessmentRegistration';\r\nimport { AssessmentRegistrationStep } from '../../model/AssessmentRegistrationStep';\r\n@Component({\r\n selector: 'assessment-registration-review',\r\n templateUrl: './assessmentRegistrationReview.component.html',\r\n styleUrls: ['../../../../style/sectionHeaders.scss']\r\n}) export class AssessmentRegistrationReviewComponent {\r\n applicant: Applicant;\r\n @Input() application: AssessmentRegistration;\r\n @Input() readonly = false;\r\n @Input() formId;\r\n @Input() showEdi = true;\r\n @Input() showContactDetails = true;\r\n AssessmentRegistrationStep = AssessmentRegistrationStep;\r\n\r\n @Output() navigate = new EventEmitter();\r\n ngOnInit() {\r\n this.applicant = this.application.trainee;\r\n }\r\n goToStep(stepId) {\r\n this.navigate.emit(stepId);\r\n }\r\n}\r\n","
    \r\n

    \r\n
    Personal details
    \r\n

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

    \r\n
    Contact details
    \r\n

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

    \r\n
    Home address
    \r\n

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

    Applicant declarations

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

    \r\n \r\n The information that I have provided in this application is complete, true and accurate I understand that if I\r\n am found to have given\r\n false or misleading information in connection with this application, it will affect my ability to join the\r\n register\r\n \r\n

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

    \r\n \r\n I understand and accept that the GPhC may use the information I have provided as part of this application to\r\n assess:\r\n

      \r\n
    • any application to join the register I may make
    • \r\n
    • any application to renew my registration I may make
    • \r\n
    • my fitness to practise
    • \r\n
    \r\n and that the GPhC may ask me for updated information for these purposes, in line with the GPhC privacy policy\r\n \r\n

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

    \r\n \r\n I have read and understood the registration assessment regulations relating to this sitting, and I agree to\r\n follow them\r\n \r\n

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

    \r\n \r\n I understand that I must provide appropriate photo identification on the day of the assessment, as specified\r\n by Surpass, and that\r\n I will not be able to sit the assessment without it\r\n \r\n

    \r\n
    \r\n
    \r\n
    \r\n","import { Input, Component, forwardRef, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport { Applicant } from '../../../../account/model/Applicant';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { AssessmentRegistrationStep } from '../../model/AssessmentRegistrationStep';\r\n\r\n\r\n@Component({\r\n selector: 'assessment-registration-review-step',\r\n templateUrl: './assessmentRegistrationReviewStep.component.html',\r\n styleUrls: ['./assessmentRegistrationReviewStep.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => AssessmentRegistrationReviewStepComponent)\r\n }\r\n ]\r\n}) export class AssessmentRegistrationReviewStepComponent extends FormStepComponent implements OnInit {\r\n title;\r\n @Input() stepId = AssessmentRegistrationStep.Review;\r\n applicant: Applicant;\r\n AssessmentRegistrationStep = AssessmentRegistrationStep;\r\n @Input() readonly = false;\r\n\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n @Output() navigate = new EventEmitter();\r\n\r\n ngOnInit() {\r\n this.applicant = this.application.trainee;\r\n this.title = this.readonly ? 'Final review' : 'Review';\r\n }\r\n\r\n validate() {\r\n this.validity$.next({ valid: true, messages: [], touched: this.touched });\r\n }\r\n\r\n goToStep(stepId) {\r\n this.navigate.emit(stepId);\r\n }\r\n\r\n populateForm() { }\r\n\r\n}\r\n","\r\n

    Review your application

    \r\n\r\n \r\n \r\n\r\n
    ","import { Component, forwardRef } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { Router } from '@angular/router';\r\nimport { LayoutService } from '../../../../core/service/layout.service';\r\nimport { ApplicationStatus } from '../../../model/ApplicationStatus';\r\nimport { AssessmentRegistrationStep } from '../../model/AssessmentRegistrationStep';\r\nimport { AssessmentRegistrationService } from '../../../../core/service/assessmentRegistration.service';\r\n\r\n@Component({\r\n selector: 'app-assessment-registration-submit',\r\n templateUrl: './assessmentRegistrationSubmit.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => AssessmentRegistrationSubmitComponent)\r\n }\r\n ]\r\n}) export class AssessmentRegistrationSubmitComponent extends FormStepComponent {\r\n\r\n title = 'Submit';\r\n stepId = AssessmentRegistrationStep.Submit;\r\n serverErrors;\r\n submitting;\r\n\r\n constructor(service: FormStepperService, private assessmentService: AssessmentRegistrationService, private router: Router, private layout: LayoutService) {\r\n super(service);\r\n }\r\n\r\n beforeNext() {\r\n this.submitting = true;\r\n this.layout.setOverlay(true);\r\n this.assessmentService.reSubmitApplication(this.application.activeForm.id).subscribe(() => {\r\n this.application.activeForm.formStatus = ApplicationStatus.Submitted;\r\n // invalidate cache\r\n delete this.assessmentService.application;\r\n this.layout.setOverlay(false);\r\n this.router.navigate(['/home']);\r\n }, error => {\r\n this.layout.setOverlay(false);\r\n this.serverErrors = error.validationErrors;\r\n this.submitting = false;\r\n });\r\n return false;\r\n }\r\n\r\n validate() {\r\n\r\n this.validity$.next({ valid: true, messages: [], touched: this.touched });\r\n }\r\n\r\n populateForm() { }\r\n\r\n\r\n}\r\n","\r\n

    Submit your application

    \r\n
    \r\n

    As you have already made a payment you can submit this application without paying again.

    \r\n

    Click the 'next' button if you are ready.

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

    \r\n {{ 'Server validation error: ' + error.errors.join(',') }}\r\n

    \r\n
    \r\n
    ","import { Component, forwardRef, OnInit } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { UploadType } from '../../../../shared/model/UploadType';\r\nimport { FileUpload } from '../../../../shared/model/FileUpload';\r\nimport { AttachmentType } from '../../../../shared/model/AttachmentType';\r\nimport utils from '../../../../shared/service/utils';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { Tooltip } from '../../../../core/tooltip/Tooltip';\r\nimport { SupportingDocumentsService } from '../../../../shared/supportingDocuments/supportingDocuments.service';\r\nimport { AssessmentRegistrationStep } from '../../model/AssessmentRegistrationStep';\r\n\r\n\r\n@Component({\r\n selector: 'app-assessment-registration-supporting-documents-step',\r\n templateUrl: './assessmentRegistrationSupportingDocumentsStep.component.html',\r\n styleUrls: ['./assessmentRegistrationSupportingDocumentsStep.scss'],\r\n providers: [\r\n SupportingDocumentsService,\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => AssessmentRegistrationSupportingDocumentsStepComponent)\r\n }\r\n ]\r\n})\r\nexport class AssessmentRegistrationSupportingDocumentsStepComponent extends FormStepComponent implements OnInit {\r\n\r\n constructor(stepper: FormStepperService, private docService: SupportingDocumentsService) {\r\n super(stepper);\r\n }\r\n showDetailsHelp = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n title = 'ID document upload';\r\n stepId = AssessmentRegistrationStep.SupportingDocuments;\r\n attachments: { [key: number]: Array } = {};\r\n AttachmentType = AttachmentType;\r\n uploadType = UploadType.AssessmentRegistrationDocuments;\r\n sessionId = utils.guid();\r\n viewReady = false;\r\n registeredDocTypes = [];\r\n docTypes = 1;\r\n\r\n\r\n populateForm() { }\r\n\r\n ngOnInit() {\r\n if (this.application.activeForm.attachments) {\r\n this.application.activeForm.attachments.forEach(attachment => {\r\n this.attachments[attachment.type] = this.attachments[attachment.type] || [];\r\n this.attachments[attachment.type].push(attachment);\r\n });\r\n }\r\n }\r\n\r\n load() {\r\n if (this.viewReady) {\r\n this.ready$.next(true);\r\n }\r\n }\r\n\r\n onRegistered(type: AttachmentType) {\r\n this.registeredDocTypes.push(type);\r\n if (this.registeredDocTypes.length === this.docTypes) {\r\n setTimeout(() => {\r\n this.viewReady = true;\r\n this.ready$.next(true);\r\n });\r\n }\r\n }\r\n\r\n validate() {\r\n const messages = this.docService.validate();\r\n this.validity$.next({ valid: !messages.length, messages, touched: this.touched });\r\n }\r\n\r\n onUploaded($event) {\r\n this.attachments[$event.type] = $event.uploads;\r\n $event.uploads.forEach(upload => upload.type = $event.type);\r\n this.updateApplication();\r\n }\r\n\r\n updateApplication() {\r\n let attachments = [];\r\n for (const type in this.attachments) {\r\n attachments = attachments.concat(this.attachments[type]);\r\n }\r\n this.application.activeForm.attachments = attachments;\r\n this.validate();\r\n this.makeDirty();\r\n }\r\n\r\n}\r\n","\r\n
    \r\n

    \r\n
    \r\n ID document upload\r\n
    \r\n

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

    \r\n Upload a copy of the ID that you will use during the registration assessment to verify your identity.\r\n The primary ID must be current, valid and contain your photograph and signature.\r\n

    \r\n

    \r\n You must upload either:\r\n

    \r\n
      \r\n
    • A currently valid and signed passport, of any country
    • \r\n
    \r\n

    \r\n OR:\r\n

    \r\n
      \r\n
    • A currently valid full or provisional UK photo driving license
    • \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n","import { FormStepperComponent } from './../../shared/formStepper/formStepper.component';\r\nimport { Component, OnInit, ViewChild, AfterContentInit, AfterViewInit, ViewChildren, QueryList } from '@angular/core';\r\nimport { FormStepperService } from '../../shared/formStepper/formStepper.service';\r\nimport { CanComponentDeactivate } from '../../guard/CanDeactivate.guard';\r\nimport { User } from '../../account/model/User';\r\nimport { AssessmentReportStep } from './models/AssessmentReportStep';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { LogService } from '../../core/service/log.service';\r\nimport { AssessmentReportService } from '../../core/service/assessmentReport.service';\r\nimport { LayoutService } from '../../core/service/layout.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ApplicationStatus } from '../model/ApplicationStatus';\r\nimport { Observable, from, of } from 'rxjs';\r\nimport { ConfirmDialogComponent } from '../../shared/confirmDialog.component';\r\nimport { mergeMap } from 'rxjs/operators';\r\nimport { FormStepSummary } from '../../shared/formStepper/FormStepSummary';\r\nimport { CountersignatureOutcome } from '../model/CountersignatureOutcome';\r\nimport { AssessmentReport } from './models/AssessmentReport';\r\nimport { FormStepComponent } from '../../shared/formStepper/formStep.component';\r\n\r\n@Component({\r\n selector: 'app-assessment-report-application',\r\n moduleId: module.id,\r\n templateUrl: './assessmentReport.component.html',\r\n styleUrls: ['../application-form.scss'],\r\n providers: [FormStepperService]\r\n})\r\nexport class AssessmentReportComponent implements OnInit,\r\n CanComponentDeactivate, AfterViewInit {\r\n\r\n user: User;\r\n loading = false;\r\n ready = false;\r\n saving = false;\r\n loadingError = false;\r\n application: AssessmentReport;\r\n maxStep: AssessmentReportStep;\r\n minStep: AssessmentReportStep;\r\n showGuidanceWarning = false;\r\n AssessmentReportStep = AssessmentReportStep;\r\n isApplicationOpen = true;\r\n applicationClosedMessage: string;\r\n hasRegistration;\r\n start;\r\n minExecution;\r\n\r\n @ViewChildren(FormStepperComponent) formStepperComponents: QueryList;\r\n formStepper: FormStepperComponent;\r\n allSteps: FormStepComponent[];\r\n hasRegistered: boolean;\r\n allStepSummary: any;\r\n\r\n initialSteps;\r\n\r\n constructor(private router: Router, private auth: AuthService,\r\n private log: LogService, private service: AssessmentReportService,\r\n public layout: LayoutService,\r\n private dialog: MatDialog,\r\n public formStepperService: FormStepperService,\r\n private datePipe: DatePipe\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.load();\r\n }\r\n\r\n ngAfterViewInit() {\r\n // this.allSteps = this.formStepper.steps;\r\n this.formStepperComponents.changes.subscribe((comps: QueryList ) =>\r\n {\r\n this.formStepper = comps.first;\r\n this.updateStepId();\r\n });\r\n }\r\n\r\n reopenApplication() {\r\n this.cancelCountersignature(1);\r\n }\r\n\r\n print() {\r\n return (window).print();\r\n }\r\n\r\n get isSubmitted() {\r\n return (this.application && this.application.activeForm.formStatus) === ApplicationStatus.Submitted;\r\n }\r\n\r\n get ineligible() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.Ineligible;\r\n }\r\n\r\n get allowResubmit() {\r\n return !this.application.activeForm.requirePayment;\r\n }\r\n get isAssessmentCountersigned() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.CounterSigned;\r\n }\r\n\r\n get hasBeenApproved() {\r\n return this.application.activeForm.countersignatures[0].decision === CountersignatureOutcome.Approved;\r\n }\r\n\r\n get hasCountersignRejected() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.CounterSigned &&\r\n this.application.activeForm.countersignatures[0].decision === CountersignatureOutcome.Rejected;\r\n }\r\n get isProvisionalApplication() {\r\n return (this.application && this.application.activeForm.step) === AssessmentReportStep.FtpDeclaration1 ||\r\n (this.application && this.application.activeForm.step) === AssessmentReportStep.FtpDeclaration2 ||\r\n (this.application && this.application.activeForm.step) === AssessmentReportStep.OverallDeclaration;\r\n }\r\n\r\n get isFinalReport() {\r\n return (this.application && this.application.activeForm.step) === AssessmentReportStep.Submit;\r\n }\r\n\r\n resubmitApplication() {\r\n this.layout.setFullscreenSpinner(true, 'Submitting...');\r\n this.service.reSubmitApplication(this.application.activeForm.id).subscribe(() => {\r\n this.router.navigate(['/home']);\r\n // invalidate cache\r\n delete this.service.application;\r\n this.layout.setFullscreenSpinner(false);\r\n }, error => {\r\n this.layout.setFullscreenSpinner(false);\r\n });\r\n }\r\n\r\n\r\n load() {\r\n this.user = this.auth.user;\r\n this.loading = true;\r\n this.loadingError = false;\r\n this.service.getAssessmentReportApplication(this.auth.user.registrationStatus).subscribe(application => {\r\n this.application = application;\r\n console.log({ application })\r\n\r\n this.isApplicationOpen = this.application.isOpen;\r\n\r\n if (!this.isApplicationOpen) {\r\n this.applicationClosedMessage = `Your 39 week progress report will soon be available here for sign-off. Please come back once you have completed the 36th week of your training.`;\r\n this.loading = false;\r\n return;\r\n }\r\n\r\n if (this.application.activeForm.step) {\r\n this.maxStep = this.application.activeForm.step;\r\n }\r\n if (this.application.activeForm.minStep) {\r\n this.minStep = this.application.activeForm.minStep;\r\n }\r\n\r\n this.loading = false;\r\n this.ready = true;\r\n // setTimeout(() => {\r\n // this.showGuidanceWarning = this.formStepper && this.formStepper.currentStep === AssessmentReportStep.TrainingConfirmation;\r\n // });\r\n }, error => {\r\n this.loading = false;\r\n this.loadingError = true;\r\n });\r\n\r\n }\r\n\r\n\r\n warnForDirty(): Observable {\r\n\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n title: `Unsaved changes`,\r\n message: `

    Do you want to save your changes before exiting your application form?

    `\r\n }\r\n });\r\n return dialogRef.afterClosed()\r\n .pipe(mergeMap(shouldSave => {\r\n if (shouldSave) {\r\n this.layout.setFullscreenSpinner(true);\r\n return from(this.save().then(() => {\r\n return true;\r\n }, error => {\r\n // show error messages\r\n this.layout.setFullscreenSpinner(false);\r\n return false;\r\n }));\r\n } else {\r\n return of(true);\r\n }\r\n }));\r\n }\r\n\r\n canDeactivate() {\r\n if (!this.formStepper || !this.formStepper.currentStep || !this.formStepper.currentStep.dirty) { return true; }\r\n return this.warnForDirty();\r\n }\r\n\r\n public respond(): any {\r\n const respondObservable = new Observable(observer => {\r\n const end = performance.now();\r\n const duration = end - this.start;\r\n if (duration < this.minExecution) {\r\n setTimeout(() => {\r\n observer.next();\r\n }, Math.round(this.minExecution - duration));\r\n } else {\r\n observer.next();\r\n }\r\n });\r\n return respondObservable;\r\n }\r\n getReport(resolve, reject) {\r\n this.service.getAssessmentReportApplication(this.auth.user.registrationStatus).subscribe(() => {\r\n this.respond().subscribe(() => {\r\n this.saving = false;\r\n resolve();\r\n });\r\n }, error => {\r\n this.respond().subscribe(() => {\r\n this.saving = false;\r\n reject(error);\r\n });\r\n });\r\n }\r\n\r\n saveReport(resolve, reject) {\r\n this.service.saveAssessmentReportApplication(this.application).subscribe(() => {\r\n this.respond().subscribe(() => {\r\n this.saving = false;\r\n resolve();\r\n });\r\n }, error => {\r\n this.respond().subscribe(() => {\r\n this.saving = false;\r\n reject(error);\r\n });\r\n });\r\n }\r\n save() {\r\n this.saving = true;\r\n this.application.activeForm.step = this.formStepperService.getFurthestStep();\r\n this.formStepper.currentStep.populateForm();\r\n return new Promise((resolve, reject) => {\r\n this.start = performance.now();\r\n this.minExecution = 300;\r\n const training = this.application.activeForm.step = AssessmentReportStep.TrainingConfirmation;\r\n //const supportDocs = this.application.activeForm.step = AssessmentReportStep.SupportingDocuments;\r\n if (training) {\r\n this.saveReport(resolve, reject);\r\n }\r\n const countersigned = this.application.activeForm.formStatus === ApplicationStatus.CounterSigned;\r\n const ReadyForCountersigning = this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning;\r\n if (countersigned || ReadyForCountersigning) {\r\n this.getReport(resolve, reject);\r\n }\r\n // const tempRegistration = this.application.activeForm.step = AssessmentReportStep.TemporaryRegistration;\r\n // if (countersigned && tempRegistration) {\r\n // this.saveReport(resolve, reject);\r\n // }\r\n const finalReview = this.application.activeForm.step = AssessmentReportStep.FinalReview;\r\n if (!finalReview) {\r\n this.saveReport(resolve, reject);\r\n }\r\n });\r\n }\r\n\r\n goToStepId(stepId) {\r\n if (this.application.activeForm.formStatus === ApplicationStatus.CounterSigned) {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n title: `Form is countersigned`,\r\n message: `

    If you need to edit these details you will have to get the form countersigned again.

    \r\n

    Are you sure ?

    \r\n `\r\n }\r\n });\r\n dialogRef.afterClosed().subscribe(cancelCountersignature => {\r\n if (cancelCountersignature) {\r\n this.cancelCountersignature(stepId);\r\n }\r\n });\r\n } else {\r\n this.formStepper.goToStep(stepId);\r\n }\r\n }\r\n\r\n\r\n goToStep(step: FormStepSummary) {\r\n if (step.disabled) { return; }\r\n this.formStepper.goToStep(step.stepId);\r\n }\r\n\r\n cancelCountersignature(stepId) {\r\n this.layout.setFullscreenSpinner(true, 'Reverting...');\r\n this.service.cancelCountersignature(this.application.activeForm.id).subscribe(() => {\r\n this.application.activeForm.formStatus = ApplicationStatus.InProgress;\r\n setTimeout(() => {\r\n if (this.formStepperService.summary) {\r\n this.formStepperService.summary.find(step => step.stepId === AssessmentReportStep.Countersigning).validity.valid = false;\r\n this.formStepperService.setStepRange(1, AssessmentReportStep.Countersigning);\r\n }\r\n this.formStepper.goToStep(stepId);\r\n this.layout.setFullscreenSpinner(false);\r\n });\r\n\r\n }, error => {\r\n this.layout.setFullscreenSpinner(false);\r\n });\r\n }\r\n\r\n stepChanged(stepId) {\r\n setTimeout(() => {\r\n this.service.setStep(this.application.activeForm.id, stepId).subscribe();\r\n this.application.activeForm.step = stepId;\r\n }, 1000);\r\n }\r\n\r\n stepChange(): () => Promise {\r\n return function () {\r\n return new Promise((resolve, reject) => {\r\n if (this.formStepper.currentStep.dirty || this.formStepper.currentStep.stepId) {\r\n\r\n this.formStepper.serverErrors = [];\r\n return this.save().then(() => {\r\n resolve();\r\n }, error => {\r\n this.formStepper.serverErrors = error.validationErrors;\r\n reject(error);\r\n });\r\n } else {\r\n resolve();\r\n }\r\n });\r\n }.bind(this);\r\n }\r\n\r\n updateStepId(): void {\r\n if(this.formStepper) {\r\n if(this.formStepperService.updateStepsId(this.initialSteps, this.formStepper.steps)) {\r\n this.initialSteps = this.formStepper.steps;\r\n }\r\n }\r\n }\r\n\r\n // changedTempRegistration(hasRegistered: boolean): void {\r\n // if (this.formStepper.steps.length === 9) {\r\n // this.cloneSteps();\r\n // this.cloneSummary();\r\n // }\r\n\r\n // const stepsWithoutDecl = this.formStepper.steps.filter(step => !step.title.includes('Declaration'));\r\n // const menuWihoutDecl = this.formStepperService.summary.filter(step => !step.title.includes('Declaration'));\r\n\r\n // if (hasRegistered) {\r\n // if (this.formStepper.steps.length === 6) {\r\n // this.formStepper.steps = this.allSteps;\r\n // this.formStepperService.summary = this.allStepSummary;\r\n // }\r\n // } else {\r\n // this.formStepper.steps = stepsWithoutDecl;\r\n // this.formStepperService.summary = menuWihoutDecl;\r\n // this.application.activeForm.clearDeclarationSteps();\r\n // }\r\n // this.formStepperService.update();\r\n // }\r\n\r\n // cloneSteps(): void {\r\n // this.allSteps = this.formStepper.steps.slice();\r\n // }\r\n\r\n // cloneSummary(): void {\r\n // this.allStepSummary = this.formStepperService.summary.slice();\r\n // }\r\n\r\n}","
    \r\n\r\n
    \r\n\r\n \r\n
    \r\n\r\n
    \r\n

    39 week progress report

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

    Before you begin your application for registration,\r\n read the guidance on providing correctly certified supporting documents [hyperlink to policy website]

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

    \r\n An error occurred while attempting to load your application\r\n

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

    This application has been marked as ineligible.

    \r\n
    \r\n

    You can either re-submit this application as it is, or re-open this one for editing if you need to make\r\n changes.

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

    You can re-open this application if you would like to submit again.

    \r\n \r\n
    \r\n\r\n\r\n
    \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n
    \r\n\r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n \r\n\r\n \r\n \r\n\r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n\r\n
    \r\n \r\n 39 week progress report\r\n \r\n
    \r\n \r\n
    \r\n

    \r\n {{ applicationClosedMessage }}\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    ","export enum AssessmentApplicationStatus {\r\n\r\n NotStarted = 1,\r\n InProgress = 2,\r\n \r\n // ROS\r\n Completed = 4,\r\n \r\n // ROS (= trainees) Registration Application was submitted to CRM \r\n // PROS (= students) Pre-Registration Application was submitted to CRM \r\n Submitted = 3,\r\n \r\n // ROS:Means that the countersigner has been selected for this form, and that the\r\n // from is ready to be countersigned by that pharmacist.\r\n ProgressReportDue = 5,\r\n \r\n // ROS: If ApplicationForRegistration status is changing to 'approved\r\n // pending first year fee', FormStatus is set to\r\n // ApprovedPendingFirstYearFee by PreEntry subscriber\r\n // If this flag is true then 'First Year Payment should be available in UI'.\r\n ApprovedPendingFirstYearFee = 6,\r\n \r\n // ROS: If ApplicationForRegistration status is changing to 'Ineligible', FormStatus is set to Ineligible by PreEntry subscriber\r\n // PROS: If PreRegStatus is changing to 'Ineligible' in CRM, the form should be read-only https://mygphc.atlassian.net/browse/PROS-279\r\n Ineligible = 7,\r\n \r\n // ROS: First Year Fee was paid but the form was not approved in CRM\r\n PendingProcessing = 10,\r\n \r\n // ROS (= trainees) Registration Application was approved in CRM and both\r\n // payments were made; at this stage user is ready to be a\r\n // pharmacist/pharmacy technician\r\n // PROS (= students) Pre-Registration Application was approved in CRM\r\n Approved = 11,\r\n \r\n // PROS (= students) Pre-Registration Application was marked as 'Waiting for applicant' in CRM\r\n // https://mygphc.atlassian.net/browse/PROS-281\r\n WaitingForApplicant = 12,\r\n \r\n // PROS (= students) Pre-Registration Application was marked as terminated in CRM\r\n // https://mygphc.atlassian.net/browse/PROS-61\r\n Terminated = 13,\r\n \r\n // PROS: If PreRegStatus is changing to 'Ceased Training' in CRM, the\r\n // form should be read-only https://mygphc.atlassian.net/browse/PROS-279\r\n CeasedTraining = 14\r\n \r\n }","import { Applicant } from '../../../account/model/Applicant';\r\nimport { ApplicationStatus } from '../../model/ApplicationStatus';\r\nimport { AssessmentReportApplicationForm } from './AssessmentReportApplicationForm';\r\nimport { Training } from '../../model/Training';\r\nimport { RegistrantStatus } from '../../../registration/model/RegistrantStatus';\r\nimport { Registrant } from '../../../registration/model/Registrant';\r\nimport { Application } from '../../model/Application';\r\nimport { FileUpload } from '../../../shared/model/FileUpload';\r\nimport { AssessmentTutorDetails } from './AssessmentTutors';\r\nimport { CountersignatureResult } from '../../model/CountersignatureResult';\r\n\r\n\r\nexport class AssessmentReport implements Application {\r\n\r\n trainee: Applicant;\r\n registrant?: Registrant; // populated by the api once application status = approved pending registration, used for notice of entry\r\n training: Training;\r\n tutorDetails: Array;\r\n isFirstYearPaymentAvailable: boolean;\r\n attachments: Array = [];\r\n\r\n form: AssessmentReportApplicationForm;\r\n\r\n forms: Array = [];\r\n status: ApplicationStatus;\r\n activeForm: AssessmentReportApplicationForm;\r\n pastApplications: Array;\r\n countersignatures: Array;\r\n\r\n registrationFees: {\r\n applicationFee: number;\r\n registrationFee: number;\r\n };\r\n isOpen: boolean;\r\n thirtyNineWeekReportResult: string;\r\n\r\n\r\n constructor(data, registrantStatus: RegistrantStatus) {\r\n Object.assign(this, data);\r\n this.status = this.forms.length ? this.forms[0].formStatus : ApplicationStatus.NotStarted;\r\n this.activeForm = new AssessmentReportApplicationForm(this.forms[0], registrantStatus);\r\n this.pastApplications = this.forms.filter((form, i) => {\r\n return i > 0;\r\n });\r\n\r\n\r\n }\r\n\r\n\r\n\r\n}\r\n","import { ApplicationStatus } from '../../model/ApplicationStatus';\r\nimport { FormAnswer } from '../../../dynamic/model/FormAnswer';\r\nimport { FileUpload } from '../../../shared/model/FileUpload';\r\nimport { AssessmentReportStep } from './AssessmentReportStep';\r\nimport { LetterOfGoodStanding } from '../../model/LetterOfGoodStanding';\r\nimport { ApplicationFormMode } from '../../model/ApplicationFormMode';\r\nimport { CountersignatureResult } from '../../model/CountersignatureResult';\r\nimport { RegistrantStatus } from '../../../registration/model/RegistrantStatus';\r\nimport { ApplicationForm } from '../../model/ApplicationForm';\r\nimport { FormScope } from '../../../registration/model/FormScope';\r\nimport { AssessmentTutorDetails } from './AssessmentTutors';\r\n\r\nexport class AssessmentReportApplicationForm implements ApplicationForm {\r\n declarations: { dynamicFormId: string; answers: FormAnswer[]; }[];\r\n\r\n id: string;\r\n formStatus: ApplicationStatus;\r\n\r\n attachments: Array = [];\r\n isOverallDeclarationConfirmed: boolean;\r\n isTrainingConfirmed: boolean;\r\n isAssessmentConfirmed: boolean;\r\n isJointTutoringArrangmentExists: boolean;\r\n tutorDetails: Array;\r\n confirmTempRegistration: boolean;\r\n\r\n step: AssessmentReportStep;\r\n minStep: AssessmentReportStep;\r\n mode: ApplicationFormMode;\r\n\r\n registrantStatus: RegistrantStatus;\r\n\r\n requirePayment: boolean;\r\n scope: FormScope;\r\n countersignatures: Array;\r\n\r\n traineeFullName: string;\r\n prgEntryNumber: number;\r\n trainingSiteName: string;\r\n trainingSiteAddress: string;\r\n tutorFullName: string;\r\n tutorGPhCId: string;\r\n trainingNoOfWeeks: number;\r\n\r\n get readonly() {\r\n return !(this.formStatus === ApplicationStatus.NotStarted ||\r\n this.formStatus === ApplicationStatus.InProgress ||\r\n this.formStatus === ApplicationStatus.CounterSigned ||\r\n this.formStatus === ApplicationStatus.ReadyForCountersigning ||\r\n this.registrantStatus === RegistrantStatus.IneligibleToRegister);\r\n }\r\n\r\n constructor(data, registrantStatus) {\r\n Object.assign(this, data);\r\n this.registrantStatus = registrantStatus;\r\n\r\n\r\n // this.requirePayment = !data.isPaid;\r\n\r\n\r\n\r\n if (this.formStatus === ApplicationStatus.ReadyForCountersigning ||\r\n this.formStatus === ApplicationStatus.CounterSigned) {\r\n this.step = AssessmentReportStep.Countersigning;\r\n this.minStep = AssessmentReportStep.Countersigning;\r\n }\r\n if (this.formStatus === ApplicationStatus.InProgress && this.step > AssessmentReportStep.Countersigning) {\r\n this.step = AssessmentReportStep.Countersigning;\r\n }\r\n\r\n }\r\n\r\n\r\n clearDeclarationSteps() {\r\n this.declarations = [];\r\n }\r\n\r\n\r\n}\r\n","export enum AssessmentReportStep {\r\n // PersonalDetails ,\r\n TrainingConfirmation = 1,\r\n // SupportingDocuments,\r\n Countersigning,\r\n FinalReview,\r\n TemporaryRegistration,\r\n FtpDeclaration1,\r\n FtpDeclaration2,\r\n OverallDeclaration,\r\n Submit\r\n}\r\n","import {\r\n Component, forwardRef, ViewChildren,\r\n ViewChild, QueryList, ElementRef, Input, OnInit\r\n} from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ConfirmDialogComponent } from '../../../../shared/confirmDialog.component';\r\nimport { ApplicationStatus } from '../../../model/ApplicationStatus';\r\nimport { CountersignatureResult } from '../../../model/CountersignatureResult';\r\nimport { CountersignatureOutcome } from '../../../model/CountersignatureOutcome';\r\nimport { LogService } from '../../../../core/service/log.service';\r\nimport { AssessmentReportStep } from '../../models/AssessmentReportStep';\r\nimport { AssessmentReportService } from '../../../../core/service/assessmentReport.service';\r\nimport { AssessmentReport } from '../../models/AssessmentReport';\r\nimport { Tooltip } from '../../../../core/tooltip/Tooltip';\r\n\r\n@Component({\r\n selector: 'app-assessment-report-countersigning-step',\r\n templateUrl: './assessmentReportCountersigningStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => AssessmentReportCountersigningStepComponent)\r\n }\r\n ],\r\n styleUrls: ['./assessmentReportCountersigninStep.scss']\r\n})\r\nexport class AssessmentReportCountersigningStepComponent extends FormStepComponent implements OnInit {\r\n\r\n @Input() application: AssessmentReport;\r\n @Input() options;\r\n @ViewChildren('focus') focus: QueryList;\r\n @ViewChild('resultsList') resultsListRef: ElementRef;\r\n stepId = AssessmentReportStep.Countersigning;\r\n title = 'Countersignature';\r\n selectedPharmacist = '';\r\n findersending = false;\r\n recalling = false;\r\n serverErrors;\r\n CountersignatureOutcome = CountersignatureOutcome;\r\n showTooltip = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n sending = false;\r\n\r\n load() {\r\n if (this.application.activeForm.formStatus === ApplicationStatus.CounterSigned ||\r\n this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning) {\r\n this.prevDisabled = true;\r\n }\r\n this.serverErrors = undefined;\r\n this.ready$.next(true);\r\n }\r\n\r\n get awaitingCountersigning() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning;\r\n }\r\n\r\n get countersigned() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.CounterSigned;\r\n }\r\n\r\n set _prevDisabled(disabled) { }\r\n get _prevDisabled() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.CounterSigned ||\r\n this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning;\r\n }\r\n\r\n constructor(service: FormStepperService,\r\n private assessmentReportService: AssessmentReportService,\r\n private dialog: MatDialog, private log: LogService) {\r\n super(service);\r\n }\r\n\r\n ngOnInit() {\r\n this.populateForm();\r\n }\r\n\r\n sendForCountersigning() {\r\n\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n\r\n data: {\r\n confirmText: 'Yes',\r\n cancelText: 'No',\r\n title: `Send your progress report`,\r\n message: `

    Are you sure you are ready to send your progress report to be completed by your selected designated supervisor?

    `,\r\n confirmProgressReport: false\r\n }\r\n });\r\n\r\n dialogRef.afterClosed().subscribe(confirmed => {\r\n if (confirmed) {\r\n\r\n this.serverErrors = undefined;\r\n this.sending = true;\r\n this.assessmentReportService.sendToCountersigner(this.selectedPharmacist).subscribe(() => {\r\n this.log.info('Send to countersigner response - success');\r\n this.sending = false;\r\n this.log.info('Updating form status to ReadyForCountersigning');\r\n this.application.activeForm.formStatus = ApplicationStatus.ReadyForCountersigning;\r\n this.log.info('Updating form step validity');\r\n this.waiting = true;\r\n this.validity$.next({ valid: false, messages: [], touched: this.touched });\r\n setTimeout(() => {\r\n this.log.info('Locking form');\r\n this.service.disableAllStepsExcept(AssessmentReportStep.Countersigning);\r\n }, 50);\r\n }, error => {\r\n this.log.error('Send to countersigner response - fail', error);\r\n this.serverErrors = error.validationErrors;\r\n this.sending = false;\r\n });\r\n }\r\n\r\n });\r\n return false;\r\n\r\n }\r\n\r\n recall() {\r\n this.recalling = true;\r\n this.selectedPharmacist = null;\r\n this.assessmentReportService.recallFromCountersigner().subscribe(() => {\r\n this.recalling = false;\r\n this.waiting = false;\r\n this.application.activeForm.formStatus = ApplicationStatus.InProgress;\r\n this.service.setStepRange(1, AssessmentReportStep.Countersigning);\r\n this.validity$.next({ valid: false, messages: [], touched: undefined });\r\n }, error => {\r\n this.recalling = false;\r\n });\r\n }\r\n setFocus() {\r\n setTimeout(function () {\r\n if (this.focus.first && this.focus.first.nativeElement) {\r\n this.focus.first.nativeElement.focus();\r\n }\r\n }.bind(this), 50);\r\n }\r\n\r\n validate() {\r\n this.waiting = this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning;\r\n if (this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning) {\r\n this.validity$.next({\r\n valid: false, messages: [`You cannot proceed until your selected designated supervisor has completed your progress report.`], touched: this.touched\r\n });\r\n return;\r\n }\r\n const valid = this.application.activeForm.formStatus === ApplicationStatus.CounterSigned;\r\n const messages = [];\r\n if (!valid) {\r\n\r\n messages.push('You cannot proceed until you have selected a designated supervisor to complete your progress report');\r\n }\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n\r\n populateForm() {\r\n const { countersignatures } = this.application.activeForm;\r\n if (countersignatures.length) {\r\n const resultsPending = countersignatures\r\n .filter(cs => cs.decision === CountersignatureOutcome.Pending);\r\n const hasResult = countersignatures\r\n .filter(cs => cs.decision === CountersignatureOutcome.Approved ||\r\n cs.decision === CountersignatureOutcome.Rejected);\r\n\r\n if (resultsPending.length) {\r\n this.selectedPharmacist = resultsPending[0].registrationNumber;\r\n return;\r\n }\r\n\r\n if (hasResult.length) {\r\n this.selectedPharmacist = hasResult[0].registrationNumber;\r\n return;\r\n }\r\n\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n}\r\n","\r\n
    \r\n

    \r\n
    Training
    \r\n \r\n

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

    \r\n The pharmacist you choose to complete this report must be your designated supervisor, who is currently responsible for your\r\n training.\r\n

    \r\n

    \r\n If you have an approved joint designated supervisor arrangement, you can select either designated supervisor to send the report to.\r\n

    \r\n

    \r\n The designated supervisor you nominate to complete this report will receive a notification through their myGPhC account that\r\n your report\r\n has been sent to them to sign. You will receive a notification once your designated supervisor has completed your report.\r\n

    \r\n

    \r\n Your designated supervisor will be asked to confirm your details are correct and to complete a report on your progress.\r\n

    \r\n

    \r\n If your progress report is marked satisfactory, you will be able to complete the application to sit the next\r\n registration assessment, if you choose to.\r\n

    \r\n

    \r\n If your progress report is marked as unsatisfactory, you will be able to request another progress report\r\n when your designated supervisor\r\n thinks this is appropriate, by emailing prereg@pharmacyregulation.org to request a progress report\r\n reset.\r\n

    \r\n

    \r\n Your designated supervisor will receive a notification to let them know your report has been submitted to them, but it is\r\n your\r\n responsibility to make sure they complete the report.\r\n

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

    Select your designated supervisor to complete your progress report

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

    \r\n Please select the designated supervisor who is overseeing your training and is able to verify your identity from the list\r\n below.\r\n

    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n \r\n \r\n {{ tutor.registrationNumber }} - {{ tutor.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 {{ 'Server validation error: ' + error.errors.join(',') }}\r\n

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

    \r\n You will not be able to make an application to sit the registration assessment until your designated supervisor has\r\n completed your 39 week progress report and marked it as satisfactory. It is your responsibility to\r\n ensure that your designated supervisor logs into their myGPhC account and completes your 39 week progress report.\r\n

    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n\r\n \r\n \r\n
    \r\n Recalling application...\r\n Sending to selected pharmacist...\r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n
    \r\n

    \r\n Your progress report has now been completed.\r\n

    \r\n

    \r\n Please click on the blue arrow below to review the report\r\n

    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n \r\n\r\n\r\n \r\n
    \r\n Your progress report is now waiting to be completed\r\n
    \r\n \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 { Input, Component, OnInit } from '@angular/core';\r\nimport { FormValidator } from '../../../../dynamic/service/FormValidator';\r\nimport { FormValidationService } from '../../../../dynamic/service/formValidationService';\r\nimport { FormQuestion } from '../../../../dynamic/model/FormQuestion';\r\nimport { map } from 'rxjs/operators';\r\nimport { AssessmentReport } from '../../models/AssessmentReport';\r\nimport { AssessmentReportApplicationForm } from '../../models/AssessmentReportApplicationForm';\r\nimport { AssessmentReportService } from '../../../../core/service/assessmentReport.service';\r\n\r\n@Component({\r\n selector: 'app-assessment-report-declaration-summary',\r\n templateUrl: './assessmentReportDeclarationSummary.component.html',\r\n providers: [\r\n FormValidationService,\r\n { provide: FormValidator, useExisting: FormValidationService }\r\n ],\r\n styleUrls: ['./declarationSummary.scss']\r\n}) export class AssessmentReportDeclarationSummaryComponent implements OnInit {\r\n empty = false;\r\n form$ = this.validator.state$.pipe(map(forms => forms[0]));\r\n formIndex: number;\r\n @Input('formIndex') set setFormIndex(value) {\r\n this.formIndex = parseInt(value, 10);\r\n }\r\n @Input() application: AssessmentReport;\r\n @Input() formId;\r\n applicationForm: AssessmentReportApplicationForm;\r\n dynamicFormId;\r\n hasToDeclare: Array = [];\r\n constructor(\r\n private assessmentReportService: AssessmentReportService,\r\n private validator: FormValidationService\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n this.setForm();\r\n this.load();\r\n }\r\n\r\n setForm() {\r\n if (this.formId) {\r\n this.applicationForm = this.application.pastApplications\r\n .find(pastApp => pastApp.id === this.formId);\r\n } else {\r\n this.applicationForm = this.application.activeForm;\r\n }\r\n }\r\n\r\n load() {\r\n this.assessmentReportService.getDeclarationFormTemplates().subscribe(formTemplates => {\r\n const formTemplate = formTemplates[this.formIndex];\r\n const form = this.validator.addForm(formTemplate);\r\n this.dynamicFormId = form.dynamicFormId;\r\n const saved = this.applicationForm.declarations.find(dec => dec.dynamicFormId === form.dynamicFormId);\r\n if (!saved) {\r\n this.empty = true;\r\n return;\r\n }\r\n this.validator.loadAnswers(form, saved.answers);\r\n this.hasToDeclare = form.questionGroups.reduce((acc, group) => {\r\n acc = acc.concat(group.questions.filter(q => this.validator.hasToDeclare(q)));\r\n return acc;\r\n }, []);\r\n });\r\n }\r\n}\r\n\r\n\r\n","
    \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n
    \r\n I have nothing to declare\r\n
    \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n Declarations not completed\r\n
    \r\n
    ","import { Input, Component, forwardRef, OnInit } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormValidator } from '../../../../dynamic/service/FormValidator';\r\nimport { FormValidationService } from '../../../../dynamic/service/formValidationService';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { map, tap } from 'rxjs/operators';\r\nimport { AssessmentReportService } from '../../../../core/service/assessmentReport.service';\r\nimport { AssessmentReportStep } from '../../models/AssessmentReportStep';\r\n\r\n@Component({\r\n selector: 'app-assessment-report-ftp-declaration-step',\r\n templateUrl: './assessmentReportFtpDeclarationStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => AssessmentReportFtpDeclarationStepComponent)\r\n },\r\n FormValidationService,\r\n { provide: FormValidator, useExisting: FormValidationService }\r\n ]\r\n}) export class AssessmentReportFtpDeclarationStepComponent extends FormStepComponent implements OnInit {\r\n declarationHeading;\r\n form$ = this.validator.state$.pipe(map(forms => forms[0]));\r\n formIndex: number;\r\n @Input('formIndex') set setFormIndex(value) {\r\n this.formIndex = parseInt(value, 10);\r\n }\r\n title;\r\n stepId;\r\n dynamicFormId;\r\n valid;\r\n constructor(private assessmentReportService: AssessmentReportService, private validator: FormValidationService, service: FormStepperService) {\r\n super(service);\r\n this.form$.subscribe(form => {\r\n if (form) {\r\n this.dirty = form.dirty;\r\n this.valid = !form.invalid && form.completed;\r\n this.validate();\r\n }\r\n });\r\n }\r\n\r\n beforeNext() {\r\n return this.populateForm();\r\n }\r\n\r\n beforePrev() {\r\n return this.populateForm();\r\n }\r\n\r\n populateForm() {\r\n this.application.activeForm.declarations = this.application.activeForm.declarations\r\n .filter(d => d.dynamicFormId !== this.dynamicFormId);\r\n this.application.activeForm.declarations.push(this.validator.getPayload()[0]);\r\n return true;\r\n }\r\n\r\n ngOnInit() {\r\n this.title = 'Declaration (' + (this.formIndex + 1) + ')';\r\n if (this.formIndex === 0) {\r\n this.stepId = AssessmentReportStep.FtpDeclaration1;\r\n this.declarationHeading = 'Provisional registration: declaration of fitness to practise';\r\n }\r\n if (this.formIndex === 1) {\r\n this.stepId = AssessmentReportStep.FtpDeclaration2;\r\n this.declarationHeading = 'Provisional registration: declarations on joining the provisional register';\r\n }\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n if (!this.valid) {\r\n messages.push('You must answer all the questions to continue');\r\n }\r\n this.validity$.next({ valid: this.valid, messages, touched: this.touched });\r\n }\r\n\r\n load() {\r\n\r\n this.assessmentReportService.getDeclarationFormTemplates().subscribe(formTemplates => {\r\n const formTemplate = formTemplates[this.formIndex];\r\n const form = this.validator.addForm(formTemplate);\r\n this.dynamicFormId = form.dynamicFormId;\r\n const saved = this.application.activeForm.declarations.find(dec => dec.dynamicFormId === form.dynamicFormId);\r\n if (saved) {\r\n this.validator.loadAnswers(form, saved.answers);\r\n }\r\n\r\n // strip off any legacy declaration forms\r\n const currentDynamicFormIds = formTemplates.map(template => template.dynamicFormId);\r\n this.application.activeForm.declarations = this.application.activeForm.declarations\r\n .filter(f => currentDynamicFormIds.indexOf(f.dynamicFormId) > -1);\r\n\r\n this.validator.updateState();\r\n this.dirty = false;\r\n this.touched = false;\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n}\r\n\r\n\r\n","\r\n

    {{ declarationHeading }}

    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    ","import { Component, forwardRef } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { AssessmentReportStep } from '../../models/AssessmentReportStep';\r\n\r\n@Component({\r\n selector: 'app-assessment-report-overall-declaration-step',\r\n templateUrl: './assessmentReportOverallDeclarationStep.component.html',\r\n styleUrls: ['./overallDeclarationStep.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => AssessmentReportOverallDeclarationStepComponent)\r\n }\r\n ]\r\n}) export class AssessmentReportOverallDeclarationStepComponent extends FormStepComponent {\r\n\r\n title = 'Declaration (3)';\r\n stepId = AssessmentReportStep.OverallDeclaration;\r\n\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n update() {\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n const valid = this.application.activeForm.isOverallDeclarationConfirmed;\r\n if (!valid) {\r\n messages.push('You must tick the box to continue');\r\n }\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n populateForm() { }\r\n\r\n}\r\n","\r\n

    \r\n Declaration confirmation\r\n

    \r\n
    \r\n

    \r\n I confirm that I fully understand the declarations I have made.\r\n

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

    I have read and understood the declarations

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    ","import { Input, Component, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport { Applicant } from '../../../../account/model/Applicant';\r\nimport { AssessmentReportStep } from '../../models/AssessmentReportStep';\r\nimport { AssessmentReport } from '../../models/AssessmentReport';\r\nimport { AssessmentReportApplicationForm } from '../../models/AssessmentReportApplicationForm';\r\nimport { CountersignatureOutcome } from '../../../../prereg/model/CountersignatureOutcome';\r\nimport { User } from '../../../../account/model/User';\r\nimport { Address } from '../../../../account/model/Address';\r\nimport { TrainingPlacement } from '../../../../prereg/model/TrainingPlacement';\r\nimport { AssessmentTutorDetails } from '../../models/AssessmentTutors';\r\nimport { Training } from '../../../../prereg/model/Training';\r\nimport { CountersignerComment } from '../../models/AssessmentCountersigners';\r\nimport { ApplicationStatus } from '../../../../prereg/model/ApplicationStatus';\r\n\r\n\r\n@Component({\r\n selector: 'app-assessment-report-review',\r\n templateUrl: './assessmentReportReview.component.html',\r\n styleUrls: ['./assessmentReportReview.scss']\r\n}) export class AssessmentReportReviewComponent implements OnInit {\r\n\r\n @Input() application: AssessmentReport;\r\n @Input() readonly = true;\r\n AssessmentReportStep = AssessmentReportStep;\r\n CountersignatureOutcome = CountersignatureOutcome;\r\n trainee: Applicant;\r\n training: Training;\r\n tutorDetails: AssessmentTutorDetails[];\r\n comments: CountersignerComment;\r\n countersigner;\r\n traineePerformance;\r\n trainingSiteAdress: Array;\r\n user: User;\r\n weeksSinceTrainingStart: number;\r\n tempreg;\r\n traineeFullName;\r\n\r\n constructor() { }\r\n\r\n @Output() navigate = new EventEmitter();\r\n\r\n get traineeComments() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.Submitted;\r\n }\r\n get tempRegValid() {\r\n return this.application.activeForm.confirmTempRegistration === true;\r\n }\r\n\r\n ngOnInit() {\r\n this.trainee = this.application.trainee;\r\n this.tutorDetails = this.application.tutorDetails;\r\n this.formatAddress();\r\n this.mapComments(this.application.activeForm);\r\n this.countersigner = this.application.activeForm.countersignatures[0];\r\n this.tempreg = this.application.activeForm.confirmTempRegistration;\r\n if(this.trainee) {\r\n this.traineeFullName = [this.trainee.forenames, this.trainee.middleName, this.trainee.surname].filter(Boolean).join(\" \");\r\n }\r\n }\r\n\r\n mapComments(application: AssessmentReportApplicationForm): void {\r\n const { countersignatures } = application;\r\n const response = countersignatures.filter(cs =>\r\n cs.decision === CountersignatureOutcome.Approved ||\r\n cs.decision === CountersignatureOutcome.Rejected);\r\n this.comments = response[0].countersignerComment;\r\n }\r\n\r\n formatAddress(): void {\r\n this.trainingSiteAdress = this.application.training.trainedAt.map((training: TrainingPlacement) => {\r\n return new Address(training.address).toString('
    ');\r\n });\r\n }\r\n\r\n goToStep(stepId) {\r\n this.navigate.emit(stepId);\r\n }\r\n}\r\n","
    \r\n\r\n
    \r\n
    \r\n

    Trainee details

    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n {{site.trainingSite}}\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n\r\n
    \r\n

    \r\n Comments\r\n

    \r\n
    \r\n\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    0\">\r\n \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n
    \r\n

    Outcome of final report

    \r\n
    \r\n
    \r\n
    \r\n {{countersigner.decision === 999 ? \"unsatisfactory\" : \"satisfactory\"}}
    \r\n
    \r\n\r\n

    \r\n You are not eligible to apply for provisional registration, or to apply to sit the registration assessment when\r\n this is\r\n scheduled, until you receive a satisfactory final progress report.\r\n

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

    Your comments

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n No comments\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { Input, Component, forwardRef, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport { Applicant } from '../../../../account/model/Applicant';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { AssessmentReportStep } from '../../models/AssessmentReportStep';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { AssessmentReport } from '../../models/AssessmentReport';\r\n\r\n\r\n@Component({\r\n selector: 'app-assessment-report-review-step',\r\n templateUrl: './assessmentReportReviewStep.component.html',\r\n\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => AssessmentReportReviewStepComponent)\r\n }\r\n ]\r\n}) export class AssessmentReportReviewStepComponent extends FormStepComponent implements OnInit {\r\n title;\r\n @Input() stepId = AssessmentReportStep.FinalReview;\r\n // applicant: Applicant;\r\n AssessmentReportStep = AssessmentReportStep;\r\n @Input() readonly = false;\r\n @Input() application: AssessmentReport;\r\n\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n @Output() navigate = new EventEmitter();\r\n\r\n ngOnInit() {\r\n // this.applicant = this.application;\r\n this.title = this.readonly ? 'Final review' : 'Review';\r\n }\r\n\r\n validate() {\r\n this.validity$.next({ valid: true, messages: [], touched: this.touched});\r\n }\r\n\r\n goToStep(stepId) {\r\n this.navigate.emit(stepId);\r\n }\r\n\r\n populateForm() {}\r\n\r\n}\r\n","\r\n \r\n\r\n \r\n \r\n\r\n","import { Component, forwardRef, Input, OnInit } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { AssessmentReportStep } from '../../models/AssessmentReportStep';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { Router } from '@angular/router';\r\nimport { LayoutService } from '../../../../core/service/layout.service';\r\nimport { ApplicationStatus } from '../../../model/ApplicationStatus';\r\nimport { AssessmentReportService } from '../../../../core/service/assessmentReport.service';\r\nimport { AssessmentReport } from '../../models/AssessmentReport';\r\n\r\n\r\n@Component({\r\n selector: 'app-assessment-report-submit-step',\r\n templateUrl: './assessmentReportSubmitStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => AssessmentReportSubmitStepComponent)\r\n }\r\n ]\r\n}) export class AssessmentReportSubmitStepComponent extends FormStepComponent implements OnInit {\r\n showDetailsHelp = false;\r\n @Input() formId;\r\n @Input() application: AssessmentReport;\r\n title = 'Comments';\r\n stepId = AssessmentReportStep.Submit;\r\n serverErrors = [];\r\n submitting;\r\n traineeFeedbackOnTutorAssessment = '';\r\n countersigner;\r\n comments: any;\r\n maxChars = 2001;\r\n characterleft = this.maxChars;\r\n validationErrors: any;\r\n\r\n constructor(service: FormStepperService,\r\n private assessmentService: AssessmentReportService, private router: Router, private layout: LayoutService) {\r\n super(service);\r\n }\r\n\r\n ngOnInit() {\r\n this.countersigner = this.application.activeForm.countersignatures[0];\r\n }\r\n\r\n beforeNext() {\r\n const payload = {\r\n formId: this.application.activeForm.id,\r\n countersignatureId: this.countersigner.id,\r\n countersignerCommentId: this.countersigner.countersignerCommentId,\r\n traineeFeedbackOnTutorAssessment: this.traineeFeedbackOnTutorAssessment\r\n };\r\n this.submitting = true;\r\n this.serverErrors = [];\r\n this.assessmentService.submitProgressReportForm(payload).subscribe(() => {\r\n this.application.activeForm.formStatus = ApplicationStatus.Submitted;\r\n delete this.assessmentService.application;\r\n this.router.navigate(['/home']);\r\n this.submitting = false;\r\n }, error => {\r\n this.layout.setOverlay(false);\r\n this.serverErrors = error.validationErrors;\r\n this.submitting = false;\r\n });\r\n return false;\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n const hasComment = this.traineeFeedbackOnTutorAssessment.length < this.maxChars;\r\n const valid = hasComment;\r\n\r\n if (!valid) {\r\n\r\n this.validity$.next({ valid: false, messages, touched: true });\r\n }\r\n\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n populateForm() { }\r\n\r\n\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 Please include any comments you like to make about your progress report. These comments will not be shared\r\n with your designated supervisor but will be for your own records\r\n

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

    2000 \">\r\n You can only enter a maximum of 2000 characters in this field\r\n

    \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n
    \r\n","import { Component, forwardRef, OnInit, Output, EventEmitter, Input } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { Tooltip } from '../../../../core/tooltip/Tooltip';\r\nimport { AssessmentReportStep } from '../../models/AssessmentReportStep';\r\nimport { AssessmentReport } from '../../models/AssessmentReport';\r\nimport { ConfirmDialogComponent } from '../../../../shared/confirmDialog.component';\r\nimport { MatDialog } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-assessment-report-temporary-registration-step',\r\n templateUrl: './assessmentReportTemporaryRegistrationStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => AssessmentReportTemporaryRegistrationStepComponent)\r\n }\r\n ],\r\n styleUrls: ['./temporaryRegistration.scss']\r\n})\r\nexport class AssessmentReportTemporaryRegistrationStepComponent extends FormStepComponent implements OnInit {\r\n title = 'Provisional registration application';\r\n stepId = AssessmentReportStep.TemporaryRegistration;\r\n showDetailsHelp = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n @Input() application: AssessmentReport;\r\n @Output() hasTempReg = new EventEmitter();\r\n temreg;\r\n\r\n constructor(service: FormStepperService, private dialog: MatDialog) {\r\n super(service);\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n update() {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n disableClose: false,\r\n data: {\r\n title: `Important`,\r\n confirmText: 'Yes',\r\n cancelText: 'No',\r\n message: `

    \r\n Are you sure you want to proceed?\r\n

    \r\n `,\r\n confirmProgressReport: false\r\n }\r\n });\r\n dialogRef.afterClosed().subscribe(confirmed => {\r\n if (confirmed) {\r\n this.validate();\r\n }\r\n });\r\n return dialogRef;\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n const hasTempRegistration = this.application.activeForm.confirmTempRegistration;\r\n\r\n this.hasTempReg.emit(hasTempRegistration);\r\n\r\n const valid = hasTempRegistration !== undefined && hasTempRegistration !== null;\r\n\r\n if (valid) {\r\n this.temreg = 'checked';\r\n }\r\n\r\n if (!valid) {\r\n messages.push(`You must complete this step to continue`);\r\n }\r\n\r\n\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n populateForm() {\r\n }\r\n\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 Complete this application if you want to register provisionally as a pharmacist. We recommend that you read\r\n the\r\n application guidance before starting your application.\r\n

    \r\n

    \r\n You will only be able to click ‘yes’ or ‘no’, once – the form will not appear again. If you change your mind\r\n or click an answer in error, please email prereg@pharmacyregulation.org for assistance.\r\n

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

    \r\n I want to apply for provisional registration as a pharmacist.\r\n

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

    Yes

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

    No

    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n\r\n
    \r\n\r\n\r\n
    ","import { Component, forwardRef, OnInit } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { AssessmentReportStep } from '../../models/AssessmentReportStep';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { Tooltip } from '../../../../core/tooltip/Tooltip';\r\n\r\n@Component({\r\n selector: 'app-assessment-report-confirm-training-step',\r\n templateUrl: './assessmentReportConfirmTrainingStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => AssessmentReportConfirmTrainingStepComponent)\r\n }\r\n ]\r\n}) export class AssessmentReportConfirmTrainingStepComponent extends FormStepComponent implements OnInit {\r\n\r\n trainingConfirmed;\r\n title = 'Training';\r\n stepId = AssessmentReportStep.TrainingConfirmation;\r\n showDetailsHelp = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n\r\n\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n ngOnInit() {\r\n this.trainingConfirmed = this.application.activeForm.isTrainingConfirmed;\r\n }\r\n\r\n\r\n validate() {\r\n const messages = [];\r\n\r\n const valid = !!this.trainingConfirmed;\r\n\r\n if (!valid) {\r\n messages.push(`You must complete this step to continue`);\r\n }\r\n\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n populateForm() {\r\n\r\n this.application.activeForm.isTrainingConfirmed = this.trainingConfirmed;\r\n }\r\n\r\n}\r\n","\r\n\r\n
    \r\n

    \r\n
    \r\n Training\r\n
    \r\n \r\n

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

    \r\n The training details we hold for you are shown below. Please check these carefully and contact us if any of the\r\n information is incorrect.\r\n

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

    Training

    \r\n

    Please confirm your training details are correct.

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

    Correct

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

    Incorrect

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

    \r\n \r\n Please submit a change of training details form to correct your details\r\n \r\n before continuing.\r\n

    \r\n
    \r\n
    \r\n\r\n \r\n\r\n
    \r\n","import { AssessmentTutorDetails } from './../../models/AssessmentTutors';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { Address } from '../../../../account/model/Address';\r\nimport { TrainingPlacement } from '../../../model/TrainingPlacement';\r\n\r\n@Component({\r\n selector: 'app-assessment-report-trainee-placement',\r\n templateUrl: './assessmentReportTraineePlacement.component.html'\r\n})\r\nexport class AssessmentReportTraineePlacementComponent implements OnInit {\r\n @Input() trainingSites: TrainingPlacement[];\r\n @Input() tutors: AssessmentTutorDetails[];\r\n itemAddresses: string[];\r\n\r\n ngOnInit() {\r\n this.itemAddresses = this.trainingSites.map((training: TrainingPlacement) => {\r\n return new Address(training.address).toString('
    ');\r\n });\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n {{site.trainingSite}}\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {{ tutor.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","import { FormStepperComponent } from './../../shared/formStepper/formStepper.component';\r\nimport { Component, OnInit, ViewChild, AfterContentInit, AfterViewInit, ViewChildren, QueryList } from '@angular/core';\r\nimport { FormStepperService } from '../../shared/formStepper/formStepper.service';\r\nimport { CanComponentDeactivate } from '../../guard/CanDeactivate.guard';\r\nimport { User } from '../../account/model/User';\r\n\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { LogService } from '../../core/service/log.service';\r\n\r\nimport { LayoutService } from '../../core/service/layout.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ApplicationStatus } from '../model/ApplicationStatus';\r\nimport { Observable, from, of } from 'rxjs';\r\nimport { ConfirmDialogComponent } from '../../shared/confirmDialog.component';\r\nimport { mergeMap } from 'rxjs/operators';\r\nimport { FormStepSummary } from '../../shared/formStepper/FormStepSummary';\r\nimport { CountersignatureOutcome } from '../model/CountersignatureOutcome';\r\n\r\nimport { FormStepComponent } from '../../shared/formStepper/formStep.component';\r\nimport { FinalDeclaration } from './model/FinalDeclaration';\r\nimport { FinalDeclarationStep } from './model/FinalDeclarationStep';\r\nimport { FinalDeclarationService } from '../../core/service/finalDeclaration.service';\r\n\r\n@Component({\r\n selector: 'app-final-declaration-application',\r\n moduleId: module.id,\r\n templateUrl: './finalDeclaration.component.html',\r\n styleUrls: ['../application-form.scss'],\r\n providers: [FormStepperService]\r\n})\r\nexport class FinalDeclarationComponent implements OnInit,\r\n CanComponentDeactivate, AfterViewInit {\r\n\r\n user: User;\r\n loading = false;\r\n ready = false;\r\n saving = false;\r\n loadingError = false;\r\n application: FinalDeclaration;\r\n maxStep: FinalDeclarationStep;\r\n minStep: FinalDeclarationStep;\r\n showGuidanceWarning = false;\r\n FinalDeclarationStep = FinalDeclarationStep;\r\n isApplicationOpen = true;\r\n applicationClosedMessage: string;\r\n hasRegistration;\r\n start;\r\n minExecution;\r\n\r\n @ViewChildren(FormStepperComponent) formStepperComponents: QueryList;\r\n formStepper: FormStepperComponent;\r\n allSteps: FormStepComponent[];\r\n hasRegistered: boolean;\r\n allStepSummary: any;\r\n\r\n applyForProvisionalRegistration: boolean;\r\n initialSteps;\r\n\r\n constructor(private router: Router, private auth: AuthService,\r\n private log: LogService, private service: FinalDeclarationService,\r\n public layout: LayoutService,\r\n private dialog: MatDialog,\r\n public formStepperService: FormStepperService,\r\n private datePipe: DatePipe\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.load();\r\n }\r\n\r\n ngAfterViewInit() {\r\n // this.allSteps = this.formStepper.steps;\r\n this.formStepperComponents.changes.subscribe((comps: QueryList ) =>\r\n {\r\n this.formStepper = comps.first;\r\n this.updateStepId();\r\n });\r\n }\r\n\r\n reopenApplication() {\r\n this.cancelCountersignature(1);\r\n }\r\n\r\n print() {\r\n return (window).print();\r\n }\r\n\r\n get isSubmitted() {\r\n return (this.application && this.application.activeForm.formStatus) === ApplicationStatus.Submitted;\r\n }\r\n\r\n get ineligible() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.Ineligible;\r\n }\r\n\r\n get allowResubmit() {\r\n return !this.application.activeForm.requirePayment;\r\n }\r\n get isFinalDeclarationCountersigned() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.CounterSigned;\r\n }\r\n\r\n get hasBeenApproved() {\r\n return this.application.activeForm.countersignatures[0]?.decision === CountersignatureOutcome.Approved;\r\n }\r\n\r\n get hasCountersignRejected() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.CounterSigned &&\r\n this.application.activeForm.countersignatures[0]?.decision === CountersignatureOutcome.Rejected;\r\n }\r\n\r\n get isProvisionalApplication() {\r\n return (this.application && this.application.activeForm.step) === FinalDeclarationStep.FtpDeclaration1 ||\r\n (this.application && this.application.activeForm.step) === FinalDeclarationStep.FtpDeclaration2 ||\r\n (this.application && this.application.activeForm.step) === FinalDeclarationStep.OverallDeclaration;\r\n }\r\n\r\n get isFinalReport() {\r\n return (this.application && this.application.activeForm.step) === FinalDeclarationStep.Submit;\r\n }\r\n\r\n // resubmitApplication() {\r\n // this.layout.setFullscreenSpinner(true, 'Submitting...');\r\n // this.service.reSubmitApplication(this.application.activeForm.id).subscribe(() => {\r\n // this.router.navigate(['/home']);\r\n // // invalidate cache\r\n // delete this.service.application;\r\n // this.layout.setFullscreenSpinner(false);\r\n // }, error => {\r\n // this.layout.setFullscreenSpinner(false);\r\n // });\r\n // }\r\n\r\n\r\n load() {\r\n this.user = this.auth.user;\r\n this.loading = true;\r\n this.loadingError = false;\r\n this.service.getFinalDeclarationApplication(this.auth.user.registrationStatus).subscribe(application => {\r\n this.application = application;\r\n\r\n this.isApplicationOpen = this.application.isOpen;\r\n\r\n if (!this.isApplicationOpen) {\r\n this.applicationClosedMessage = `Your 52 week progress report will soon be available here for sign-off. Please come back once you have started the 48th week of your training.`;\r\n this.loading = false;\r\n return;\r\n }\r\n\r\n if (this.application.activeForm.step) {\r\n this.maxStep = this.application.activeForm.step;\r\n }\r\n if (this.application.activeForm.minStep) {\r\n this.minStep = this.application.activeForm.minStep;\r\n }\r\n\r\n this.loading = false;\r\n this.ready = true;\r\n // setTimeout(() => {\r\n // this.showGuidanceWarning = this.formStepper && this.formStepper.currentStep === FinalDeclarationStep.TrainingConfirmation;\r\n // });\r\n }, error => {\r\n this.loading = false;\r\n this.loadingError = true;\r\n });\r\n\r\n }\r\n\r\n\r\n warnForDirty(): Observable {\r\n\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n title: `Unsaved changes`,\r\n message: `

    Do you want to save your changes before exiting your application form?

    `\r\n }\r\n });\r\n return dialogRef.afterClosed()\r\n .pipe(mergeMap(shouldSave => {\r\n if (shouldSave) {\r\n this.layout.setFullscreenSpinner(true);\r\n return from(this.save().then(() => {\r\n return true;\r\n }, error => {\r\n // show error messages\r\n this.layout.setFullscreenSpinner(false);\r\n return false;\r\n }));\r\n } else {\r\n return of(true);\r\n }\r\n }));\r\n }\r\n\r\n canDeactivate() {\r\n if (!this.formStepper || !this.formStepper.currentStep || !this.formStepper.currentStep.dirty) { return true; }\r\n return this.warnForDirty();\r\n }\r\n\r\n public respond(): any {\r\n const respondObservable = new Observable(observer => {\r\n const end = performance.now();\r\n const duration = end - this.start;\r\n if (duration < this.minExecution) {\r\n setTimeout(() => {\r\n observer.next();\r\n }, Math.round(this.minExecution - duration));\r\n } else {\r\n observer.next();\r\n }\r\n });\r\n return respondObservable;\r\n }\r\n getReport(shouldSaveReport) {\r\n let promiseResolve, promiseReject;\r\n return new Promise((resolve, reject) => {\r\n promiseResolve = resolve;\r\n promiseReject = reject;\r\n this.service.getFinalDeclarationApplication(this.auth.user.registrationStatus).subscribe(() => {\r\n this.respond().subscribe(() => {\r\n if(shouldSaveReport) {\r\n this.saveReport(promiseResolve, promiseReject);\r\n } else {\r\n this.saving = false;\r\n promiseResolve();\r\n }\r\n });\r\n }, error => {\r\n this.respond().subscribe(() => {\r\n this.saving = false;\r\n reject(error);\r\n });\r\n });\r\n });\r\n }\r\n\r\n saveReport(resolve, reject) {\r\n this.service.saveFinalDeclarationApplication(this.application).subscribe(() => {\r\n this.respond().subscribe(() => {\r\n this.saving = false;\r\n resolve();\r\n });\r\n }, error => {\r\n this.respond().subscribe(() => {\r\n this.saving = false;\r\n reject(error);\r\n });\r\n });\r\n }\r\n save() {\r\n this.saving = true;\r\n this.application.activeForm.step = this.formStepperService.getFurthestStep();\r\n this.formStepper.currentStep.populateForm();\r\n this.start = performance.now();\r\n this.minExecution = 300;\r\n const training = this.application.activeForm.step = FinalDeclarationStep.TrainingConfirmation;\r\n const trainingConfirmed = this.application.activeForm.isTrainingConfirmed;\r\n // const tempRegistration = this.application.activeForm.confirmTempRegistration;\r\n const countersigned = this.application.activeForm.formStatus === ApplicationStatus.CounterSigned;\r\n const countersignin = this.application.activeForm.step = FinalDeclarationStep.Countersigning;\r\n const ReadyForCountersigning = this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning;\r\n const finalReview = this.application.activeForm.step = FinalDeclarationStep.FinalReview;\r\n const submit = this.application.activeForm.step = FinalDeclarationStep.Submit;\r\n const shouldSaveReport = (training || submit);\r\n return this.getReport(shouldSaveReport);\r\n }\r\n\r\n goToStepId(stepId) {\r\n if (this.application.activeForm.formStatus === ApplicationStatus.CounterSigned) {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n title: `Form is countersigned`,\r\n message: `

    If you need to edit these details you will have to get the form countersigned again.

    \r\n

    Are you sure ?

    \r\n `\r\n }\r\n });\r\n dialogRef.afterClosed().subscribe(cancelCountersignature => {\r\n if (cancelCountersignature) {\r\n this.cancelCountersignature(stepId);\r\n }\r\n });\r\n } else {\r\n this.formStepper.goToStep(stepId);\r\n }\r\n }\r\n\r\n\r\n goToStep(step: FormStepSummary) {\r\n if (step.disabled) { return; }\r\n this.formStepper.goToStep(step.stepId);\r\n }\r\n\r\n cancelCountersignature(stepId) {\r\n this.layout.setFullscreenSpinner(true, 'Reverting...');\r\n this.service.cancelCountersignature(this.application.activeForm.id).subscribe(() => {\r\n this.application.activeForm.formStatus = ApplicationStatus.InProgress;\r\n setTimeout(() => {\r\n if (this.formStepperService.summary) {\r\n this.formStepperService.summary.find(step => step.stepId === FinalDeclarationStep.Countersigning).validity.valid = false;\r\n this.formStepperService.setStepRange(1, FinalDeclarationStep.Countersigning);\r\n }\r\n this.formStepper.goToStep(stepId);\r\n this.layout.setFullscreenSpinner(false);\r\n });\r\n\r\n }, error => {\r\n this.layout.setFullscreenSpinner(false);\r\n });\r\n }\r\n\r\n stepChanged(stepId) {\r\n setTimeout(() => {\r\n this.service.setStep(this.application.activeForm.id, stepId).subscribe();\r\n this.application.activeForm.step = stepId;\r\n }, 1000);\r\n }\r\n\r\n stepChange(): () => Promise {\r\n return function () {\r\n return new Promise((resolve, reject) => {\r\n if (this.formStepper.currentStep.dirty || this.formStepper.currentStep.stepId) {\r\n\r\n this.formStepper.serverErrors = [];\r\n if (this.hasCountersignRejected) {\r\n resolve();\r\n } else {\r\n return this.save().then(() => {\r\n resolve();\r\n\r\n }, error => {\r\n this.formStepper.serverErrors = error.validationErrors;\r\n reject(error);\r\n });\r\n }\r\n } else {\r\n resolve();\r\n }\r\n });\r\n}.bind(this);\r\n }\r\n\r\n updateStepId(): void {\r\n if(this.formStepper) {\r\n if(this.formStepperService.updateStepsId(this.initialSteps, this.formStepper.steps)) {\r\n this.initialSteps = this.formStepper.steps;\r\n }\r\n }\r\n }\r\n\r\nchangedTempRegistration(hasRegistered: boolean): void {\r\n if(this.formStepper.steps.length === 8) {\r\n this.cloneSteps();\r\n this.cloneSummary();\r\n}\r\n\r\nconst stepsWithoutDecl = this.formStepper.steps.filter(step => !step.title.includes('Declaration'));\r\nconst menuWihoutDecl = this.formStepperService.summary.filter(step => !step.title.includes('Declaration'));\r\n\r\nif (hasRegistered) {\r\n if (this.formStepper.steps.length === 5) {\r\n this.formStepper.steps = this.allSteps;\r\n this.formStepperService.summary = this.allStepSummary;\r\n this.applyForProvisionalRegistration = true;\r\n }\r\n} else {\r\n this.applyForProvisionalRegistration = false;\r\n this.formStepper.steps = stepsWithoutDecl;\r\n this.formStepperService.summary = menuWihoutDecl;\r\n this.application.activeForm.clearDeclarationSteps();\r\n}\r\nthis.updateStepId();\r\nthis.formStepperService.update();\r\n }\r\n\r\ncloneSteps(): void {\r\n this.allSteps = this.formStepper.steps.slice();\r\n}\r\n\r\ncloneSummary(): void {\r\n this.allStepSummary = this.formStepperService.summary.slice();\r\n}\r\n\r\n\r\n}\r\n","
    \r\n\r\n
    \r\n\r\n \r\n
    \r\n\r\n
    \r\n

    Final declaration

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

    Before you begin your application for registration,\r\n read the guidance on providing correctly certified supporting documents [hyperlink to policy website]

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

    \r\n An error occurred while attempting to load your application\r\n

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

    This application has been marked as ineligible.

    \r\n
    \r\n

    You can either re-submit this application as it is, or re-open this one for editing if you need to make\r\n changes.

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

    You can re-open this application if you would like to submit again.

    \r\n \r\n
    \r\n\r\n
    \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n
    \r\n\r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n \r\n\r\n \r\n \r\n\r\n
    \r\n\r\n
    \r\n \r\n\r\n \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n\r\n
    \r\n \r\n Final declaration\r\n \r\n
    \r\n \r\n
    \r\n

    \r\n {{ applicationClosedMessage }}\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    ","import { Applicant } from '../../../account/model/Applicant';\r\nimport { ApplicationStatus } from '../../model/ApplicationStatus';\r\nimport { Training } from '../../model/Training';\r\nimport { RegistrantStatus } from '../../../registration/model/RegistrantStatus';\r\nimport { Registrant } from '../../../registration/model/Registrant';\r\nimport { Application } from '../../model/Application';\r\nimport { FileUpload } from '../../../shared/model/FileUpload';\r\nimport { CountersignatureResult } from '../../model/CountersignatureResult';\r\nimport { AssessmentTutorDetails } from '../../assessment-report/models/AssessmentTutors';\r\nimport { FinalDeclarationApplicationForm } from './FinalDeclarationApplicationForm';\r\n\r\n\r\nexport class FinalDeclaration implements Application {\r\n\r\n trainee: Applicant;\r\n registrant?: Registrant;\r\n training: Training;\r\n tutorDetails: Array;\r\n isFirstYearPaymentAvailable: boolean;\r\n attachments: Array = [];\r\n\r\n form: FinalDeclarationApplicationForm;\r\n\r\n forms: Array = [];\r\n status: ApplicationStatus;\r\n activeForm: FinalDeclarationApplicationForm;\r\n pastApplications: Array;\r\n countersignatures: Array;\r\n\r\n registrationFees: {\r\n applicationFee: number;\r\n registrationFee: number;\r\n };\r\n isOpen: boolean;\r\n thirtyNineWeekReportResult: string;\r\n\r\n constructor(data, registrantStatus: RegistrantStatus) {\r\n Object.assign(this, data);\r\n this.status = this.forms.length ? this.forms[0].formStatus : ApplicationStatus.NotStarted;\r\n this.activeForm = new FinalDeclarationApplicationForm(this.forms[0], registrantStatus);\r\n this.pastApplications = this.forms.filter((form, i) => {\r\n return i > 0;\r\n });\r\n\r\n\r\n }\r\n\r\n\r\n\r\n}\r\n","import { ApplicationStatus } from '../../model/ApplicationStatus';\r\nimport { FormAnswer } from '../../../dynamic/model/FormAnswer';\r\nimport { FileUpload } from '../../../shared/model/FileUpload';\r\nimport { ApplicationFormMode } from '../../model/ApplicationFormMode';\r\nimport { CountersignatureResult } from '../../model/CountersignatureResult';\r\nimport { RegistrantStatus } from '../../../registration/model/RegistrantStatus';\r\nimport { ApplicationForm } from '../../model/ApplicationForm';\r\nimport { FormScope } from '../../../registration/model/FormScope';\r\nimport { FinalDeclarationStep } from './FinalDeclarationStep';\r\nimport { AssessmentTutorDetails } from '../../assessment-report/models/AssessmentTutors';\r\n\r\nexport class FinalDeclarationApplicationForm implements ApplicationForm {\r\n declarations: { dynamicFormId: string; answers: FormAnswer[]; }[];\r\n\r\n id: string;\r\n formStatus: ApplicationStatus;\r\n attachments: Array = [];\r\n isOverallDeclarationConfirmed: boolean;\r\n isTrainingConfirmed: boolean;\r\n isAssessmentConfirmed: boolean;\r\n isJointTutoringArrangmentExists: boolean;\r\n tutorDetails: Array;\r\n confirmTempRegistration: boolean;\r\n\r\n step: FinalDeclarationStep;\r\n minStep: FinalDeclarationStep;\r\n mode: ApplicationFormMode;\r\n\r\n registrantStatus: RegistrantStatus;\r\n requirePayment: boolean;\r\n scope: FormScope;\r\n countersignatures: Array;\r\n\r\n traineeFullName: string;\r\n prgEntryNumber: number;\r\n trainingSiteName: string;\r\n trainingSiteAddress: string;\r\n tutorFullName: string;\r\n tutorGPhCId: string;\r\n trainingNoOfWeeks: number;\r\n\r\n get readonly() {\r\n return !(this.formStatus === ApplicationStatus.NotStarted ||\r\n this.formStatus === ApplicationStatus.InProgress ||\r\n this.formStatus === ApplicationStatus.CounterSigned ||\r\n this.formStatus === ApplicationStatus.ReadyForCountersigning ||\r\n this.registrantStatus === RegistrantStatus.IneligibleToRegister);\r\n }\r\n\r\n constructor(data, registrantStatus) {\r\n Object.assign(this, data);\r\n this.registrantStatus = registrantStatus;\r\n\r\n\r\n\r\n if (this.formStatus === ApplicationStatus.ReadyForCountersigning ||\r\n this.formStatus === ApplicationStatus.CounterSigned) {\r\n this.step = FinalDeclarationStep.Countersigning;\r\n this.minStep = FinalDeclarationStep.Countersigning;\r\n }\r\n if (this.formStatus === ApplicationStatus.InProgress && this.step > FinalDeclarationStep.Countersigning) {\r\n this.step = FinalDeclarationStep.Countersigning;\r\n }\r\n\r\n }\r\n\r\n clearDeclarationSteps() {\r\n this.declarations = [];\r\n }\r\n\r\n}\r\n","export enum FinalDeclarationStep {\r\n TrainingConfirmation = 1,\r\n Countersigning,\r\n FinalReview,\r\n TemporaryRegistration,\r\n FtpDeclaration1,\r\n FtpDeclaration2,\r\n OverallDeclaration,\r\n Submit\r\n}","import {\r\n Component, forwardRef, ViewChildren,\r\n ViewChild, QueryList, ElementRef, Input, OnInit\r\n} from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ConfirmDialogComponent } from '../../../../shared/confirmDialog.component';\r\nimport { ApplicationStatus } from '../../../model/ApplicationStatus';\r\nimport { CountersignatureResult } from '../../../model/CountersignatureResult';\r\nimport { CountersignatureOutcome } from '../../../model/CountersignatureOutcome';\r\nimport { LogService } from '../../../../core/service/log.service';\r\nimport { Tooltip } from '../../../../core/tooltip/Tooltip';\r\nimport { FinalDeclaration } from '../../model/FinalDeclaration';\r\nimport { FinalDeclarationStep } from '../../model/FinalDeclarationStep';\r\nimport { FinalDeclarationService } from '../../../../core/service/finalDeclaration.service';\r\n\r\n@Component({\r\n selector: 'app-final-declaration-countersigning-step',\r\n templateUrl: './finalDeclarationCountersigningStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => FinalDeclarationCountersigningStepComponent)\r\n }\r\n ],\r\n styleUrls: ['./finalDeclarationCountersigninStep.scss']\r\n})\r\nexport class FinalDeclarationCountersigningStepComponent extends FormStepComponent implements OnInit {\r\n\r\n @Input() application: FinalDeclaration;\r\n @Input() options;\r\n @ViewChildren('focus') focus: QueryList;\r\n @ViewChild('resultsList') resultsListRef: ElementRef;\r\n stepId = FinalDeclarationStep.Countersigning;\r\n title = 'Countersignature';\r\n selectedPharmacist = '';\r\n findersending = false;\r\n recalling = false;\r\n serverErrors;\r\n CountersignatureOutcome = CountersignatureOutcome;\r\n showTooltip = false;\r\n subHeaderTooltip = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n sending = false;\r\n\r\n load() {\r\n if (this.application.activeForm.formStatus === ApplicationStatus.CounterSigned ||\r\n this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning) {\r\n this.prevDisabled = true;\r\n }\r\n this.serverErrors = undefined;\r\n this.ready$.next(true);\r\n }\r\n\r\n get awaitingCountersigning() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning;\r\n }\r\n\r\n get countersigned() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.CounterSigned;\r\n }\r\n\r\n set _prevDisabled(disabled) { }\r\n get _prevDisabled() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.CounterSigned ||\r\n this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning;\r\n }\r\n\r\n constructor(service: FormStepperService,\r\n private finalDeclarationService: FinalDeclarationService,\r\n private dialog: MatDialog, private log: LogService) {\r\n super(service);\r\n }\r\n\r\n ngOnInit() {\r\n this.populateForm();\r\n }\r\n\r\n sendForCountersigning() {\r\n\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n\r\n data: {\r\n confirmText: 'Yes',\r\n cancelText: 'No',\r\n title: `Send your progress report`,\r\n message: `

    Are you sure you are ready to send your progress report to be completed by your selected designated supervisor?

    `,\r\n confirmProgressReport: false\r\n }\r\n });\r\n\r\n dialogRef.afterClosed().subscribe(confirmed => {\r\n if (confirmed) {\r\n\r\n this.serverErrors = undefined;\r\n this.sending = true;\r\n this.finalDeclarationService.sendToCountersigner(this.selectedPharmacist).subscribe(() => {\r\n this.log.info('Send to countersigner response - success');\r\n this.sending = false;\r\n this.log.info('Updating form status to ReadyForCountersigning');\r\n this.application.activeForm.formStatus = ApplicationStatus.ReadyForCountersigning;\r\n this.log.info('Updating form step validity');\r\n this.waiting = true;\r\n this.validity$.next({ valid: false, messages: [], touched: this.touched });\r\n setTimeout(() => {\r\n this.log.info('Locking form');\r\n this.service.disableAllStepsExcept(FinalDeclarationStep.Countersigning);\r\n }, 50);\r\n }, error => {\r\n this.log.error('Send to countersigner response - fail', error);\r\n this.serverErrors = error.validationErrors;\r\n this.sending = false;\r\n });\r\n }\r\n\r\n });\r\n return false;\r\n\r\n }\r\n\r\n recall() {\r\n this.recalling = true;\r\n this.selectedPharmacist = null;\r\n this.finalDeclarationService.recallFromCountersigner().subscribe(() => {\r\n this.recalling = false;\r\n this.waiting = false;\r\n this.application.activeForm.formStatus = ApplicationStatus.InProgress;\r\n this.service.setStepRange(1, FinalDeclarationStep.Countersigning);\r\n this.validity$.next({ valid: false, messages: [], touched: undefined });\r\n }, error => {\r\n this.recalling = false;\r\n });\r\n }\r\n setFocus() {\r\n setTimeout(function () {\r\n if (this.focus.first && this.focus.first.nativeElement) {\r\n this.focus.first.nativeElement.focus();\r\n }\r\n }.bind(this), 50);\r\n }\r\n\r\n validate() {\r\n this.waiting = this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning;\r\n if (this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning) {\r\n this.validity$.next({\r\n valid: false, messages: [`You cannot proceed until your selected designated supervisor has completed your progress report.`], touched: this.touched\r\n });\r\n return;\r\n }\r\n const valid = this.application.activeForm.formStatus === ApplicationStatus.CounterSigned;\r\n const messages = [];\r\n if (!valid) {\r\n\r\n messages.push('You cannot proceed until you have selected a designated supervisor to complete your progress report');\r\n }\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n\r\n populateForm() {\r\n const { countersignatures } = this.application.activeForm;\r\n if (countersignatures.length) {\r\n const resultsPending = countersignatures\r\n .filter(cs => cs.decision === CountersignatureOutcome.Pending);\r\n const hasResult = countersignatures\r\n .filter(cs => cs.decision === CountersignatureOutcome.Approved ||\r\n cs.decision === CountersignatureOutcome.Rejected);\r\n\r\n if (resultsPending.length) {\r\n this.selectedPharmacist = resultsPending[0].registrationNumber;\r\n return;\r\n }\r\n\r\n if (hasResult.length) {\r\n this.selectedPharmacist = hasResult[0].registrationNumber;\r\n return;\r\n }\r\n\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n}\r\n","\r\n
    \r\n

    \r\n
    Completing your final progress report
    \r\n \r\n

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

    \r\n The pharmacist you chose to complete this report must be your designated supervisor, who is currently responsible for your\r\n training.\r\n

    \r\n

    \r\n The designated supervisor you nominate to complete this report will receive a notification through their myGPhC account that\r\n your report\r\n has been sent to them to sign. You will receive a notification once your designated supervisor has completed your report.\r\n

    \r\n

    \r\n Your designated supervisor will be asked to make a final assessment on your competence and whether you or not you are fit to\r\n join the\r\n register.\r\n

    \r\n

    \r\n You can only send your final declaration to one designated supervisor to complete. If you have more than one designated supervisor, the one\r\n who\r\n completes this final declaration takes the ultimate responsibility for the decision.\r\n

    \r\n

    \r\n If your final declaration is marked as satisfactory, you will be able to complete the application to\r\n register as a\r\n pharmacist if you choose to.\r\n

    \r\n

    \r\n If your progress report is marked as unsatisfactory, you will be able to request another final declaration\r\n when your\r\n designated supervisor thinks this is appropriate.\r\n

    \r\n

    \r\n Your designated supervisor will receive a notification to let them know your report has been submitted to them, but it is\r\n your\r\n responsibility to make sure they complete the report.\r\n

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

    \r\n \r\n
    Completing your progress report
    \r\n\r\n

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

    \r\n Please select the designated supervisor from the list below who is overseeing your training and is completing your final\r\n progress report.\r\n

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

    \r\n You are assessed against the foundation performance standards so you can show that you can carry\r\n out specified\r\n tasks in a particular way. For further information please refer to the foundation training manual.\r\n

    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n \r\n \r\n {{ tutor.registrationNumber }} - {{ tutor.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 {{ 'Server validation error: ' + error.errors.join(',') }}\r\n

    \r\n
    \r\n\r\n\r\n
    \r\n\r\n
    \r\n\r\n \r\n\r\n \r\n
    \r\n\r\n \r\n \r\n
    \r\n Recalling application...\r\n Sending to selected pharmacist...\r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n
    \r\n

    \r\n Your progress report has now been completed.\r\n

    \r\n

    \r\n Please click on the blue arrow below to review the report\r\n

    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n \r\n\r\n\r\n \r\n
    \r\n Your progress report is now waiting to be completed\r\n
    \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 { Input, Component, forwardRef, OnInit } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormValidator } from '../../../../dynamic/service/FormValidator';\r\nimport { FormValidationService } from '../../../../dynamic/service/formValidationService';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { map, tap } from 'rxjs/operators';\r\nimport { FinalDeclarationService } from '../../../../core/service/finalDeclaration.service';\r\nimport { FinalDeclarationStep } from '../../model/FinalDeclarationStep';\r\n\r\n@Component({\r\n selector: 'app-final-declaration-ftp-step',\r\n templateUrl: './finalDeclarationFtpStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => FinalDeclarationFtpStepComponent)\r\n },\r\n FormValidationService,\r\n { provide: FormValidator, useExisting: FormValidationService }\r\n ]\r\n}) export class FinalDeclarationFtpStepComponent extends FormStepComponent implements OnInit {\r\n declarationHeading;\r\n form$ = this.validator.state$.pipe(map(forms => forms[0]));\r\n formIndex: number;\r\n @Input('formIndex') set setFormIndex(value) {\r\n this.formIndex = parseInt(value, 10);\r\n }\r\n title;\r\n stepId;\r\n dynamicFormId;\r\n valid;\r\n constructor(private finalDeclarationService: FinalDeclarationService, private validator: FormValidationService, service: FormStepperService) {\r\n super(service);\r\n this.form$.subscribe(form => {\r\n if (form) {\r\n this.dirty = form.dirty;\r\n this.valid = !form.invalid && form.completed;\r\n this.validate();\r\n }\r\n });\r\n }\r\n\r\n beforeNext() {\r\n return this.populateForm();\r\n }\r\n\r\n beforePrev() {\r\n return this.populateForm();\r\n }\r\n\r\n populateForm() {\r\n this.application.activeForm.declarations = this.application.activeForm.declarations\r\n .filter(d => d.dynamicFormId !== this.dynamicFormId);\r\n this.application.activeForm.declarations.push(this.validator.getPayload()[0]);\r\n return true;\r\n }\r\n\r\n ngOnInit() {\r\n this.title = 'Declaration (' + (this.formIndex + 1) + ')';\r\n if (this.formIndex === 0) {\r\n this.stepId = FinalDeclarationStep.FtpDeclaration1;\r\n this.declarationHeading = 'Provisional registration: declaration of fitness to practise';\r\n }\r\n if (this.formIndex === 1) {\r\n this.stepId = FinalDeclarationStep.FtpDeclaration2;\r\n this.declarationHeading = 'Provisional registration: declarations on joining the provisional register';\r\n }\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n if (!this.valid) {\r\n messages.push('You must answer all the questions to continue');\r\n }\r\n this.validity$.next({ valid: this.valid, messages, touched: this.touched });\r\n }\r\n\r\n load() {\r\n\r\n this.finalDeclarationService.getDeclarationFormTemplates().subscribe(formTemplates => {\r\n const formTemplate = formTemplates[this.formIndex];\r\n const form = this.validator.addForm(formTemplate);\r\n this.dynamicFormId = form.dynamicFormId;\r\n const saved = this.application.activeForm.declarations.find(dec => dec.dynamicFormId === form.dynamicFormId);\r\n if (saved) {\r\n this.validator.loadAnswers(form, saved.answers);\r\n }\r\n\r\n // strip off any legacy declaration forms\r\n const currentDynamicFormIds = formTemplates.map(template => template.dynamicFormId);\r\n this.application.activeForm.declarations = this.application.activeForm.declarations\r\n .filter(f => currentDynamicFormIds.indexOf(f.dynamicFormId) > -1);\r\n\r\n this.validator.updateState();\r\n this.dirty = false;\r\n this.touched = false;\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n}\r\n\r\n\r\n","\r\n

    {{ declarationHeading }}

    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    ","import { Component, forwardRef } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { FinalDeclarationStep } from '../../model/FinalDeclarationStep';\r\n\r\n@Component({\r\n selector: 'app-final-declaration-overall-confirmation-step',\r\n templateUrl: './finalDeclarationOverallConfirmationStep.component.html',\r\n styleUrls: ['./overallConfirmationStep.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => FinalDeclarationOverallConfirmationStepComponent)\r\n }\r\n ]\r\n}) export class FinalDeclarationOverallConfirmationStepComponent extends FormStepComponent {\r\n\r\n title = 'Declaration (3)';\r\n stepId = FinalDeclarationStep.OverallDeclaration;\r\n\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n update() {\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n const valid = this.application.activeForm.isOverallDeclarationConfirmed;\r\n if (!valid) {\r\n messages.push('You must tick the box to continue');\r\n }\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n populateForm() { }\r\n\r\n}\r\n","\r\n

    \r\n Declaration confirmation\r\n

    \r\n
    \r\n

    \r\n I confirm that I fully understand the declarations I have made.\r\n

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

    I have read and understood the declarations

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    ","import { Input, Component, OnInit } from '@angular/core';\r\nimport { FormValidator } from '../../../../dynamic/service/FormValidator';\r\nimport { FormValidationService } from '../../../../dynamic/service/formValidationService';\r\nimport { FormQuestion } from '../../../../dynamic/model/FormQuestion';\r\nimport { map } from 'rxjs/operators';\r\nimport { FinalDeclaration } from '../../model/FinalDeclaration';\r\nimport { FinalDeclarationApplicationForm } from '../../model/FinalDeclarationApplicationForm';\r\nimport { FinalDeclarationService } from '../../../../core/service/finalDeclaration.service';\r\n\r\n@Component({\r\n selector: 'app-final-declaration-summary',\r\n templateUrl: './finalDeclarationSummaryStep.component.html',\r\n providers: [\r\n FormValidationService,\r\n { provide: FormValidator, useExisting: FormValidationService }\r\n ],\r\n styleUrls: ['./finalDeclarationSummary.scss']\r\n}) export class FinalDeclarationSummaryComponent implements OnInit {\r\n empty = false;\r\n form$ = this.validator.state$.pipe(map(forms => forms[0]));\r\n formIndex: number;\r\n @Input('formIndex') set setFormIndex(value) {\r\n this.formIndex = parseInt(value, 10);\r\n }\r\n @Input() application: FinalDeclaration;\r\n @Input() formId;\r\n applicationForm: FinalDeclarationApplicationForm;\r\n dynamicFormId;\r\n hasToDeclare: Array = [];\r\n constructor(\r\n private finalDeclarationService: FinalDeclarationService,\r\n private validator: FormValidationService\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n this.setForm();\r\n this.load();\r\n }\r\n\r\n setForm() {\r\n if (this.formId) {\r\n this.applicationForm = this.application.pastApplications\r\n .find(pastApp => pastApp.id === this.formId);\r\n } else {\r\n this.applicationForm = this.application.activeForm;\r\n }\r\n }\r\n\r\n load() {\r\n this.finalDeclarationService.getDeclarationFormTemplates().subscribe(formTemplates => {\r\n const formTemplate = formTemplates[this.formIndex];\r\n const form = this.validator.addForm(formTemplate);\r\n this.dynamicFormId = form.dynamicFormId;\r\n const saved = this.applicationForm.declarations.find(dec => dec.dynamicFormId === form.dynamicFormId);\r\n if (!saved) {\r\n this.empty = true;\r\n return;\r\n }\r\n this.validator.loadAnswers(form, saved.answers);\r\n this.hasToDeclare = form.questionGroups.reduce((acc, group) => {\r\n acc = acc.concat(group.questions.filter(q => this.validator.hasToDeclare(q)));\r\n return acc;\r\n }, []);\r\n });\r\n }\r\n}\r\n\r\n\r\n","
    \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n
    \r\n I have nothing to declare\r\n
    \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n Declarations not completed\r\n
    \r\n
    ","import { Input, Component, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport { Applicant } from '../../../../account/model/Applicant';\r\nimport { CountersignatureOutcome } from '../../../../prereg/model/CountersignatureOutcome';\r\nimport { User } from '../../../../account/model/User';\r\nimport { Address } from '../../../../account/model/Address';\r\nimport { TrainingPlacement } from '../../../../prereg/model/TrainingPlacement';\r\nimport { Training } from '../../../../prereg/model/Training';\r\nimport { ApplicationStatus } from '../../../../prereg/model/ApplicationStatus';\r\nimport { FinalDeclaration } from '../../model/FinalDeclaration';\r\nimport { FinalDeclarationStep } from '../../model/FinalDeclarationStep';\r\nimport { AssessmentTutorDetails } from '../../../../prereg/assessment-report/models/AssessmentTutors';\r\nimport { FinalDeclarationApplicationForm } from '../../model/FinalDeclarationApplicationForm';\r\nimport { CountersignerComment } from '../../model/FinalDeclarationCountersigner';\r\n\r\n\r\n@Component({\r\n selector: 'app-final-declaration-review',\r\n templateUrl: './finalDeclarationReview.component.html',\r\n styleUrls: ['./finalDeclarationReview.scss']\r\n}) export class FinalDeclarationReviewComponent implements OnInit {\r\n\r\n @Input() application: FinalDeclaration;\r\n @Input() readonly = true;\r\n FinalDeclarationStep = FinalDeclarationStep;\r\n CountersignatureOutcome = CountersignatureOutcome;\r\n trainee: Applicant;\r\n training: Training;\r\n tutorDetails: AssessmentTutorDetails[];\r\n comments: CountersignerComment;\r\n countersigner;\r\n traineePerformance;\r\n trainingSiteAdress: Array;\r\n user: User;\r\n weeksSinceTrainingStart: number;\r\n tempreg;\r\n traineeFullName;\r\n\r\n constructor() { }\r\n\r\n @Output() navigate = new EventEmitter();\r\n\r\n get traineeComments() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.Submitted;\r\n }\r\n // get tempRegValid() {\r\n // return this.application.activeForm.confirmTempRegistration === true;\r\n // }\r\n\r\n ngOnInit() {\r\n this.trainee = this.application.trainee;\r\n this.tutorDetails = this.application.tutorDetails;\r\n this.formatAddress();\r\n this.mapComments(this.application.activeForm);\r\n this.countersigner = this.application.activeForm.countersignatures[0];\r\n // this.tempreg = this.application.activeForm.confirmTempRegistration\r\n if(this.trainee) {\r\n this.traineeFullName = [this.trainee.forenames, this.trainee.middleName, this.trainee.surname].filter(Boolean).join(\" \");\r\n }\r\n }\r\n\r\n mapComments(application: FinalDeclarationApplicationForm): void {\r\n const { countersignatures } = application;\r\n const response = countersignatures.filter(cs =>\r\n cs.decision === CountersignatureOutcome.Approved ||\r\n cs.decision === CountersignatureOutcome.Rejected);\r\n this.comments = response[0].countersignerComment;\r\n }\r\n\r\n formatAddress(): void {\r\n this.trainingSiteAdress = this.application.training.trainedAt.map((training: TrainingPlacement) => {\r\n return new Address(training.address).toString('
    ');\r\n });\r\n }\r\n\r\n goToStep(stepId) {\r\n this.navigate.emit(stepId);\r\n }\r\n}\r\n","
    \r\n\r\n
    \r\n
    \r\n

    Trainee details

    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n {{site.trainingSite}}\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n

    \r\n Comments\r\n

    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n {{comments.anyProblemsEffected===false ? \"No\" : \"Yes\"}}\r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    0\">\r\n \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n\r\n\r\n
    \r\n

    Outcome of final report

    \r\n
    \r\n
    \r\n
    \r\n {{countersigner.decision === 999 ? \"unsatisfactory\" : \"satisfactory\"}}
    \r\n
    \r\n\r\n \r\n\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n\r\n \r\n\r\n\r\n
    \r\n
    \r\n

    Your comments

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n No comments\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { Input, Component, forwardRef, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { FinalDeclaration } from '../../model/FinalDeclaration';\r\nimport { FinalDeclarationStep } from '../../model/FinalDeclarationStep';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-final-declaration-review-step',\r\n templateUrl: './finalDeclarationReviewStep.component.html',\r\n\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => FinalDeclarationReviewStepComponent)\r\n }\r\n ]\r\n}) export class FinalDeclarationReviewStepComponent extends FormStepComponent implements OnInit {\r\n title;\r\n @Input() stepId = FinalDeclarationStep.FinalReview;\r\n // applicant: Applicant;\r\n FinalDeclarationStep = FinalDeclarationStep;\r\n @Input() readonly = false;\r\n @Input() application: FinalDeclaration;\r\n\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n @Output() navigate = new EventEmitter();\r\n\r\n ngOnInit() {\r\n // this.applicant = this.application;\r\n this.title = this.readonly ? 'Final review' : 'Review';\r\n }\r\n\r\n validate() {\r\n this.validity$.next({ valid: true, messages: [], touched: this.touched });\r\n }\r\n\r\n goToStep(stepId) {\r\n this.navigate.emit(stepId);\r\n }\r\n\r\n populateForm() { }\r\n\r\n}\r\n","\r\n \r\n\r\n \r\n \r\n\r\n","import { Component, forwardRef, Input, OnInit } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { Router } from '@angular/router';\r\nimport { LayoutService } from '../../../../core/service/layout.service';\r\nimport { ApplicationStatus } from '../../../model/ApplicationStatus';\r\nimport { FinalDeclaration } from '../../model/FinalDeclaration';\r\nimport { FinalDeclarationStep } from '../../model/FinalDeclarationStep';\r\nimport { FinalDeclarationService } from '../../../../core/service/finalDeclaration.service';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-final-declaration-submit-step',\r\n templateUrl: './finalDeclarationSubmitStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => FinalDeclarationSubmitStepComponent)\r\n }\r\n ]\r\n}) export class FinalDeclarationSubmitStepComponent extends FormStepComponent implements OnInit {\r\n showDetailsHelp = false;\r\n @Input() formId;\r\n @Input() application: FinalDeclaration;\r\n title = 'Comments';\r\n stepId = FinalDeclarationStep.Submit;\r\n serverErrors = [];\r\n submitting;\r\n traineeFeedback = '';\r\n countersigner;\r\n comments: any;\r\n maxChars = 2001;\r\n characterleft = this.maxChars;\r\n validationErrors: any;\r\n\r\n constructor(service: FormStepperService,\r\n private finalDeclarationService: FinalDeclarationService, private router: Router, private layout: LayoutService) {\r\n super(service);\r\n }\r\n\r\n ngOnInit() {\r\n this.countersigner = this.application.activeForm.countersignatures[0];\r\n }\r\n\r\n beforeNext() {\r\n const payload = {\r\n formId: this.application.activeForm.id,\r\n countersignatureId: this.countersigner.id,\r\n countersignerCommentId: this.countersigner.countersignerCommentId,\r\n traineeFeedbackOnTutorAssessment: this.traineeFeedback\r\n };\r\n this.submitting = true;\r\n this.serverErrors = [];\r\n this.finalDeclarationService.submitFinalDeclarationForm(payload).subscribe(() => {\r\n this.application.activeForm.formStatus = ApplicationStatus.Submitted;\r\n delete this.finalDeclarationService.application;\r\n this.router.navigate(['/home']);\r\n this.submitting = false;\r\n }, error => {\r\n this.layout.setOverlay(false);\r\n this.serverErrors = error.validationErrors;\r\n this.submitting = false;\r\n });\r\n return false;\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n const hasComment = this.traineeFeedback.length < this.maxChars;\r\n const valid = hasComment;\r\n\r\n if (!valid) {\r\n\r\n this.validity$.next({ valid: false, messages, touched: true });\r\n }\r\n\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n populateForm() { }\r\n\r\n\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 Please include any comments you like to make about your progress report. These comments will not be shared\r\n with your designated supervisor but will be for your own records\r\n

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

    2000 \">\r\n You can only enter a maximum of 2000 characters in this field\r\n

    \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n
    ","import { Component, forwardRef, OnInit, Output, EventEmitter, Input } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { Tooltip } from '../../../../core/tooltip/Tooltip';\r\nimport { ConfirmDialogComponent } from '../../../../shared/confirmDialog.component';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { FinalDeclarationStep } from '../../model/FinalDeclarationStep';\r\nimport { FinalDeclaration } from '../../model/FinalDeclaration';\r\n\r\n@Component({\r\n selector: 'app-final-declaration-temporary-registration-step',\r\n templateUrl: './finalDeclarationTemporaryRegistrationStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => FinalDeclarationTemporaryRegistrationStepComponent)\r\n }\r\n ],\r\n styleUrls: ['./finalDeclarationTemporaryRegistration.scss']\r\n})\r\nexport class FinalDeclarationTemporaryRegistrationStepComponent extends FormStepComponent implements OnInit {\r\n title = 'Provisional registration application';\r\n stepId = FinalDeclarationStep.TemporaryRegistration;\r\n showDetailsHelp = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n @Input() application: FinalDeclaration;\r\n @Output() hasTempReg = new EventEmitter();\r\n temreg;\r\n confirmTempRegistration: boolean;\r\n submitting = false;\r\n\r\n constructor(service: FormStepperService, private dialog: MatDialog) {\r\n super(service);\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n update() {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n disableClose: false,\r\n data: {\r\n title: `Important`,\r\n confirmText: 'Yes',\r\n cancelText: 'No',\r\n message: `

    \r\n Are you sure you want to proceed?\r\n

    \r\n `,\r\n confirmProgressReport: false\r\n }\r\n });\r\n dialogRef.afterClosed().subscribe(confirmed => {\r\n if (confirmed) {\r\n this.validate();\r\n this.submitting=true;\r\n }\r\n });\r\n return dialogRef;\r\n }\r\n\r\n\r\n validate() {\r\n const messages = [];\r\n const hasTempRegistration = this.application.activeForm.confirmTempRegistration;\r\n\r\n this.hasTempReg.emit(hasTempRegistration);\r\n\r\n const valid = hasTempRegistration !== undefined && hasTempRegistration !== null;\r\n \r\n if (valid) {\r\n this.temreg = 'checked';\r\n }\r\n\r\n if (!valid) {\r\n messages.push(`You must complete this step to continue`);\r\n }\r\n\r\n\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n populateForm() {\r\n }\r\n\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 Complete this application if you want to register provisionally as a pharmacist. We recommend that you read\r\n the\r\n application guidance before starting your application.\r\n

    \r\n

    \r\n \r\n Please be aware you will not be admitted to the provisional register if you completed your training before\r\n 2019 or you\r\n have previously failed the registration assessment.\r\n \r\n

    \r\n

    \r\n You will only be able to click ‘yes’ or ‘no’, once – the form will not appear again. If you change your mind\r\n or click an\r\n answer in error, please email prereg@pharmacyregulation.org\r\n for assistance.\r\n

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

    \r\n I want to apply for provisional registration as a pharmacist.\r\n

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

    Yes

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

    No

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

    \r\n By clicking on the blue right hand arrow below, your final training report performance rating will be recorded\r\n against\r\n your training record, but you are not applying to appear on the provisional register of trainee\r\n pharmacists. \r\n

    \r\n
    \r\n\r\n
    \r\n\r\n\r\n
    ","import { Component, forwardRef, OnInit } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { Tooltip } from '../../../../core/tooltip/Tooltip';\r\nimport { FinalDeclarationStep } from '../../model/FinalDeclarationStep';\r\n\r\n@Component({\r\n selector: 'app-final-declaration-confirm-training-step',\r\n templateUrl: './finalDeclarationConfirmTrainingStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => FinalDeclarationConfirmTrainingStepComponent)\r\n }\r\n ]\r\n}) export class FinalDeclarationConfirmTrainingStepComponent extends FormStepComponent implements OnInit {\r\n\r\n trainingConfirmed;\r\n title = 'Training';\r\n stepId = FinalDeclarationStep.TrainingConfirmation;\r\n showDetailsHelp = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n\r\n\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n ngOnInit() {\r\n this.trainingConfirmed = this.application.activeForm.isTrainingConfirmed;\r\n }\r\n\r\n\r\n validate() {\r\n const messages = [];\r\n\r\n const valid = !!this.trainingConfirmed;\r\n\r\n if (!valid) {\r\n messages.push(`You must complete this step to continue`);\r\n }\r\n\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n populateForm() {\r\n\r\n this.application.activeForm.isTrainingConfirmed = this.trainingConfirmed;\r\n }\r\n\r\n}\r\n","\r\n\r\n
    \r\n

    \r\n
    \r\n Training\r\n
    \r\n \r\n

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

    \r\n The training details we hold for you are shown below. Please check these carefully and contact us if any of the\r\n information is incorrect.\r\n

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

    Training

    \r\n

    Please confirm your training details are correct.

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

    Correct

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

    Incorrect

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

    \r\n \r\n Please submit a change of training details form to correct your details\r\n \r\n before continuing.\r\n

    \r\n
    \r\n
    \r\n\r\n
    ","import { Component, Input, OnInit } from '@angular/core';\r\nimport { AssessmentTutorDetails } from '../../../../prereg/assessment-report/models/AssessmentTutors';\r\nimport { Address } from '../../../../account/model/Address';\r\nimport { TrainingPlacement } from '../../../model/TrainingPlacement';\r\n\r\n@Component({\r\n selector: 'app-final-declaration-trainee-placement',\r\n templateUrl: './finalDeclarationTraineePlacement.component.html'\r\n})\r\nexport class FinalDeclarationTraineePlacementComponent implements OnInit {\r\n @Input() trainingSites: TrainingPlacement[];\r\n @Input() tutors: AssessmentTutorDetails[];\r\n itemAddresses: string[];\r\n\r\n ngOnInit() {\r\n this.itemAddresses = this.trainingSites.map((training: TrainingPlacement) => {\r\n return new Address(training.address).toString('
    ');\r\n });\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n {{site.trainingSite}}\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {{ tutor.name}}\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    ","import { Component, OnInit, ViewChild, ElementRef, Renderer2 } from '@angular/core';\r\nimport { creditCards, CreditCard } from '../renewal/model/CreditCard';\r\nimport { RenewalService } from '../core/service/renewal.service';\r\nimport { PreregService } from '../core/service/prereg.service';\r\nimport { AuthService } from '../core/service/auth.service';\r\n\r\n@Component({\r\n templateUrl: './firstYearPayment.component.html',\r\n styleUrls: ['./firstYearPayment.scss']\r\n})\r\nexport class FirstYearPaymentComponent implements OnInit {\r\n\r\n fee;\r\n cartId;\r\n selectedCard: CreditCard;\r\n creditCards = creditCards;\r\n worldpayConfig;\r\n loading = false;\r\n messages = [];\r\n serverErrors = [];\r\n\r\n @ViewChild('worldpayForm') worldpayForm: ElementRef;\r\n\r\n constructor(private renderer: Renderer2,\r\n private service: PreregService, private renewalService: RenewalService, private auth: AuthService) {\r\n }\r\n\r\n ngOnInit() {\r\n this.loading = true;\r\n this.service.getRegApplication(this.auth.user.registrationStatus).subscribe(application => {\r\n this.fee = application.registrationFees.registrationFee;\r\n\r\n this.renewalService.getWordpayConfig().subscribe(config => {\r\n this.worldpayConfig = config;\r\n this.loading = false;\r\n });\r\n\r\n });\r\n\r\n }\r\n\r\n next() {\r\n\r\n this.messages = [];\r\n this.serverErrors = [];\r\n const valid = !!this.selectedCard;\r\n if (!valid) {\r\n this.messages.push('You must select a card type to proceed to payment');\r\n return;\r\n }\r\n\r\n this.service.saveFirstYearPayment().subscribe((result) => {\r\n this.cartId = JSON.stringify(result.paymentIdentifier);\r\n setTimeout(() => {\r\n //this.renderer.setProperty(this.worldpayForm.nativeElement, 'value', 'submit');\r\n this.worldpayForm.nativeElement.submit();\r\n }, 100);\r\n }, error => {\r\n this.serverErrors = error.validationErrors;\r\n });\r\n\r\n }\r\n\r\n\r\n}\r\n","
    \r\n\r\n \r\n
    \r\n

    First year registration fee

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

    Fees to be paid\r\n \"Worldpay\r\n\r\n

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

    \r\n First year registration fee: {{fee | currency: 'GBP': 'symbol' :'.2'}}\r\n

    \r\n
    \r\n

    \r\n Now your application has been approved, you must pay the fee of {{fee | currency: 'GBP': 'symbol' :'.2'}} to cover your first year of registration before you\r\n can join the register.\r\n

    \r\n

    \r\n Important: do not practise as a pharmacist until you have received your GPhC registration number and your name appears on the online\r\n register. It is your responsibility to check this before you practice. Your registration payment receipt is not proof of\r\n your registration. Practising as a pharmacist while not on the register is breaking the law and you can be prosecuted.\r\n

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

    Please select your card type

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

    \r\n We can only accept payments made in pounds sterling (GBP). Payments are processed using worldpay, for more information please\r\n review their privacy policy.\r\n

    \r\n

    \r\n When you make a card payment, you may be redirected to your card provider’s site to enter another password before they authorise\r\n your payment. You can find out more about 3-D Secure authentication from your card provider.\r\n

    \r\n
    \r\n\r\n \r\n \r\n \"{{card.name}}\r\n
    {{card.name}}\r\n
    \r\n
    \r\n\r\n \r\n

    \r\n {{message}}\r\n

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

    \r\n {{ 'Server validation error: ' + error.errors.join(',') }}\r\n

    \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n
    \r\n\r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n Proceed to payment\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n \r\n
    \r\n Saving\r\n
    \r\n
    \r\n Saving\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n
    ","export enum ApplicationFormMode {\r\n Editable,\r\n Readonly,\r\n Locked\r\n}\r\n","export enum ApplicationStatus {\r\n NotStarted = 1,\r\n InProgress = 2,\r\n\r\n // ROS\r\n CounterSigned = 4,\r\n\r\n // ROS (= trainees) Registration Application was submitted to CRM \r\n // PROS (= students) Pre-Registration Application was submitted to CRM \r\n Submitted = 3,\r\n\r\n // ROS:Means that the countersigner has been selected for this form, and that the\r\n // from is ready to be countersigned by that pharmacist.\r\n ReadyForCountersigning = 5,\r\n\r\n // ROS: If ApplicationForRegistration status is changing to 'approved\r\n // pending first year fee', FormStatus is set to\r\n // ApprovedPendingFirstYearFee by PreEntry subscriber\r\n // If this flag is true then 'First Year Payment should be available in UI'.\r\n ApprovedPendingFirstYearFee = 6,\r\n\r\n // ROS: If ApplicationForRegistration status is changing to 'Ineligible', FormStatus is set to Ineligible by PreEntry subscriber\r\n // PROS: If PreRegStatus is changing to 'Ineligible' in CRM, the form should be read-only https://mygphc.atlassian.net/browse/PROS-279\r\n Ineligible = 7,\r\n\r\n // ROS: First Year Fee was paid but the form was not approved in CRM\r\n PendingProcessing = 10,\r\n\r\n // ROS (= trainees) Registration Application was approved in CRM and both\r\n // payments were made; at this stage user is ready to be a\r\n // pharmacist/pharmacy technician\r\n // PROS (= students) Pre-Registration Application was approved in CRM\r\n Approved = 11,\r\n\r\n // PROS (= students) Pre-Registration Application was marked as 'Waiting for applicant' in CRM\r\n // https://mygphc.atlassian.net/browse/PROS-281\r\n WaitingForApplicant = 12,\r\n\r\n // PROS (= students) Pre-Registration Application was marked as terminated in CRM\r\n // https://mygphc.atlassian.net/browse/PROS-61\r\n Terminated = 13,\r\n\r\n // PROS: If PreRegStatus is changing to 'Ceased Training' in CRM, the\r\n // form should be read-only https://mygphc.atlassian.net/browse/PROS-279\r\n CeasedTraining = 14,\r\n\r\n Refused = 15,\r\n\r\n ApprovedPendingRestorationFee = 16,\r\n\r\n RestorationFeePaidPendingApproval = 17\r\n}\r\n","export enum CountersignatureOutcome {\r\n Unknown = 0,\r\n Pending = 1,\r\n Approved = 2,\r\n /// \r\n /// Refused to be reviewed by the reviewer. Could be because he was asked to\r\n /// review or counter-sign in err.\r\n /// \r\n Refused = 998,\r\n /// \r\n /// Rejected by the reviewer.\r\n /// \r\n Rejected = 999\r\n}\r\n","export enum FinalTrainingReport {\r\n Fail = 717750001,\r\n Pass = 717750000,\r\n}","import { Applicant } from '../../account/model/Applicant';\r\nimport { ApplicationStatus } from './ApplicationStatus';\r\nimport { RegApplicationForm } from './RegApplicationForm';\r\nimport { Training } from './Training';\r\nimport { TraineeAssessment } from './TraineeAssessment';\r\nimport { Address } from '../../account/model/Address';\r\nimport { RegistrantStatus } from '../../registration/model/RegistrantStatus';\r\nimport { CourseType } from '../../shared/model/student/CourseType';\r\nimport { Registrant } from '../../registration/model/Registrant';\r\nimport { Application } from './Application';\r\nimport { FormScope } from '../../registration/model/FormScope';\r\nimport { FinalTrainingReport } from './FinalTrainingReport';\r\n\r\nconst mockAssessments = [\r\n {\r\n sitting: 10,\r\n outcome: 'passed',\r\n session: '4'\r\n },\r\n {\r\n sitting: 200,\r\n outcome: 'failed',\r\n session: '2'\r\n },\r\n {\r\n sitting: 50,\r\n outcome: 'passed',\r\n session: '1'\r\n },\r\n {\r\n sitting: 30,\r\n outcome: 'failed',\r\n session: '3'\r\n },\r\n];\r\n\r\nexport class RegApplication implements Application {\r\n form;\r\n trainee: Applicant;\r\n registrant?: Registrant; // populated by the api once application status = approved pending registration, used for notice of entry\r\n training: Training;\r\n assessment: {\r\n assessments: Array;\r\n };\r\n\r\n isFirstYearPaymentAvailable: boolean;\r\n\r\n forms: Array = [];\r\n status: ApplicationStatus;\r\n activeForm: RegApplicationForm;\r\n pastApplications: Array;\r\n\r\n registrationFees: {\r\n applicationFee: number;\r\n registrationFee: number;\r\n };\r\n\r\n registrationApplicationScheme: {\r\n isOpened: boolean,\r\n openingDate: string\r\n };\r\n //isProvisionalRegistered: boolean;\r\n thirteenWeekResult: number;\r\n finalTrainingResult = FinalTrainingReport;\r\n\r\n constructor(data, registrantStatus: RegistrantStatus) {\r\n\r\n\r\n Object.assign(this, data);\r\n if (this.forms && this.forms.length > 0) {\r\n if (!!this.forms[0].scope && this.forms[0].scope != FormScope.TechnicianApplicant) {\r\n this.training.trainedAt.forEach(placement => {\r\n placement.address = new Address(placement.address);\r\n });\r\n\r\n this.status = this.forms.length ? this.forms[0].formStatus : ApplicationStatus.NotStarted;\r\n this.activeForm = new RegApplicationForm(this.forms[0], registrantStatus);\r\n this.pastApplications = this.forms.filter((form, i) => {\r\n return i > 0;\r\n });\r\n\r\n this.trainee.isOspap = this.trainee.qualification.courseType === CourseType.OSPAP;\r\n // this.trainee.dateOfBirth = '2017-06-11T00:00:00';\r\n }\r\n else {\r\n\r\n this.status = this.forms.length ? this.forms[0].formStatus : ApplicationStatus.NotStarted;\r\n this.activeForm = new RegApplicationForm(this.forms[0], registrantStatus);\r\n this.pastApplications = this.forms.filter((form, i) => {\r\n return i > 0;\r\n });\r\n }\r\n\r\n }\r\n }\r\n\r\n}\r\n","import { ApplicationStatus } from './ApplicationStatus';\r\nimport { FormAnswer } from '../../dynamic/model/FormAnswer';\r\nimport { FileUpload } from '../../shared/model/FileUpload';\r\nimport { RegApplicationStep } from './RegApplicationStep';\r\nimport { LetterOfGoodStanding } from './LetterOfGoodStanding';\r\nimport { ApplicationFormMode } from './ApplicationFormMode';\r\nimport { CountersignatureResult } from './CountersignatureResult';\r\nimport { RegistrantStatus } from '../../registration/model/RegistrantStatus';\r\nimport { ApplicationForm } from './ApplicationForm';\r\nimport { FormScope } from '../../registration/model/FormScope';\r\n\r\nexport class RegApplicationForm implements ApplicationForm {\r\n\r\n id: string;\r\n formStatus: ApplicationStatus;\r\n declarations: Array<{ dynamicFormId: string, answers: Array }>;\r\n attachments: Array = [];\r\n isOverallDeclarationConfirmed: boolean;\r\n isTrainingConfirmed: boolean;\r\n isAssessmentConfirmed: boolean;\r\n\r\n letterOfGoodStanding: LetterOfGoodStanding;\r\n step: RegApplicationStep;\r\n minStep: RegApplicationStep;\r\n mode: ApplicationFormMode;\r\n\r\n registrantStatus: RegistrantStatus;\r\n\r\n requirePayment: boolean;\r\n scope: FormScope;\r\n countersignatures: Array;\r\n\r\n get readonly() {\r\n return !(this.formStatus === ApplicationStatus.NotStarted ||\r\n this.formStatus === ApplicationStatus.InProgress ||\r\n this.formStatus === ApplicationStatus.CounterSigned ||\r\n this.formStatus === ApplicationStatus.ReadyForCountersigning ||\r\n this.registrantStatus === RegistrantStatus.IneligibleToRegister);\r\n }\r\n\r\n constructor(data, registrantStatus) {\r\n Object.assign(this, data);\r\n this.registrantStatus = registrantStatus;\r\n\r\n if (!this.letterOfGoodStanding) {\r\n this.letterOfGoodStanding = {\r\n hasRegistered: undefined,\r\n isRequested: undefined,\r\n regulatoryBody: undefined,\r\n registrationNumber: undefined\r\n };\r\n }\r\n\r\n this.requirePayment = !data.isPaid;\r\n\r\n // where server returns null or empty string, convert to undefined\r\n if (this.letterOfGoodStanding.hasRegistered === null) {\r\n this.letterOfGoodStanding.hasRegistered = undefined;\r\n }\r\n if (this.letterOfGoodStanding.isRequested === null) {\r\n this.letterOfGoodStanding.isRequested = undefined;\r\n }\r\n if (this.letterOfGoodStanding.registrationNumber === null) {\r\n this.letterOfGoodStanding.registrationNumber = undefined;\r\n }\r\n if (this.letterOfGoodStanding.regulatoryBody === null) {\r\n this.letterOfGoodStanding.regulatoryBody = undefined;\r\n }\r\n\r\n if (this.formStatus === ApplicationStatus.ReadyForCountersigning ||\r\n this.formStatus === ApplicationStatus.CounterSigned) {\r\n this.step = RegApplicationStep.Countersigning;\r\n this.minStep = RegApplicationStep.Countersigning;\r\n }\r\n if (this.formStatus === ApplicationStatus.InProgress && this.step > RegApplicationStep.Countersigning) {\r\n this.step = RegApplicationStep.Countersigning;\r\n }\r\n\r\n }\r\n\r\n}\r\n","export enum RegApplicationStep {\r\n Guidance = 1,\r\n PersonalDetails,\r\n TrainingConfirmation,\r\n LetterOfGoodStanding,\r\n FtpDeclaration1,\r\n FtpDeclaration2,\r\n OverallDeclaration,\r\n SupportingDocuments,\r\n Edi,\r\n Review,\r\n Countersigning,\r\n FinalReview,\r\n Payment,\r\n Submit\r\n}\r\n","export enum TraineeReportType {\r\n ThirteenWeekReport = 0,\r\n TwentySixWeekReport = 1,\r\n ThirtyNineWeekReport = 2,\r\n FinalTrainingReport = 3\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { Applicant } from '../account/model/Applicant';\r\nimport { PreregService } from '../core/service/prereg.service';\r\nimport { User } from '../account/model/User';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { RegApplicationForm } from './model/RegApplicationForm';\r\nimport { AttachmentType } from '../shared/model/AttachmentType';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n templateUrl: './pastApplication.component.html',\r\n styleUrls: ['../registration/countersign.scss']\r\n})\r\nexport class PastApplicationComponent implements OnInit {\r\n\r\n\r\n loading = false;\r\n formId;\r\n application;\r\n applicationForm: RegApplicationForm;\r\n attachments;\r\n AttachmentType = AttachmentType;\r\n applicationDate;\r\n\r\n constructor(private auth: AuthService, private service: PreregService, private route: ActivatedRoute) {\r\n this.formId = this.route.snapshot.params['id'];\r\n }\r\n\r\n ngOnInit() {\r\n this.loading = true;\r\n this.service.getRegApplication(null).subscribe(application => {\r\n this.application = application;\r\n this.applicationDate = this.application.pastApplications\r\n .find(app => app.id === this.formId);\r\n this.loading = false;\r\n }, error => {\r\n this.loading = false;\r\n });\r\n\r\n }\r\n}\r\n","\r\n\r\n
    \r\n
    \r\n

    Past Application

    \r\n
    \r\n

    Review your past application created on: {{ applicationDate?.createdAt | date:'dd/MM/yyyy'}}\r\n

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

    Application for registration

    \r\n \r\n \r\n
    \r\n
    \r\n\r\n ","import { Component, Input, OnInit } from '@angular/core';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { Applicant } from '../account/model/Applicant';\r\nimport { User } from '../account/model/User';\r\nimport { CurrentApplicationService } from '../core/service/prereg/currentApplication.service';\r\nimport { LetterType } from '../registration/model/LetterType';\r\nimport { RegistrationService } from '../core/service/registration.service';\r\nimport { AssessmentAttemptsLetterData } from '../registration/model/AssessmentAttemptsLetterData';\r\n@Component({\r\n moduleId: module.id,\r\n templateUrl: './prereg.component.html'\r\n})\r\nexport class PreregComponent implements OnInit {\r\n\r\n trainee: Applicant;\r\n user: User;\r\n loading;\r\n LetterType = LetterType;\r\n loadingLetters = false;\r\n letters = [];\r\n letterType;\r\n Sitting: number;\r\n finalSitting: number;\r\n\r\n constructor(private auth: AuthService, private currentApplicationService: CurrentApplicationService,\r\n private regService: RegistrationService) { }\r\n\r\n ngOnInit() {\r\n this.user = this.auth.user;\r\n this.trainee = this.currentApplicationService.trainee.value;\r\n this.loadLetters();\r\n }\r\n loadLetters() {\r\n this.loadingLetters = true;\r\n this.regService.getLetters().subscribe(letters => {\r\n this.loadingLetters = false;\r\n this.letters = letters;\r\n });\r\n\r\n }\r\n\r\n}\r\n","\r\n
    \r\n

    Foundation training

    \r\n

    Your foundation training details\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n Foundation training details\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \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 }}\r\n \r\n
    \r\n \r\n Letters\r\n \r\n \r\n\r\n\r\n\r\n
    \r\n
    \r\n
    ","import { NgModule, ErrorHandler, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { SharedModule } from '../shared/shared.module';\r\nimport { RouterModule } from '@angular/router';\r\nimport { AccountModule } from '../account/account.module';\r\nimport { PreregDashboardComponent } from './preregDashboard.component';\r\nimport { RegApplicationComponent } from './regApplication.component';\r\n\r\nimport { PreregComponent } from './prereg.component';\r\nimport { CustomErrorHandler } from '../core/service/CustomErrorHandler';\r\nimport { PreregRoutingModule } from './prereg.routing.module';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { PersonalDetailsStepComponent } from './steps/personalDetailsStep.component';\r\n\r\nimport { FtpDeclarationStepComponent } from './steps/declaration/ftpDeclarationStep.component';\r\nimport { DeclarationSummaryComponent } from './steps/declaration/declarationSummary.component';\r\nimport { EqualityDiversityStepComponent } from './steps/equalityDiversityStep.component';\r\n\r\nimport { OverallDeclarationStepComponent } from './steps/declaration/overallDeclarationStep.component';\r\nimport { ConfirmTrainingStepComponent } from './steps/training/confirmTrainingStep.component';\r\nimport { PaymentStepComponent } from './steps/paymentStep.component';\r\nimport { SubmitStepComponent } from './steps/submitStep.component';\r\nimport { ReviewStepComponent } from './steps/reviewStep.component';\r\nimport { TraineePlacementComponent } from './steps/training/traineePlacement.component';\r\nimport { LetterStepComponent } from './steps/letterStep.component';\r\nimport { RegApplicationReviewComponent } from './steps/regApplicationReview.component';\r\nimport { CountersigningStepComponent } from './steps/countersigning/countersigningStep.component';\r\nimport { FirstYearPaymentComponent } from './firstYearPayment.component';\r\nimport { PastApplicationComponent } from './pastApplication.component';\r\nimport { RenewalModule } from '../renewal/renewal.module';\r\nimport { LetterSummaryComponent } from './steps/letterSummary.component';\r\nimport { MAT_DATE_LOCALE } from '@angular/material/core';\r\nimport { SupportingDocumentsStepComponent } from './steps/supportingDocumentsStep.component';\r\n\r\n// Assessment report\r\nimport { AssessmentReportComponent } from './assessment-report/assessmentReport.component';\r\n//import { AssessmentReportPersonalDetailsStepComponent } from './assessment-report/steps/personalDetails/assessmentReportPersonalDetailsStep.component';\r\n\r\nimport { AssessmentReportTraineePlacementComponent } from './assessment-report/steps/training/assessmentReportTraineePlacement.component';\r\nimport { AssessmentReportConfirmTrainingStepComponent } from './assessment-report/steps/training/assessmentReportConfirmTrainingStep.component';\r\n\r\nimport { AssessmentReportCountersigningStepComponent } from './assessment-report/steps/countersigning/assessmentReportCountersigningStep.component';\r\nimport { AssessmentReportSubmitStepComponent } from './assessment-report/steps/submit/assessmentReportSubmitStep.component';\r\nimport { AssessmentReportReviewComponent } from './assessment-report/steps/review/assessmentReportReview.component';\r\nimport { AssessmentReportReviewStepComponent } from './assessment-report/steps/review/assessmentReportReviewStep.component';\r\n\r\nimport { AssessmentReportTemporaryRegistrationStepComponent } from './assessment-report/steps/temporaryRegistration/assessmentReportTemporaryRegistrationStep.component';\r\nimport { AssessmentReportDeclarationSummaryComponent } from './assessment-report/steps/declaration/assessmentReportDeclarationSummary.component';\r\nimport { AssessmentReportFtpDeclarationStepComponent } from './assessment-report/steps/declaration/assessmentReportFtpDeclarationStep.component';\r\nimport { AssessmentReportOverallDeclarationStepComponent } from './assessment-report/steps/declaration/assessmentReportOverallDeclarationStep.component';\r\n\r\n//import { ArosApplicationComponent } from './arosApplication.component';\r\nimport { TraineeAssessmentComponent } from './steps/training/traineeAssessment.component';\r\n\r\nimport { SittingConfirmationComponent } from './steps/sittingConfirmation/sittingConfirmationStep.component';\r\nimport { AssessmentRegistrationComponent } from './assessment-registration/assessmentRegistrationApplication.component';\r\nimport { AssessmentRegistrationDeclarationComponent } from './assessment-registration/steps/declarations/assessmentRegistrationDeclaration.component';\r\nimport { AssessmentRegistrationReviewComponent } from './assessment-registration/steps/review/assessmentRegistrationReview.component';\r\nimport { AssessmentRegistrationPaymentStepComponent } from './assessment-registration/steps/payment/assessmentRegistrationPaymentStep.component';\r\nimport { AssessmentRegistrationPersonalDetailsComponent } from './assessment-registration/steps/personalDetails/assessmentRegistrationPersonalDetails.component';\r\nimport { AssessmentRegistrationReviewStepComponent } from './assessment-registration/steps/review/assessmentRegistrationReviewStep.component';\r\nimport { AssessmentRegistrationSubmitComponent } from './assessment-registration/steps/submit/assessmentRegistrationSubmit.component';\r\nimport { AssessmentRegistrationSupportingDocumentsStepComponent } from './assessment-registration/steps/supportingDocuments/assessmentRegistrationSupportingDocumentsStep.component';\r\nimport { AssessmentRegistrationRegulationStepComponent } from './assessment-registration/steps/regulations/assessmentRegistrationRegulationStep.component';\r\nimport { FinalDeclarationComponent } from './final-declaration/finalDeclaration.component';\r\nimport { FinalDeclarationConfirmTrainingStepComponent } from './final-declaration/steps/training/finalDeclarationConfirmTrainingStep.component';\r\nimport { FinalDeclarationTraineePlacementComponent } from './final-declaration/steps/training/finalDeclarationTraineePlacement.component';\r\nimport { FinalDeclarationCountersigningStepComponent } from './final-declaration/steps/countersigning/finalDeclarationCountersigningStep.component';\r\nimport { FinalDeclarationTemporaryRegistrationStepComponent } from './final-declaration/steps/temporaryRegistration/finalDeclarationTemporaryRegistrationStep.component';\r\nimport { FinalDeclarationReviewComponent } from './final-declaration/steps/review/finalDeclarationReview.component';\r\nimport { FinalDeclarationReviewStepComponent } from './final-declaration/steps/review/finalDeclarationReviewStep.component';\r\nimport { FinalDeclarationSummaryComponent } from './final-declaration/steps/declaration/finalDeclarationSummaryStep.component';\r\nimport { FinalDeclarationFtpStepComponent } from './final-declaration/steps/declaration/finalDeclarationFtpStep.component';\r\nimport { FinalDeclarationOverallConfirmationStepComponent } from './final-declaration/steps/declaration/finalDeclarationOverallConfirmationStep.component';\r\nimport { FinalDeclarationSubmitStepComponent } from './final-declaration/steps/submit/finalDeclarationSubmitStep.component';\r\nimport { GuidanceComponent } from './steps/guidance/guidance.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n RouterModule,\r\n SharedModule,\r\n AccountModule,\r\n PreregRoutingModule,\r\n RenewalModule,\r\n ],\r\n declarations: [\r\n RegApplicationComponent,\r\n RegApplicationReviewComponent,\r\n PreregDashboardComponent,\r\n PreregComponent,\r\n PersonalDetailsStepComponent,\r\n EqualityDiversityStepComponent,\r\n FtpDeclarationStepComponent,\r\n OverallDeclarationStepComponent,\r\n ConfirmTrainingStepComponent,\r\n PaymentStepComponent,\r\n ReviewStepComponent,\r\n SubmitStepComponent,\r\n TraineeAssessmentComponent,\r\n TraineePlacementComponent,\r\n LetterStepComponent,\r\n DeclarationSummaryComponent,\r\n FirstYearPaymentComponent,\r\n CountersigningStepComponent,\r\n PastApplicationComponent,\r\n LetterSummaryComponent,\r\n SupportingDocumentsStepComponent,\r\n GuidanceComponent,\r\n //AROS\r\n AssessmentReportComponent,\r\n //AssessmentReportPersonalDetailsStepComponent,\r\n AssessmentReportTraineePlacementComponent,\r\n AssessmentReportConfirmTrainingStepComponent,\r\n AssessmentReportCountersigningStepComponent,\r\n AssessmentReportSubmitStepComponent,\r\n AssessmentReportReviewComponent,\r\n AssessmentReportReviewStepComponent,\r\n AssessmentReportTemporaryRegistrationStepComponent,\r\n AssessmentReportDeclarationSummaryComponent,\r\n AssessmentReportFtpDeclarationStepComponent,\r\n AssessmentReportOverallDeclarationStepComponent,\r\n SittingConfirmationComponent,\r\n AssessmentRegistrationComponent,\r\n AssessmentRegistrationDeclarationComponent,\r\n AssessmentRegistrationReviewComponent,\r\n AssessmentRegistrationPaymentStepComponent,\r\n AssessmentRegistrationPersonalDetailsComponent,\r\n AssessmentRegistrationReviewStepComponent,\r\n AssessmentRegistrationSubmitComponent,\r\n AssessmentRegistrationSupportingDocumentsStepComponent,\r\n AssessmentRegistrationRegulationStepComponent,\r\n //final declaration\r\n FinalDeclarationComponent,\r\n FinalDeclarationConfirmTrainingStepComponent,\r\n FinalDeclarationTraineePlacementComponent,\r\n FinalDeclarationCountersigningStepComponent,\r\n FinalDeclarationReviewComponent,\r\n FinalDeclarationReviewStepComponent,\r\n FinalDeclarationTemporaryRegistrationStepComponent,\r\n FinalDeclarationSummaryComponent,\r\n FinalDeclarationFtpStepComponent,\r\n FinalDeclarationOverallConfirmationStepComponent,\r\n FinalDeclarationSubmitStepComponent\r\n ],\r\n exports: [\r\n PreregDashboardComponent,\r\n RegApplicationReviewComponent,\r\n AssessmentReportReviewComponent\r\n ],\r\n providers: [\r\n { provide: ErrorHandler, useClass: CustomErrorHandler },\r\n { provide: MAT_DATE_LOCALE, useValue: 'en-GB' }\r\n ],\r\n schemas: [CUSTOM_ELEMENTS_SCHEMA]\r\n})\r\nexport class PreregModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { RegApplicationComponent } from './regApplication.component';\r\nimport { AssessmentReportComponent } from './assessment-report/assessmentReport.component';\r\nimport { LoggedInOnlyGuard } from '../guard/LoggedInOnly.guard';\r\nimport { UserLoadedGuard } from '../guard/UserLoaded.guard';\r\nimport { PreregOnlyGuard } from '../guard/PreregOnly.guard';\r\nimport { CanDeactivateGuard } from '../guard/CanDeactivate.guard';\r\nimport { FirstYearPaymentComponent } from './firstYearPayment.component';\r\nimport { PreregComponent } from './prereg.component';\r\nimport { PastApplicationComponent } from './pastApplication.component';\r\nimport { AssessmentRegistrationComponent } from './assessment-registration/assessmentRegistrationApplication.component';\r\nimport { FinalDeclarationComponent } from './final-declaration/finalDeclaration.component';\r\n\r\n//import { ArosApplicationComponent } from './arosApplication.component';\r\n\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'pastApplication/:id',\r\n component: PastApplicationComponent,\r\n canActivate: [UserLoadedGuard, LoggedInOnlyGuard, PreregOnlyGuard]\r\n },\r\n {\r\n path: '',\r\n pathMatch: 'full',\r\n redirectTo: 'home'\r\n },\r\n {\r\n path: 'home',\r\n component: PreregComponent,\r\n canActivate: [UserLoadedGuard, LoggedInOnlyGuard, PreregOnlyGuard]\r\n },\r\n {\r\n path: 'application', canActivate: [UserLoadedGuard, LoggedInOnlyGuard,\r\n PreregOnlyGuard], data: { title: 'Application for registration', classname: 'application' },\r\n canDeactivate: [CanDeactivateGuard],\r\n component: RegApplicationComponent\r\n },\r\n /* { path: 'aros-application', canActivate: [ UserLoadedGuard, LoggedInOnlyGuard,\r\n PreregOnlyGuard], data: { title: 'Application for registration', classname : 'application' },\r\n canDeactivate: [ CanDeactivateGuard ],\r\n component: ArosApplicationComponent },*/\r\n {\r\n path: 'application/first-year-payment', canActivate: [UserLoadedGuard, LoggedInOnlyGuard,\r\n PreregOnlyGuard], data: { title: 'First year payment', classname: 'application' },\r\n component: FirstYearPaymentComponent\r\n },\r\n {\r\n path: 'assessment-report', canActivate: [UserLoadedGuard, LoggedInOnlyGuard,\r\n PreregOnlyGuard], data: { title: 'Application for progress report', classname: 'application' },\r\n canDeactivate: [CanDeactivateGuard],\r\n component: AssessmentReportComponent\r\n },\r\n {\r\n path: 'assessment-registration', canActivate: [UserLoadedGuard, LoggedInOnlyGuard,\r\n PreregOnlyGuard], data: { title: 'Application to sit the registration assessment', classname: 'application' },\r\n canDeactivate: [CanDeactivateGuard],\r\n component: AssessmentRegistrationComponent\r\n },\r\n {\r\n path: 'final-declaration', canActivate: [UserLoadedGuard, LoggedInOnlyGuard,\r\n PreregOnlyGuard], data: { title: '52 week final declaration', classname: 'application' },\r\n canDeactivate: [CanDeactivateGuard],\r\n component: FinalDeclarationComponent\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n providers: [\r\n UserLoadedGuard,\r\n LoggedInOnlyGuard,\r\n PreregOnlyGuard,\r\n CanDeactivateGuard\r\n ]\r\n})\r\nexport class PreregRoutingModule { }\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { ApplicationStatus } from './model/ApplicationStatus';\r\nimport { User } from '../account/model/User';\r\nimport { PreregService } from '../core/service/prereg.service';\r\nimport { RegApplication } from './model/RegApplication';\r\nimport { Registrant } from '../registration/model/Registrant';\r\nimport { RegistrantStatus } from '../registration/model/RegistrantStatus';\r\nimport { Address } from '../account/model/Address';\r\nimport { DatePipe } from '@angular/common';\r\nimport { AssessmentReport } from './assessment-report/models/AssessmentReport';\r\nimport { AssessmentReportService } from '../core/service/assessmentReport.service';\r\nimport { FormScope } from '../registration/model/FormScope';\r\nimport { AssessmentRegistrationService } from '../core/service/assessmentRegistration.service';\r\n\r\nimport { CurrentApplicationService } from '../core/service/prereg/currentApplication.service';\r\nimport { AssessmentRegistration } from './assessment-registration/model/AssessmentRegistration';\r\nimport { AssessmentApplicationStatus } from './assessment-report/models/AssessmentApplicationStatus';\r\n\r\nimport { ConfirmDialogComponent } from '../shared/confirmDialog.component';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { Router } from '@angular/router';\r\nimport { CountersignatureOutcome } from './model/CountersignatureOutcome';\r\nimport { FinalDeclarationService } from '../core/service/finalDeclaration.service';\r\nimport { FinalDeclaration } from './final-declaration/model/FinalDeclaration';\r\n\r\n\r\n@Component({\r\n selector: 'app-prereg-dashboard',\r\n moduleId: module.id,\r\n templateUrl: './preregDashboard.component.html',\r\n styleUrls: ['../style/dashboard.scss']\r\n})\r\nexport class PreregDashboardComponent implements OnInit {\r\n user: User;\r\n loadingApplication = false;\r\n error = false;\r\n regApplication: RegApplication;\r\n assessmentReport: AssessmentReport;\r\n assessmentRegistration: AssessmentRegistration;\r\n ApplicationStatus = ApplicationStatus;\r\n AssessmentApplicationStatus = AssessmentApplicationStatus;\r\n emptyData = true;\r\n noTile;\r\n applicationClosedMessage;\r\n showNoticeOfEntry = false;\r\n isApplicationOpen;\r\n isAssessmentRegistrationOpen = true;\r\n isCurrentApplicationRecieved = false;\r\n\r\n countersignerOutcome = CountersignatureOutcome;\r\n response;\r\n\r\n\r\n isFinalDeclarationOpen;\r\n registrantStatus: RegistrantStatus;\r\n finalDeclaration: FinalDeclaration;\r\n\r\n constructor(\r\n private auth: AuthService,\r\n private service: PreregService,\r\n private assessmentReportService: AssessmentReportService,\r\n private assessmentRegistrationService: AssessmentRegistrationService,\r\n private finalDeclarationService: FinalDeclarationService,\r\n private datePipe: DatePipe,\r\n private currentApplicationService: CurrentApplicationService,\r\n private dialog: MatDialog,\r\n private router: Router\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.user = this.auth.user;\r\n if (this.isInEligibleToRegister) {\r\n return;\r\n } else {\r\n this.getAvailableForm();\r\n }\r\n }\r\n\r\n get threeColumns(): boolean {\r\n return this.showFirstYearPayment || this.showNoticeOfEntry;\r\n }\r\n\r\n get twoColumns(): boolean {\r\n return !this.threeColumns;\r\n }\r\n\r\n get showAssessmentReport(): boolean {\r\n return !!this.assessmentReport;\r\n }\r\n\r\n get showAssessmentRegistration(): boolean {\r\n return !!this.assessmentRegistration;\r\n }\r\n\r\n get showFinalDeclaration(): boolean {\r\n return !!this.finalDeclaration;\r\n }\r\n\r\n get showPreregApp(): boolean {\r\n return !!this.regApplication;\r\n }\r\n\r\n get showFirstYearPayment(): boolean {\r\n return this.regApplication && this.regApplication.isFirstYearPaymentAvailable;\r\n }\r\n\r\n get isAssessmentCountersigned() {\r\n return this.assessmentReport.activeForm.formStatus === ApplicationStatus.CounterSigned;\r\n }\r\n\r\n get hasBeenApproved() {\r\n return this.assessmentReport.activeForm.countersignatures[0].decision === CountersignatureOutcome.Approved;\r\n }\r\n\r\n\r\n get isInEligibleToRegister() {\r\n return this.user.registrationStatus === RegistrantStatus.IneligibleToRegister;\r\n }\r\n get isFinalDeclarationCountersigned() {\r\n return this.finalDeclaration.activeForm.formStatus === ApplicationStatus.CounterSigned;\r\n }\r\n\r\n get hasFinalDeclarationApproved() {\r\n return this.finalDeclaration.activeForm.countersignatures[0].decision === CountersignatureOutcome.Approved;\r\n }\r\n\r\n getAvailableForm(): void {\r\n this.service.getAvailableForm().subscribe((availableForm: number) => {\r\n\r\n switch (availableForm) {\r\n case FormScope.ProgressReport:\r\n this.getAssessmentReport();\r\n break;\r\n case FormScope.Trainee:\r\n this.getRegApplication();\r\n break;\r\n case FormScope.AssessmentRegistration:\r\n this.getAssessmentRegistrationApplication();\r\n break;\r\n case FormScope.FinalDeclaration:\r\n this.getFinalDeclarationApplication();\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n });\r\n\r\n\r\n }\r\n\r\n getAssessmentRegistrationApplication() {\r\n this.assessmentRegistrationService\r\n .getAssessmentRegistrationApplication(this.auth.user.registrationStatus)\r\n .subscribe(assessmentRegistrationApplication => {\r\n this.assessmentRegistration = assessmentRegistrationApplication;\r\n this.currentApplicationService.setTrainee(assessmentRegistrationApplication);\r\n this.loadingApplication = false;\r\n });\r\n }\r\n\r\n getFinalDeclarationApplication() {\r\n this.finalDeclarationService\r\n .getFinalDeclarationApplication(this.auth.user.registrationStatus).subscribe(finalDeclarationApplication => {\r\n this.finalDeclaration = finalDeclarationApplication;\r\n this.currentApplicationService.setTrainee(finalDeclarationApplication);\r\n this.isFinalDeclarationOpen = this.finalDeclaration.isOpen;\r\n if (this.isFinalDeclarationCountersigned && this.hasFinalDeclarationApproved) {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n allowCancel: false,\r\n allowNext: false,\r\n title: `Hello ${this.user.toString()}`,\r\n message: `

    \r\n You can now see your satisfactory final declaration and the comments made by your supervisor. You have the opportunity to add any comments you might have.\r\n

    \r\n `,\r\n confirmFinalDeclaration: true\r\n }\r\n });\r\n dialogRef.afterClosed().subscribe(() => {\r\n this.router.navigate(['/account/notifications']);\r\n });\r\n\r\n }\r\n this.loadingApplication = false;\r\n });\r\n }\r\n\r\n getRegApplication() {\r\n this.loadingApplication = true;\r\n this.service.getRegApplication(this.auth.user.registrationStatus).subscribe(\r\n application => {\r\n this.regApplication = application;\r\n this.currentApplicationService.setTrainee(application);\r\n this.isApplicationOpen = this.regApplication.registrationApplicationScheme.isOpened;\r\n this.showNoticeOfEntry = this.auth.user.showNoticeOfEntry;\r\n const startDate = this.datePipe.transform(\r\n this.regApplication.registrationApplicationScheme.openingDate,\r\n 'd MMMM yyyy'\r\n );\r\n this.applicationClosedMessage = `Your application for registration will be available\r\n towards the end of your pre-registration year on ${startDate}`;\r\n if (this.showNoticeOfEntry) {\r\n const registrant = new Registrant(this.regApplication.registrant);\r\n registrant.title = this.auth.user.title;\r\n registrant.forenames = this.auth.user.forenames;\r\n registrant.surname = this.auth.user.surname;\r\n registrant.status = RegistrantStatus.ReadyForRegistration;\r\n registrant.postalTown = this.regApplication.trainee.address.town;\r\n this.auth.user.address = new Address(\r\n this.regApplication.trainee.address\r\n );\r\n this.auth.user.registrant = registrant;\r\n }\r\n this.loadingApplication = false;\r\n },\r\n error => {\r\n this.error = error;\r\n this.loadingApplication = false;\r\n }\r\n );\r\n }\r\n\r\n getAssessmentReport() {\r\n this.loadingApplication = true;\r\n this.assessmentReportService\r\n .getAssessmentReportApplication(this.auth.user.registrationStatus)\r\n .subscribe(report => {\r\n this.assessmentReport = report;\r\n this.currentApplicationService.setTrainee(report);\r\n this.isApplicationOpen = this.assessmentReport.isOpen;\r\n\r\n if (this.assessmentReport.thirtyNineWeekReportResult === null) {\r\n console.log(this.assessmentReport.thirtyNineWeekReportResult)\r\n this.applicationClosedMessage = `Your 39 week progress report will soon be available here for sign-off. Please come back once you have completed the 36th week of your training.`;\r\n } else {\r\n this.applicationClosedMessage = `Not Applicable`;\r\n }\r\n if (this.isAssessmentCountersigned && this.hasBeenApproved) {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n allowCancel: false,\r\n allowNext: false,\r\n title: `Hello ${this.user.toString()}`,\r\n message: `

    \r\n You can now review your satisfactory 39 week progress report and the comments made by your designated supervisor.\r\n You have the opportunity to add any comments you may have.\r\n

    \r\n `,\r\n confirmProgressReport: true\r\n }\r\n });\r\n dialogRef.afterClosed().subscribe(() => {\r\n this.router.navigate(['/account/notifications']);\r\n });\r\n\r\n }\r\n this.loadingApplication = false;\r\n });\r\n }\r\n\r\n get applicationLink() {\r\n if (\r\n this.regApplication &&\r\n this.regApplication.isFirstYearPaymentAvailable\r\n ) {\r\n return '/prereg/application/first-year-payment';\r\n }\r\n return '/prereg/application';\r\n }\r\n}\r\n","\r\n
    \r\n

    Home

    \r\n

    \r\n A summary of the status of your application for registration\r\n

    \r\n

    \r\n A summary of the status of your application to sit the registration assessment\r\n

    \r\n

    \r\n A summary of the status of your application for 39 week progress report\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n
    Error
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n Registration application\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n {{ ApplicationStatus[regApplication?.status] | caseSplit }}\r\n
    \r\n
    \r\n Only apply once you have sat the registration assessment and you have a satisfactory final declaration\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n \r\n
    \r\n \r\n
    \r\n {{ applicationClosedMessage }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n 39 week progress report\r\n\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n {{ AssessmentApplicationStatus[assessmentReport?.status] | caseSplit }}\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n \r\n
    \r\n {{ applicationClosedMessage }}\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n \r\n \r\n Application to sit the registration assessment\r\n
    ( {{ assessmentRegistration?.activeAssessment }} )
    \r\n
    \r\n
    \r\n \r\n
    \r\n {{ ApplicationStatus[assessmentRegistration?.status] | caseSplit }}\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n Final declaration (52 week progress report)\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n {{ ApplicationStatus[finalDeclaration?.status] | caseSplit }}\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n \r\n
    \r\n {{ applicationClosedMessage }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n {{ user }}\r\n \r\n \r\n\r\n \r\n \r\n Notice of entry\r\n
    \r\n \r\n
    \r\n View or print\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n First year fee\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n Make payment now\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n Past Applications\r\n
    \r\n
      \r\n
    • \r\n
      \r\n {{ form.createdAt | date: \"dd/MM/yyyy\" }}\r\n
      \r\n
      {{ ApplicationStatus[form.formStatus] | caseSplit }}
      \r\n
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n Application\r\n
    \r\n
    \r\n \r\n
    \r\n Ineligible to register\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    ","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { LogService } from '../core/service/log.service';\r\nimport { RegApplication } from './model/RegApplication';\r\nimport { User } from '../account/model/User';\r\nimport { PreregService } from '../core/service/prereg.service';\r\nimport { LayoutService } from '../core/service/layout.service';\r\nimport { CanComponentDeactivate } from '../guard/CanDeactivate.guard';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { ConfirmDialogComponent } from '../shared/confirmDialog.component';\r\nimport { RegApplicationStep } from './model/RegApplicationStep';\r\nimport { FormStepperService } from '../shared/formStepper/formStepper.service';\r\nimport { FormStepSummary } from '../shared/formStepper/FormStepSummary';\r\nimport { FormStepperComponent } from '../shared/formStepper/formStepper.component';\r\nimport { ApplicationStatus } from './model/ApplicationStatus';\r\nimport { mergeMap } from 'rxjs/operators';\r\nimport { of as observableOf, from as observableFrom } from 'rxjs';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'app-reg-application',\r\n moduleId: module.id,\r\n templateUrl: './regApplication.component.html',\r\n styleUrls: ['./application-form.scss'],\r\n providers: [FormStepperService]\r\n})\r\nexport class RegApplicationComponent implements OnInit,\r\n CanComponentDeactivate {\r\n\r\n user: User;\r\n loading = false;\r\n ready = false;\r\n saving = false;\r\n loadingError = false;\r\n application: RegApplication;\r\n maxStep: RegApplicationStep;\r\n minStep: RegApplicationStep;\r\n showGuidanceWarning = false;\r\n RegApplicationStep = RegApplicationStep;\r\n isApplicationOpen = true;\r\n applicationClosedMessage: string;\r\n\r\n initialSteps;\r\n\r\n @ViewChild(FormStepperComponent) formStepper;\r\n\r\n constructor(private router: Router, private auth: AuthService,\r\n private log: LogService, private service: PreregService,\r\n public layout: LayoutService,\r\n private dialog: MatDialog,\r\n public formStepperService: FormStepperService,\r\n private datePipe: DatePipe\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.load();\r\n }\r\n\r\n reopenApplication() {\r\n this.cancelCountersignature(1);\r\n }\r\n\r\n get ineligible() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.Ineligible;\r\n }\r\n\r\n get terminated() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.Terminated;\r\n }\r\n\r\n get refused() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.Refused;\r\n }\r\n\r\n get allowResubmit() {\r\n return !this.application.activeForm.requirePayment;\r\n }\r\n\r\n resubmitApplication() {\r\n this.layout.setFullscreenSpinner(true, 'Submitting...');\r\n this.service.reSubmitApplication(this.application.activeForm.id).subscribe(() => {\r\n this.router.navigate(['/home']);\r\n // invalidate cache\r\n delete this.service.application;\r\n this.layout.setFullscreenSpinner(false);\r\n }, error => {\r\n this.layout.setFullscreenSpinner(false);\r\n });\r\n }\r\n\r\n\r\n load() {\r\n this.user = this.auth.user;\r\n this.loading = true;\r\n this.loadingError = false;\r\n this.service.getRegApplication(this.auth.user.registrationStatus).subscribe(application => {\r\n this.application = application;\r\n\r\n this.isApplicationOpen = this.application.registrationApplicationScheme.isOpened;\r\n\r\n if (!this.isApplicationOpen) {\r\n const startDate = this.datePipe.transform(this.application.registrationApplicationScheme.openingDate, 'd MMMM yyyy');\r\n this.applicationClosedMessage = `Your application for registration will be available towards the end or your foundation year on ${startDate}`;\r\n this.loading = false;\r\n return;\r\n }\r\n\r\n if (this.application.activeForm.step) {\r\n this.maxStep = this.application.activeForm.step;\r\n }\r\n if (this.application.activeForm.minStep) {\r\n this.minStep = this.application.activeForm.minStep;\r\n }\r\n\r\n this.loading = false;\r\n this.ready = true;\r\n setTimeout(() => {\r\n this.showGuidanceWarning = this.formStepper && this.formStepper.currentStep === RegApplicationStep.PersonalDetails;\r\n this.updateStepId();\r\n });\r\n }, error => {\r\n this.loading = false;\r\n this.loadingError = true;\r\n });\r\n }\r\n\r\n\r\n warnForDirty(): Observable {\r\n\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n title: `Unsaved changes`,\r\n message: `

    Do you want to save your changes before exiting your application form?

    `\r\n }\r\n });\r\n return dialogRef.afterClosed()\r\n .pipe(mergeMap(shouldSave => {\r\n if (shouldSave) {\r\n this.layout.setFullscreenSpinner(true);\r\n return observableFrom(this.save().then(() => {\r\n return true;\r\n }, error => {\r\n // show error messages\r\n this.layout.setFullscreenSpinner(false);\r\n return false;\r\n }));\r\n } else {\r\n return observableOf(true);\r\n }\r\n }));\r\n }\r\n\r\n canDeactivate() {\r\n if (!this.formStepper || !this.formStepper.currentStep || !this.formStepper.currentStep.dirty) { return true; }\r\n return this.warnForDirty();\r\n }\r\n\r\n save() {\r\n this.saving = true;\r\n\r\n this.application.activeForm.step = this.formStepperService.getFurthestStep();\r\n this.formStepper.currentStep.populateForm();\r\n return new Promise((resolve, reject) => {\r\n const start = performance.now();\r\n const minExecution = 300;\r\n function respond(cb) {\r\n const end = performance.now();\r\n const duration = end - start;\r\n if (duration < minExecution) {\r\n setTimeout(() => {\r\n cb();\r\n }, Math.round(minExecution - duration));\r\n } else {\r\n cb();\r\n }\r\n }\r\n this.service.saveRegApplication(this.application).subscribe(() => {\r\n respond(() => {\r\n this.saving = false;\r\n resolve();\r\n });\r\n }, error => {\r\n respond(() => {\r\n this.saving = false;\r\n reject(error);\r\n });\r\n });\r\n });\r\n }\r\n\r\n goToStepId(stepId) {\r\n if (this.application.activeForm.formStatus === ApplicationStatus.CounterSigned) {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n title: `Form is countersigned`,\r\n message: `

    If you need to edit these details you will have to get the form countersigned again.

    \r\n

    Are you sure ?

    \r\n `\r\n }\r\n });\r\n dialogRef.afterClosed().subscribe(cancelCountersignature => {\r\n if (cancelCountersignature) {\r\n this.cancelCountersignature(stepId);\r\n }\r\n });\r\n } else {\r\n this.formStepper.goToStep(stepId);\r\n }\r\n }\r\n\r\n\r\n goToStep(step: FormStepSummary) {\r\n if (step.disabled) { return; }\r\n this.formStepper.goToStep(step.stepId);\r\n }\r\n\r\n cancelCountersignature(stepId) {\r\n this.layout.setFullscreenSpinner(true, 'Reverting...');\r\n this.service.cancelCountersignature(this.application.activeForm.id).subscribe(() => {\r\n this.application.activeForm.formStatus = ApplicationStatus.InProgress;\r\n setTimeout(() => {\r\n if (this.formStepperService.summary) {\r\n this.formStepperService.summary.find(step => step.stepId === RegApplicationStep.Countersigning).validity.valid = false;\r\n this.formStepperService.setStepRange(1, RegApplicationStep.Countersigning);\r\n }\r\n this.formStepper.goToStep(stepId);\r\n this.layout.setFullscreenSpinner(false);\r\n });\r\n\r\n }, error => {\r\n this.layout.setFullscreenSpinner(false);\r\n });\r\n }\r\n\r\n stepChanged(stepId) {\r\n this.service.setStep(this.application.activeForm.id, stepId).subscribe();\r\n this.application.activeForm.step = stepId;\r\n }\r\n\r\n stepChange(): () => Promise {\r\n return function () {\r\n return new Promise((resolve, reject) => {\r\n\r\n if (this.formStepper.currentStep.dirty) {\r\n this.formStepper.serverErrors = [];\r\n\r\n return this.save().then(() => {\r\n resolve();\r\n }, error => {\r\n this.formStepper.serverErrors = error.validationErrors;\r\n reject(error);\r\n });\r\n } else {\r\n resolve();\r\n }\r\n });\r\n }.bind(this);\r\n }\r\n\r\n updateStepId(): void {\r\n if(this.formStepper) {\r\n if(this.formStepperService.updateStepsId(this.initialSteps, this.formStepper.steps)) {\r\n this.initialSteps = this.formStepper.steps;\r\n }\r\n }\r\n }\r\n}\r\n","
    \r\n
    \r\n\r\n \r\n
    \r\n\r\n
    \r\n

    Application for registration

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

    Before you begin your application for registration,\r\n read the guidance on providing correctly certified supporting documents [hyperlink to policy website]

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

    \r\n An error occurred while attempting to load your application\r\n

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

    This application has been marked as Terminated.

    \r\n
    \r\n

    You can either re-submit this application as it is, or re-open this one for editing if you need to make\r\n changes.

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

    You can re-open this application if you would like to submit again.

    \r\n \r\n
    \r\n
    \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n
    \r\n\r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n \r\n \r\n\r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n\r\n
    \r\n \r\n Application\r\n \r\n
    \r\n \r\n
    \r\n

    \r\n {{ applicationClosedMessage }}\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    ","import {\r\n Component, forwardRef, ViewChildren, ViewChild, QueryList, ElementRef\r\n} from '@angular/core';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\nimport { RegApplicationStep } from '../../model/RegApplicationStep';\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\nimport { RegistrationService } from '../../../core/service/registration.service';\r\nimport { RegisterSearchParams, RegisterSearchBy, RegisterSearchResult } from '../../../registration/model/RegisterSearchParams';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ConfirmDialogComponent } from '../../../shared/confirmDialog.component';\r\nimport { ApplicationStatus } from '../../model/ApplicationStatus';\r\nimport { PreregService } from '../../../core/service/prereg.service';\r\nimport { CountersignatureResult } from '../../model/CountersignatureResult';\r\nimport { CountersignatureOutcome } from '../../model/CountersignatureOutcome';\r\nimport { environment } from '../../../../environments/environment.cblocal';\r\nimport { LogService } from '../../../core/service/log.service';\r\n\r\n@Component({\r\n selector: 'app-countersigning-step',\r\n templateUrl: './countersigningStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => CountersigningStepComponent)\r\n }\r\n ],\r\n styleUrls: ['./countersigningStep.scss']\r\n})\r\nexport class CountersigningStepComponent extends FormStepComponent {\r\n\r\n showHelp = false;\r\n stepId = RegApplicationStep.Countersigning;\r\n title = 'Countersignature';\r\n searchParams: RegisterSearchParams = new RegisterSearchParams();\r\n RegisterSearchBy = RegisterSearchBy;\r\n pharmacists: Array;\r\n selectedPharmacist: RegisterSearchResult;\r\n searching = false;\r\n loadingMore = false;\r\n showLoadMore = false;\r\n noResultsVisible = false;\r\n sending = false;\r\n recalling = false;\r\n sent = false;\r\n serverErrors;\r\n lastResult: CountersignatureResult;\r\n CountersignatureOutcome = CountersignatureOutcome;\r\n prevDisabled = false;\r\n\r\n @ViewChildren('focus') focus: QueryList;\r\n @ViewChild('resultsList') resultsListRef: ElementRef;\r\n\r\n load() {\r\n if (this.application.activeForm.formStatus === ApplicationStatus.CounterSigned ||\r\n this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning) {\r\n this.prevDisabled = true;\r\n }\r\n this.serverErrors = undefined;\r\n this.loadResults();\r\n if (!this.lastResult) {\r\n this.setFocus();\r\n }\r\n this.ready$.next(true);\r\n }\r\n\r\n get inProgress() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.InProgress;\r\n }\r\n\r\n get _prevDisabled() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.CounterSigned ||\r\n this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning;\r\n }\r\n set _prevDisabled(disabled) { }\r\n\r\n get showCountersigningResult() {\r\n return this.inProgress && this.lastResult !== undefined && this.lastResult.decision !== CountersignatureOutcome.Approved &&\r\n this.lastResult.decision !== CountersignatureOutcome.Unknown &&\r\n this.lastResult.decision !== CountersignatureOutcome.Pending;\r\n }\r\n loadResults() {\r\n if (this.application.activeForm.countersignatures &&\r\n this.application.activeForm.countersignatures.length) {\r\n const countersignatures = this.application.activeForm.countersignatures.sort((a, b) => {\r\n return new Date(a.decisionMadeAt) < new Date(b.decisionMadeAt) ? 1 : -1;\r\n });\r\n this.lastResult = countersignatures[0];\r\n this.selectedPharmacist = this.lastResult;\r\n }\r\n }\r\n\r\n constructor(service: FormStepperService, private preregService: PreregService,\r\n public regService: RegistrationService, private dialog: MatDialog, private log: LogService) {\r\n super(service);\r\n }\r\n\r\n get _waiting() {\r\n return this.awaitingCountersigning;\r\n }\r\n\r\n search() {\r\n this.searchParams.skip = 0;\r\n this.searching = true;\r\n this.regService.searchRegister(this.searchParams)\r\n .subscribe(results => {\r\n this.pharmacists = results;\r\n this.searching = false;\r\n this.showLoadMore = results.length === this.searchParams.take;\r\n this.resultsListRef.nativeElement.scrollTop = 0;\r\n this.noResultsVisible = results.length === 0;\r\n }, error => {\r\n this.searching = false;\r\n this.showLoadMore = false;\r\n });\r\n }\r\n\r\n\r\n clearNoResults() {\r\n this.noResultsVisible = false;\r\n }\r\n\r\n loadMore() {\r\n this.searchParams.skip += this.searchParams.take;\r\n this.loadingMore = true;\r\n this.regService.searchRegister(this.searchParams)\r\n .subscribe(results => {\r\n this.showLoadMore = results.length === this.searchParams.take;\r\n this.pharmacists = this.pharmacists.concat(results);\r\n this.loadingMore = false;\r\n }, error => {\r\n this.loadingMore = false;\r\n });\r\n }\r\n\r\n cancelSelection() {\r\n this.selectedPharmacist = undefined;\r\n this.touched = false;\r\n this.validate();\r\n }\r\n\r\n sendForCountersigning() {\r\n\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n confirmText: 'Yes',\r\n cancelText: 'No',\r\n title: `Send for countersigning`,\r\n message: `

    Are you sure you are ready to have your application countersigned ?

    `\r\n }\r\n });\r\n\r\n dialogRef.afterClosed().subscribe(confirmed => {\r\n if (confirmed) {\r\n this.serverErrors = undefined;\r\n this.sending = true;\r\n this.preregService.sendToCountersigner(this.selectedPharmacist.registrationNumber).subscribe(() => {\r\n this.log.info('Send to countersigner response - success');\r\n this.lastResult = undefined;\r\n this.sending = false;\r\n this.log.info('Updating form status to ReadyForCountersigning');\r\n this.application.activeForm.formStatus = ApplicationStatus.ReadyForCountersigning;\r\n this.log.info('Updating form step validity');\r\n this.validity$.next({ valid: false, messages: [], touched: this.touched });\r\n\r\n setTimeout(() => {\r\n this.log.info('Locking form');\r\n this.service.disableAllStepsExcept(RegApplicationStep.Countersigning);\r\n }, 50);\r\n\r\n }, error => {\r\n this.log.error('Send to countersigner response - fail', error);\r\n this.serverErrors = error.validationErrors;\r\n this.sending = false;\r\n });\r\n }\r\n });\r\n return false;\r\n\r\n }\r\n\r\n recall() {\r\n this.recalling = true;\r\n this.preregService.recallFromCountersigner().subscribe(() => {\r\n this.recalling = false;\r\n this.application.activeForm.formStatus = ApplicationStatus.InProgress;\r\n this.service.setStepRange(1, RegApplicationStep.Countersigning);\r\n this.validity$.next({ valid: false, messages: [], touched: false });\r\n }, error => {\r\n\r\n this.recalling = false;\r\n });\r\n }\r\n\r\n get searchByName() {\r\n return this.searchParams.searchBy === RegisterSearchBy.Name;\r\n }\r\n get searchByNumber() {\r\n return this.searchParams.searchBy === RegisterSearchBy.Number;\r\n }\r\n\r\n setFocus() {\r\n setTimeout(function () {\r\n if (this.focus.first && this.focus.first.nativeElement) {\r\n this.focus.first.nativeElement.focus();\r\n }\r\n }.bind(this), 50);\r\n }\r\n\r\n setSelectedPharmacist(pharmacist: RegisterSearchResult) {\r\n this.selectedPharmacist = pharmacist;\r\n this.validate();\r\n }\r\n\r\n validate() {\r\n if (this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning) {\r\n this.validity$.next({\r\n valid: false, messages: [`Waiting for a response from your countersigning pharmacist.\r\n You cannot proceed until your application has been countersigned.`], touched: this.touched\r\n });\r\n return;\r\n }\r\n const valid = this.application.activeForm.formStatus === ApplicationStatus.CounterSigned;\r\n const messages = [];\r\n if (!valid) {\r\n if (!this.selectedPharmacist) {\r\n messages.push('You must choose a countersigning pharmacist');\r\n }\r\n messages.push('You cannot proceed until your application has been countersigned');\r\n }\r\n\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n get isDirty() {\r\n return false;\r\n }\r\n\r\n populateForm() {\r\n }\r\n\r\n get awaitingCountersigning() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning;\r\n }\r\n\r\n get countersigned() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.CounterSigned;\r\n }\r\n\r\n get showDiagnosticsLink() {\r\n return environment.target !== 'PROD';\r\n }\r\n}\r\n","\r\n
    \r\n

    \r\n
    Countersigning your application
    \r\n \r\n

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

    \r\n The countersigning pharmacist must confirm that they have read your application, and seen your uploaded supporting documents.\r\n

    \r\n

    \r\n Based on this information, they must confirm that they have no issues to raise with us, in relation to the standards for\r\n pharmacy professionals, about your actions, professional performance or health, which would stop you being registered as\r\n a pharmacist.\r\n

    \r\n

    \r\n The pharmacist you nominate will receive a notification when your application has been sent to them for sign off.\r\n

    \r\n

    \r\n You will receive a notification once your selected pharmacist has either countersigned or refused to countersign your application.\r\n

    \r\n

    \r\n If your application is successfully countersigned, you must pay your application fee. Once we receive your fee, we will\r\n start to process your application.\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n {{ lastResult?.feedback }}\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n\r\n

    Select a pharmacist for countersigning

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

    \r\n Your application must be reviewed and countersigned by a registered pharmacist, preferably your foundation designated supervisor,\r\n to help to verify you meet the criteria to be registered as a pharmacist.\r\n

    \r\n

    \r\n The countersigning pharmacist will receive your full application including your assessment result(s) as shown on the review\r\n screen. It will not include any equality information you have provided.\r\n

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

    Please search for a pharmacist to countersign your application using the search box below.

    \r\n \r\n \r\n Registration number\r\n 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 Please enter a registration number\r\n

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

    \r\n You must provide a last 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
    Searching for pharmacists...
    \r\n
    \r\n
    \r\n 0\">\r\n
    \r\n \r\n
      \r\n
    • \r\n \r\n
    • \r\n
    • \r\n \r\n
      \r\n \r\n
      \r\n
    • \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n

    \r\n Couldn't find any pharmacists with registration number '{{searchParams.regNumber}}'.\r\n

    \r\n

    \r\n Couldn't find any pharmacists called '{{ (searchParams.firstName ? searchParams.firstName + ' ' : '') + searchParams.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 {{ selectedPharmacist?.registrationNumber}} - {{ selectedPharmacist?.forenames + ' ' + selectedPharmacist?.surname }} - {{\r\n selectedPharmacist?.town }}\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n \r\n

    \r\n {{ 'Server validation error: ' + error.errors.join(',') }}\r\n

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

    Once your application has been countersigned, you will no longer be able to change it.\r\n

    \r\n

    If you change your mind you can recall your application from the countersigning pharmacist, as long as it hasn't\r\n been countersigned yet.\r\n

    \r\n
    \r\n\r\n\r\n
    \r\n\r\n\r\n \r\n
    \r\n\r\n \r\n \r\n
    \r\n Recalling application...\r\n Sending to countersigning pharmacist...\r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n
    \r\n Your application has now been countersigned\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n
    \r\n Your application is now waiting to be countersigned\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 { Input, Component, OnInit } from '@angular/core';\r\nimport { PreregService } from '../../../core/service/prereg.service';\r\nimport { FormValidator } from '../../../dynamic/service/FormValidator';\r\nimport { FormValidationService } from '../../../dynamic/service/formValidationService';\r\nimport { RegApplication } from '../../model/RegApplication';\r\nimport { FormQuestion } from '../../../dynamic/model/FormQuestion';\r\nimport { RegApplicationForm } from '../../model/RegApplicationForm';\r\nimport { map } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-declaration-summary',\r\n templateUrl: './declarationSummary.component.html',\r\n providers: [\r\n FormValidationService,\r\n { provide: FormValidator, useExisting: FormValidationService }\r\n ],\r\n styleUrls: ['./declarationSummary.scss']\r\n}) export class DeclarationSummaryComponent implements OnInit {\r\n empty = false;\r\n form$ = this.validator.state$.pipe(map(forms => forms[0]));\r\n formIndex: number;\r\n @Input('formIndex') set setFormIndex(value) {\r\n this.formIndex = parseInt(value, 10);\r\n }\r\n @Input() application: RegApplication;\r\n @Input() formId;\r\n applicationForm: RegApplicationForm;\r\n dynamicFormId;\r\n hasToDeclare: Array = [];\r\n constructor(\r\n private preregService: PreregService,\r\n private validator: FormValidationService\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n this.setForm();\r\n this.load();\r\n }\r\n\r\n setForm() {\r\n if (this.formId) {\r\n this.applicationForm = this.application.pastApplications\r\n .find(pastApp => pastApp.id === this.formId);\r\n } else {\r\n this.applicationForm = this.application.activeForm;\r\n }\r\n }\r\n\r\n load() {\r\n this.preregService.getDeclarationFormTemplates().subscribe(formTemplates => {\r\n const formTemplate = formTemplates[this.formIndex];\r\n const form = this.validator.addForm(formTemplate);\r\n this.dynamicFormId = form.dynamicFormId;\r\n const saved = this.applicationForm.declarations.find(dec => dec.dynamicFormId === form.dynamicFormId);\r\n if (!saved) {\r\n this.empty = true;\r\n return;\r\n }\r\n this.validator.loadAnswers(form, saved.answers);\r\n this.hasToDeclare = form.questionGroups.reduce((acc, group) => {\r\n acc = acc.concat(group.questions.filter(q => this.validator.hasToDeclare(q)));\r\n return acc;\r\n }, []);\r\n });\r\n }\r\n}\r\n\r\n\r\n","
    \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n
    \r\n I have nothing to declare\r\n
    \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n Declarations not completed\r\n
    \r\n
    ","import { Input, Component, forwardRef, OnInit } from '@angular/core';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\nimport { PreregService } from '../../../core/service/prereg.service';\r\nimport { FormValidator } from '../../../dynamic/service/FormValidator';\r\nimport { FormValidationService } from '../../../dynamic/service/formValidationService';\r\nimport { RegApplicationStep } from '../../model/RegApplicationStep';\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\nimport { map, tap } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-ftp-declaration-step',\r\n templateUrl: './ftpDeclarationStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => FtpDeclarationStepComponent)\r\n },\r\n FormValidationService,\r\n { provide: FormValidator, useExisting: FormValidationService }\r\n ]\r\n}) export class FtpDeclarationStepComponent extends FormStepComponent implements OnInit {\r\n declarationHeading;\r\n form$ = this.validator.state$.pipe(map(forms => forms[0]));\r\n formIndex: number;\r\n @Input('formIndex') set setFormIndex(value) {\r\n this.formIndex = parseInt(value, 10);\r\n }\r\n title;\r\n stepId;\r\n dynamicFormId;\r\n valid;\r\n constructor(private preregService: PreregService, private validator: FormValidationService, service: FormStepperService) {\r\n super(service);\r\n this.form$.subscribe(form => {\r\n if (form) {\r\n this.dirty = form.dirty;\r\n this.valid = !form.invalid && form.completed;\r\n this.validate();\r\n }\r\n });\r\n }\r\n\r\n beforeNext() {\r\n return this.populateForm();\r\n }\r\n\r\n beforePrev() {\r\n return this.populateForm();\r\n }\r\n\r\n populateForm() {\r\n this.application.activeForm.declarations = this.application.activeForm.declarations\r\n .filter(d => d.dynamicFormId !== this.dynamicFormId);\r\n this.application.activeForm.declarations.push(this.validator.getPayload()[0]);\r\n return true;\r\n }\r\n\r\n ngOnInit() {\r\n this.title = 'Declaration (' + (this.formIndex + 1) + ')';\r\n if (this.formIndex === 0) {\r\n this.stepId = RegApplicationStep.FtpDeclaration1;\r\n this.declarationHeading = 'Declaration of fitness to practise';\r\n }\r\n if (this.formIndex === 1) {\r\n this.stepId = RegApplicationStep.FtpDeclaration2;\r\n this.declarationHeading = 'Declarations on joining the register';\r\n }\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n if (!this.valid) {\r\n messages.push('You must answer all the questions to continue');\r\n }\r\n this.validity$.next({ valid: this.valid, messages, touched: this.touched });\r\n }\r\n\r\n load() {\r\n\r\n this.preregService.getDeclarationFormTemplates().subscribe(formTemplates => {\r\n const formTemplate = formTemplates[this.formIndex];\r\n const form = this.validator.addForm(formTemplate);\r\n this.dynamicFormId = form.dynamicFormId;\r\n const saved = this.application.activeForm.declarations.find(dec => dec.dynamicFormId === form.dynamicFormId);\r\n if (saved) {\r\n this.validator.loadAnswers(form, saved.answers);\r\n }\r\n\r\n // strip off any legacy declaration forms\r\n const currentDynamicFormIds = formTemplates.map(template => template.dynamicFormId);\r\n this.application.activeForm.declarations = this.application.activeForm.declarations\r\n .filter(f => currentDynamicFormIds.indexOf(f.dynamicFormId) > -1 );\r\n\r\n this.validator.updateState();\r\n this.dirty = false;\r\n this.touched = false;\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n}\r\n\r\n\r\n","\r\n

    {{ declarationHeading }}

    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    ","import { Component, forwardRef } from '@angular/core';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\nimport { RegApplicationStep } from '../../model/RegApplicationStep';\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\n\r\n@Component({\r\n selector: 'app-overall-declaration-step',\r\n templateUrl: './overallDeclarationStep.component.html',\r\n styleUrls: ['./overallDeclarationStep.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => OverallDeclarationStepComponent)\r\n }\r\n ]\r\n}) export class OverallDeclarationStepComponent extends FormStepComponent {\r\n\r\n title = 'Declaration (3)';\r\n stepId = RegApplicationStep.OverallDeclaration;\r\n\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n update() {\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n const valid = this.application.activeForm.isOverallDeclarationConfirmed;\r\n if (!valid) {\r\n messages.push('You must tick the box to continue');\r\n }\r\n this.validity$.next({ valid, messages, touched: this.touched});\r\n }\r\n populateForm() {}\r\n\r\n}\r\n","\r\n

    \r\n Declaration Confirmation\r\n

    \r\n
    \r\n

    \r\n I confirm that I fully understand the declarations I have made.\r\n

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

    I have read and understand the declaration

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { Component, forwardRef, OnInit } from '@angular/core';\r\nimport { EdiService } from '../../account/service/edi.service';\r\nimport { FormStepComponent } from '../../shared/formStepper/formStep.component';\r\nimport { EqualityDiversity } from '../../account/model/EqualityDiversity';\r\nimport { RegApplicationStep } from '../model/RegApplicationStep';\r\nimport { FormStepperService } from '../../shared/formStepper/formStepper.service';\r\nimport { Tooltip } from '../../core/tooltip/Tooltip';\r\n\r\n@Component({\r\n selector: 'app-equality-diversity-step',\r\n templateUrl: './equalityDiversityStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => EqualityDiversityStepComponent)\r\n }\r\n ]\r\n}) export class EqualityDiversityStepComponent extends FormStepComponent implements OnInit {\r\n\r\n equalityDiversity: EqualityDiversity;\r\n constructor(public ediService: EdiService, service: FormStepperService) {\r\n super(service);\r\n }\r\n title = 'Equality and diversity';\r\n stepId = RegApplicationStep.Edi;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n showDetailsHelp = false;\r\n prevDisabled = true;\r\n\r\n ngOnInit() {\r\n this.equalityDiversity = this.application.trainee.equalityDiversity || {\r\n ethnicity: undefined,\r\n ethnicityOther: '',\r\n nationality: undefined,\r\n religion: undefined,\r\n religionOther: '',\r\n disabled: undefined,\r\n disabilityDetails: '',\r\n gender: undefined,\r\n sexualOrientation: undefined\r\n };\r\n }\r\n\r\n validate() {\r\n this.validity$.next(Object.assign(this.ediService.validate(this.equalityDiversity), { touched: this.touched }));\r\n }\r\n\r\n update($event) {\r\n const nationality = this.application.trainee.equalityDiversity.nationality;\r\n this.application.trainee.equalityDiversity = Object.assign($event, { nationality });\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n load() {\r\n this.ediService.load().subscribe(() => {\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n populateForm() { }\r\n\r\n}\r\n","\r\n\r\n
    \r\n

    \r\n
    \r\n Equality and diversity\r\n
    \r\n \r\n

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

    \r\n At the GPhC, we are committed to promoting equality, valuing diversity and being inclusive in all our work as a health professions\r\n regulator, and to making sure we meet our equality duties.\r\n

    \r\n

    \r\n This equality monitoring form will provide us with useful information to check that this happens, as defined under the Equality\r\n Act 2010. We will use your answers to compile statistics and to facilitate research to support this work. We sometimes share\r\n data with third parties to help us carry out research into particular issues and will have a confidentiality agreement in\r\n place if this happens.\r\n

    \r\n

    \r\n It does not form part of the application process and won’t be submitted to the pharmacist you chose to countersign your\r\n application. If you do not want to give us any information, click on ‘prefer not to say’ in response to each section.\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \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, forwardRef } from '@angular/core';\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\nimport { RegApplicationStep } from '../../model/RegApplicationStep';\r\nimport { RegApplication } from '../../model/RegApplication';\r\n\r\n@Component({\r\n selector: 'app-guidance',\r\n templateUrl: './guidance.component.html',\r\n styleUrls: ['./guidance.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => GuidanceComponent)\r\n } \r\n ]\r\n})\r\nexport class GuidanceComponent extends FormStepComponent {\r\n title = 'Guidance on completing this application';\r\n application : RegApplication;\r\n stepId = RegApplicationStep.Guidance;\r\n fee = '106';\r\n\r\n constructor(private formStepperService: FormStepperService) { \r\n super(formStepperService);\r\n }\r\n\r\n populateForm() {}\r\n\r\n validate() {\r\n this.validity$.next({ valid: true, messages : [] , touched: false });\r\n }\r\n}\r\n","\r\n

    {{ title }}

    \r\n\r\n \r\n
    \r\n","import { Component, forwardRef, OnInit } from '@angular/core';\r\nimport { FormStepComponent } from '../../shared/formStepper/formStep.component';\r\nimport { RegApplicationStep } from '../model/RegApplicationStep';\r\nimport { FormStepperService } from '../../shared/formStepper/formStepper.service';\r\nimport { FormControl, Validators } from '@angular/forms';\r\nimport { Applicant } from '../../account/model/Applicant';\r\nimport { Tooltip } from '../../core/tooltip/Tooltip';\r\nimport { debounceTime } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-letter-step',\r\n templateUrl: './letterStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => LetterStepComponent)\r\n }\r\n ],\r\n styleUrls: ['./letterStep.scss']\r\n})\r\nexport class LetterStepComponent extends FormStepComponent implements OnInit {\r\n showDetailsHelp = false;\r\n applicant: Applicant;\r\n stepId = RegApplicationStep.LetterOfGoodStanding;\r\n title = 'Letter of good standing';\r\n model = {\r\n hasRegistered: new FormControl(undefined, {\r\n validators: Validators.required\r\n }),\r\n regulatoryBody: new FormControl(undefined),\r\n registrationNumber: new FormControl(undefined),\r\n requested: new FormControl(undefined)\r\n };\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n ngOnInit() {\r\n this.model.hasRegistered.valueChanges\r\n .pipe(debounceTime(50))\r\n .subscribe(value => {\r\n this.makeDirty();\r\n if (value === false) {\r\n this.model.regulatoryBody.clearValidators();\r\n this.model.registrationNumber.clearValidators();\r\n this.model.requested.clearValidators();\r\n this.model.regulatoryBody.setValue(null);\r\n this.model.registrationNumber.setValue(null);\r\n this.model.requested.setValue(null);\r\n } else if (value === true) {\r\n this.model.regulatoryBody.setValidators(Validators.required);\r\n this.model.registrationNumber.setValidators(Validators.required);\r\n this.model.requested.setValidators(Validators.required);\r\n this.model.regulatoryBody.setValue(\r\n this.checkFormForNullVals(this.application.activeForm.letterOfGoodStanding.regulatoryBody)\r\n );\r\n this.model.registrationNumber.setValue(\r\n this.checkFormForNullVals(this.application.activeForm.letterOfGoodStanding.registrationNumber)\r\n );\r\n this.model.requested.setValue(\r\n this.checkFormForNullVals(this.application.activeForm.letterOfGoodStanding.isRequested)\r\n );\r\n }\r\n this.model.regulatoryBody.updateValueAndValidity();\r\n this.model.registrationNumber.updateValueAndValidity();\r\n this.model.requested.updateValueAndValidity();\r\n this.validate();\r\n });\r\n this.model.regulatoryBody.valueChanges\r\n .pipe(debounceTime(50))\r\n .subscribe(value => {\r\n this.makeDirty();\r\n this.validate();\r\n });\r\n this.model.registrationNumber.valueChanges\r\n .pipe(debounceTime(50))\r\n .subscribe(value => {\r\n this.makeDirty();\r\n this.validate();\r\n });\r\n this.model.requested.valueChanges\r\n .pipe(debounceTime(50))\r\n .subscribe(value => {\r\n this.makeDirty();\r\n this.validate();\r\n });\r\n this.applicant = this.application.trainee;\r\n\r\n if (this.applicant.isOspap) {\r\n this.model.hasRegistered.setValue(true);\r\n this.model.hasRegistered.disable();\r\n } else {\r\n if (this.application.activeForm.letterOfGoodStanding.hasRegistered !== undefined) {\r\n this.model.hasRegistered.setValue(this.application.activeForm.letterOfGoodStanding.hasRegistered);\r\n }\r\n }\r\n }\r\n\r\n private checkFormForNullVals(val) {\r\n return val !== null ? val : '';\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n if (!this.model.hasRegistered.disabled && !this.model.hasRegistered.valid) {\r\n messages.push('You must answer the question to continue');\r\n }\r\n if (!this.model.regulatoryBody.valid) {\r\n messages.push('Please enter the name of the regulatory body');\r\n }\r\n if (!this.model.registrationNumber.valid) {\r\n messages.push('Please enter the registration number');\r\n }\r\n if (!this.model.requested.valid) {\r\n messages.push('Please state whether or not letter of good standing has been requested');\r\n }\r\n this.validity$.next({ valid: !messages.length, messages, touched: this.touched });\r\n\r\n \r\n }\r\n/*\r\n isDirty() {\r\n\r\n const letter = this.application.activeForm.letterOfGoodStanding;\r\n\r\n if ((!letter.hasRegistered && this.model.hasRegistered.value) ||\r\n (letter.hasRegistered && !this.model.hasRegistered.value) ) {\r\n return true;\r\n }\r\n \r\n if (letter.isRequested === undefined && this.model.requested.value) { return true; }\r\n if (letter.isRequested !== undefined && !this.model.requested.value) { return true; }\r\n\r\n if (\r\n (letter.registrationNumber || this.model.registrationNumber.value) &&\r\n letter.registrationNumber !== this.model.registrationNumber.value) {\r\n return true;\r\n }\r\n if (\r\n (letter.regulatoryBody || this.model.regulatoryBody.value) &&\r\n letter.regulatoryBody !== this.model.regulatoryBody.value) {\r\n return true;\r\n }\r\n return false;\r\n }*/\r\n\r\n populateForm() {\r\n this.application.activeForm.letterOfGoodStanding = {\r\n hasRegistered: this.model.hasRegistered.value,\r\n isRequested: this.model.requested.value,\r\n registrationNumber: this.model.registrationNumber.value,\r\n regulatoryBody: this.model.regulatoryBody.value\r\n };\r\n }\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 If you have been registered (in the last 5 years) or are currently registered with:\r\n

    \r\n
      \r\n
    • another health regulatory body in Great Britain
    • \r\n
    • any health regulatory body outside of Great Britain
    • \r\n
    \r\n

    \r\n You must provide details of your registration and a valid 'letter of good standing' from this organisation.\r\n

    \r\n

    \r\n This is so that we can verify that you are fit to practise as a pharmacy professional. We may contact the\r\n regulatory\r\n body for more information.\r\n

    \r\n

    \r\n If you are an OSPAP or EEA applicant, submitting a letter of good standing is a mandatory part of your\r\n application.\r\n

    \r\n

    \r\n Letters of good standing are only valid for six months from the date they are issued.\r\n

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

    Have you\r\n been registered with any other regulatory bodies in the last 5 years?

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n Yes\r\n No\r\n \r\n\r\n \r\n

    \r\n This is mandatory\r\n

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

    \r\n Please provide details of the health regulatory body and your registration with them.\r\n

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

    \r\n This is mandatory\r\n

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

    \r\n This is mandatory\r\n

    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n Yes\r\n No\r\n \r\n \r\n

    \r\n This is mandatory\r\n

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

    \r\n If you are an OSPAP or EEA applicant, or if you have been registered with any other health\r\n regulatory bodies, your application\r\n will not be complete until we receive a letter of good standing.\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    ","
    \r\n \r\n
    \r\n
    {{letterAnswers.hasRegistered ? 'Yes' : 'No'}}
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    {{letterAnswers.regulatoryBody}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    {{letterAnswers.registrationNumber}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    {{letterAnswers.isRequested ? 'Yes' : 'No'}}
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { Input, Component, OnInit } from '@angular/core';\r\nimport { LetterOfGoodStanding } from '../model/LetterOfGoodStanding';\r\nimport { RegApplication } from '../model/RegApplication';\r\n\r\n@Component({\r\n selector: 'app-letterstep-summary',\r\n templateUrl: './letterSummary.component.html',\r\n}) export class LetterSummaryComponent implements OnInit {\r\n\r\n @Input() application: RegApplication;\r\n letterAnswers: LetterOfGoodStanding;\r\n\r\n ngOnInit() {\r\n this.letterAnswers = this.application.activeForm.letterOfGoodStanding;\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n","import { Component, forwardRef, ElementRef, ViewChild, Renderer2 } from '@angular/core';\r\nimport { FormStepComponent } from '../../shared/formStepper/formStep.component';\r\nimport { creditCards, CreditCard } from '../../renewal/model/CreditCard';\r\nimport { RenewalService } from '../../core/service/renewal.service';\r\nimport { RegApplicationStep } from '../model/RegApplicationStep';\r\nimport { FormStepperService } from '../../shared/formStepper/formStepper.service';\r\nimport { PreregService } from '../../core/service/prereg.service';\r\n\r\n@Component({\r\n selector: 'app-payment-step',\r\n templateUrl: './paymentStep.component.html',\r\n styleUrls: ['./paymentStep.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => PaymentStepComponent)\r\n }\r\n ]\r\n}) export class PaymentStepComponent extends FormStepComponent {\r\n\r\n title = 'Payment';\r\n stepId = RegApplicationStep.Payment;\r\n fee;\r\n cartId;\r\n selectedCard: CreditCard;\r\n creditCards = creditCards;\r\n worldpayConfig;\r\n @ViewChild('worldpayForm', { static: false }) worldpayForm: ElementRef;\r\n constructor(private renewalService: RenewalService,\r\n private renderer: Renderer2, stepper: FormStepperService, private preg: PreregService) {\r\n super(stepper);\r\n }\r\n load() {\r\n this.fee = this.application.registrationFees.applicationFee;\r\n this.renewalService.getWordpayConfig().subscribe(config => {\r\n this.worldpayConfig = config;\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n const valid = !!this.selectedCard;\r\n if (!valid) {\r\n messages.push('You must select a card type to proceed to payment');\r\n }\r\n\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n beforeNext() {\r\n this.preg.saveApplicationPayment().subscribe((result) => {\r\n this.cartId = JSON.stringify(result.paymentIdentifier);\r\n setTimeout(() => {\r\n //this.renderer.setProperty(this.worldpayForm.nativeElement, 'value', 'submit');\r\n this.worldpayForm.nativeElement.submit();\r\n }, 100);\r\n });\r\n return false;\r\n }\r\n\r\n populateForm() { }\r\n\r\n}\r\n","\r\n

    \r\n Application fee\r\n \"Worldpay

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

    Fees to be paid

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

    \r\n Registration application fee: {{fee | currency: 'GBP': 'symbol' :'.2'}}\r\n

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

    \r\n This fee covers the processing of your application for registration as a pharmacist, and is non-refundable.\r\n

    \r\n

    \r\n If your application is successful, you will need to make a separate payment to cover your first year of registration. \r\n You will receive a notification via myGPhC to ask you to do this, once your application has been assessed and approved.\r\n

    \r\n

    \r\n If your application is unsuccessful, you can reapply for up to six months from the date you submitted it without paying\r\n another fee. If you want to reapply after six months, you will need to start a new application and pay the application fee\r\n again.\r\n

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

    Please select your card type

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

    \r\n We can only accept payments made in pounds sterling (GBP). Payments are processed using worldpay, for more information please\r\n review their\r\n privacy policy.\r\n

    \r\n

    \r\n When you make a card payment, you may be redirected to your card provider’s site to enter another password before they authorise\r\n your payment. You can find out more about 3-D Secure authentication from your card provider.\r\n

    \r\n
    \r\n\r\n \r\n \r\n \"{{card.name}}\r\n
    {{card.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
    ","import { OnInit, Component, forwardRef, ViewChild, AfterViewInit, Input, ViewChildren } from '@angular/core';\r\nimport { Applicant } from '../../account/model/Applicant';\r\nimport { FormStepComponent } from '../../shared/formStepper/formStep.component';\r\nimport { ContactEditComponent } from '../../account/contactEdit.component';\r\nimport { RegApplicationStep } from '../model/RegApplicationStep';\r\nimport { FormStepperService } from '../../shared/formStepper/formStepper.service';\r\nimport { Tooltip } from '../../core/tooltip/Tooltip';\r\nimport { AddressEditComponent } from '../../account/addressEdit.component';\r\nimport { inputValidator, UK } from '../../shared/user-address/userAddress';\r\n\r\n@Component({\r\n selector: 'app-personal-details-step',\r\n templateUrl: './personalDetailsStep.component.html',\r\n\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => PersonalDetailsStepComponent)\r\n }\r\n ]\r\n}) export class PersonalDetailsStepComponent extends FormStepComponent implements OnInit, AfterViewInit {\r\n\r\n showDetailsHelp = false;\r\n showContactHelp = false;\r\n applicant: Applicant;\r\n contactValid;\r\n hasAddress;\r\n hasTitle;\r\n hasNationality;\r\n selection;\r\n title = 'Personal details';\r\n @Input() stepId = RegApplicationStep.PersonalDetails;\r\n viewReady = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n\r\n @ViewChild('contact') contact: ContactEditComponent;\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n\r\n ngOnInit() {\r\n this.applicant = this.application.trainee;\r\n }\r\n\r\n load() {\r\n if (this.viewReady) {\r\n this.ready$.next(true);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.ready$.next(true);\r\n this.viewReady = true;\r\n });\r\n }\r\n\r\n update() {\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n validate() {\r\n this.hasTitle = !!this.applicant.title && !!this.applicant.title.name && !!this.applicant.title.name.trim().length;\r\n this.hasAddress = !!this.applicant.address &&\r\n !!this.applicant.address.line1 && !!this.applicant.address.line1.trim().length && inputValidator(this.applicant.address.line1) &&\r\n !!this.applicant.address.town && !!this.applicant.address.town.trim().length && inputValidator(this.applicant.address.town) &&\r\n !!this.applicant.address.country && !!this.applicant.address.country.trim().length;\r\n const messages = [];\r\n\r\n if(this.applicant?.address?.line2) {\r\n this.hasAddress = this.hasAddress && inputValidator(this.applicant.address.line2);\r\n }\r\n\r\n if(this.applicant?.address?.line3) {\r\n this.hasAddress = this.hasAddress && inputValidator(this.applicant.address.line3);\r\n }\r\n\r\n if(this.applicant?.address?.postcode) {\r\n this.hasAddress = this.hasAddress && inputValidator(this.applicant.address.postcode);\r\n }\r\n\r\n if(this.applicant?.address?.county) {\r\n this.hasAddress = this.hasAddress && inputValidator(this.applicant.address.county);\r\n }\r\n\r\n if(this.applicant.address && this.applicant.address.country && \r\n this.applicant.address.country === UK &&\r\n !this.applicant.address.homeNation) {\r\n this.hasAddress = this.hasAddress && !!this.applicant.address.homeNation;\r\n }\r\n\r\n if (!this.hasTitle) {\r\n messages.push('You haven\\'t entered a title');\r\n }\r\n\r\n if (this.contact) {\r\n this.contactValid = this.contact.valid;\r\n\r\n if (!this.contactValid) {\r\n messages.push('Please check that the UK mobile phone number you have entered is correct');\r\n }\r\n }\r\n\r\n this.applicant.equalityDiversity.nationality = parseInt((this.applicant.equalityDiversity.nationality), 10);\r\n this.hasNationality = !!this.applicant.equalityDiversity.nationality;\r\n if (!this.hasNationality) {\r\n messages.push('You haven\\'t selected your nationality');\r\n }\r\n\r\n if (!this.hasAddress) {\r\n if (!this.applicant.address) {\r\n messages.push('You haven\\'t provided your address');\r\n } else if(this.applicant.address.country === UK) {\r\n messages.push('Your address must have a line 1, town, country and residence details');\r\n } else {\r\n messages.push('Your address must have a line 1, town and country');\r\n }\r\n }\r\n const valid = this.hasTitle &&\r\n this.hasAddress &&\r\n this.contactValid &&\r\n this.hasNationality;\r\n\r\n this.validity$.next({\r\n valid,\r\n messages, touched: this.touched\r\n });\r\n }\r\n\r\n populateForm() { }\r\n\r\n}\r\n","\r\n
    \r\n

    \r\n
    \r\n Personal details\r\n
    \r\n \r\n

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

    \r\n Title\r\n

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

    \r\n Select a title from the dropdown. If your title is not in the list, you can type it in.\r\n

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

    \r\n DOB\r\n

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

    \r\n Your date of birth must match the one given on the documents you use as proof of your identity, so that we\r\n can verify your\r\n identity. If the date of birth shown here is incorrect,\r\n contact\r\n us.\r\n

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

    \r\n Qualification\r\n

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

    \r\n Your qualification must match the one given in your supporting documents so that we can verify that you\r\n meet the registration\r\n criteria. If the qualification shown is incorrect,\r\n contact\r\n us.\r\n

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

    \r\n
    \r\n Contact details\r\n
    \r\n \r\n

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

    Home address

    \r\n

    \r\n Please check that your home address is shown correctly. We will use this address for correspondence - only the\r\n town will\r\n be shown on the public register.\r\n

    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    ","import { Input, Component, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport { Applicant } from '../../account/model/Applicant';\r\nimport { RegApplicationStep } from '../model/RegApplicationStep';\r\nimport { RegApplication } from '../model/RegApplication';\r\n\r\n\r\n@Component({\r\n selector: 'app-reg-application-review',\r\n templateUrl: './regApplicationReview.component.html',\r\n styleUrls: ['./regApplicationReview.scss']\r\n}) export class RegApplicationReviewComponent implements OnInit {\r\n\r\n applicant: Applicant;\r\n @Input() application: RegApplication;\r\n @Input() readonly = false;\r\n @Input() formId;\r\n @Input() showEdi = true;\r\n @Input() showContactDetails = true;\r\n RegApplicationStep = RegApplicationStep;\r\n\r\n @Output() navigate = new EventEmitter();\r\n ngOnInit() {\r\n this.applicant = this.application.trainee;\r\n }\r\n goToStep(stepId) {\r\n this.navigate.emit(stepId);\r\n }\r\n}\r\n","
    \r\n
    \r\n

    \r\n
    Personal details
    \r\n \r\n \r\n

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

    \r\n
    Contact details
    \r\n \r\n \r\n

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

    \r\n
    Home address
    \r\n \r\n

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

    \r\n
    Training
    \r\n \r\n

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

    \r\n
    Assessment
    \r\n \r\n

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

    \r\n
    Letter of Good Standing
    \r\n \r\n

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

    \r\n
    Declaration of fitness to practise
    \r\n \r\n

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

    \r\n
    Overall declaration
    \r\n \r\n

    \r\n
    \r\n
    \r\n I have read and understand the overall declaration\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n

    \r\n
    Supporting documents
    \r\n \r\n

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

    \r\n
    Equality and diversity
    \r\n \r\n

    \r\n\r\n \r\n\r\n
    \r\n
    ","import { Input, Component, forwardRef, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport { Applicant } from '../../account/model/Applicant';\r\nimport { FormStepComponent } from '../../shared/formStepper/formStep.component';\r\nimport { RegApplicationStep } from '../model/RegApplicationStep';\r\nimport { FormStepperService } from '../../shared/formStepper/formStepper.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-review-step',\r\n templateUrl: './reviewStep.component.html',\r\n styleUrls: ['./reviewStep.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => ReviewStepComponent)\r\n }\r\n ]\r\n}) export class ReviewStepComponent extends FormStepComponent implements OnInit {\r\n title;\r\n @Input() stepId = RegApplicationStep.Review;\r\n applicant: Applicant;\r\n RegApplicationStep = RegApplicationStep;\r\n @Input() readonly = false;\r\n\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n @Output() navigate = new EventEmitter();\r\n\r\n ngOnInit() {\r\n this.applicant = this.application.trainee;\r\n this.title = this.readonly ? 'Final review' : 'Review';\r\n }\r\n\r\n validate() {\r\n this.validity$.next({ valid: true, messages: [], touched: this.touched});\r\n }\r\n\r\n goToStep(stepId) {\r\n this.navigate.emit(stepId);\r\n }\r\n\r\n populateForm() {}\r\n\r\n}\r\n","\r\n

    Review your application

    \r\n \r\n \r\n\r\n
    ","import { Component, forwardRef, OnInit } from '@angular/core';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\nimport { RegApplicationStep } from '../../model/RegApplicationStep';\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\nimport { Tooltip } from '../../../core/tooltip/Tooltip';\r\n\r\n@Component({\r\n selector: 'app-sitting-confirmation-step',\r\n templateUrl: './sittingConfirmationStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => SittingConfirmationComponent)\r\n }\r\n ]\r\n}) export class SittingConfirmationComponent extends FormStepComponent implements OnInit {\r\n\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n assessmentConfirmed;\r\n trainingConfirmed;\r\n title = 'Training';\r\n stepId = RegApplicationStep.TrainingConfirmation;\r\n showDetailsHelp = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n\r\n ngOnInit() {\r\n this.assessmentConfirmed = this.application.activeForm.isAssessmentConfirmed;\r\n this.trainingConfirmed = this.application.activeForm.isTrainingConfirmed;\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n const valid = this.assessmentConfirmed === true && this.trainingConfirmed === true;\r\n\r\n if (!valid) {\r\n messages.push(`Your training and assessment details must be confirmed as correct before you can continue with your application.`);\r\n }\r\n\r\n if (this.assessmentConfirmed !== this.application.activeForm.isAssessmentConfirmed ||\r\n this.trainingConfirmed !== this.application.activeForm.isTrainingConfirmed\r\n ) {\r\n this.makeDirty();\r\n }\r\n\r\n\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n populateForm() {\r\n this.application.activeForm.isAssessmentConfirmed = this.assessmentConfirmed;\r\n this.application.activeForm.isTrainingConfirmed = this.trainingConfirmed;\r\n }\r\n\r\n\r\n}\r\n","\r\n\r\n
    \r\n

    \r\n
    \r\n Confirm your training and assessment details\r\n
    \r\n \r\n

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

    \r\n The information about your training shown here is taken from your pre-registration application form and any approved changes\r\n to your training. Please confirm if these details are correct so that we can verify that you meet the criteria to\r\n be registered.\r\n

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

    Training

    \r\n

    Please confirm your training details are correct.

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

    Correct

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

    Incorrect

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

    \r\n \r\n Please contact us to discuss your training details\r\n \r\n before continuing with the application form.\r\n

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

    Assessment results

    \r\n

    Please confirm your assessment result details are correct.

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

    Correct

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

    Incorrect

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

    \r\n Please contact us to discuss your training details before\r\n continuing with the application form.\r\n

    \r\n
    \r\n
    \r\n
    ","import { Component, forwardRef } from '@angular/core';\r\nimport { FormStepComponent } from '../../shared/formStepper/formStep.component';\r\nimport { RegApplicationStep } from '../model/RegApplicationStep';\r\nimport { FormStepperService } from '../../shared/formStepper/formStepper.service';\r\nimport { PreregService } from '../../core/service/prereg.service';\r\nimport { Router } from '@angular/router';\r\nimport { LayoutService } from '../../core/service/layout.service';\r\nimport { ApplicationStatus } from '../model/ApplicationStatus';\r\n\r\n@Component({\r\n selector: 'app-submit-step',\r\n templateUrl: './submitStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => SubmitStepComponent)\r\n }\r\n ]\r\n}) export class SubmitStepComponent extends FormStepComponent {\r\n\r\n title = 'Submit';\r\n stepId = RegApplicationStep.Submit;\r\n serverErrors;\r\n submitting;\r\n\r\n constructor(service: FormStepperService, private preregService: PreregService, private router: Router, private layout: LayoutService) {\r\n super(service);\r\n }\r\n\r\n beforeNext() {\r\n this.submitting = true;\r\n this.layout.setOverlay(true);\r\n this.preregService.reSubmitApplication(this.application.activeForm.id).subscribe(() => {\r\n this.application.activeForm.formStatus = ApplicationStatus.Submitted;\r\n // invalidate cache\r\n delete this.preregService.application;\r\n this.layout.setOverlay(false);\r\n this.router.navigate(['/home']);\r\n }, error => {\r\n this.layout.setOverlay(false);\r\n this.serverErrors = error.validationErrors;\r\n this.submitting = false;\r\n });\r\n return false;\r\n }\r\n\r\n validate() {\r\n\r\n this.validity$.next({ valid: true, messages: [], touched: this.touched});\r\n }\r\n\r\n populateForm() {}\r\n\r\n\r\n}\r\n","\r\n

    Submit your application

    \r\n
    \r\n

    As you have already made a payment you can submit this application without paying again.

    \r\n

    Click the 'next' button if you are ready.

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

    \r\n {{ 'Server validation error: ' + error.errors.join(',') }}\r\n

    \r\n
    \r\n
    \r\n","import { Component, forwardRef, OnInit, Input } from '@angular/core';\r\nimport { FormStepComponent } from '../../shared/formStepper/formStep.component';\r\nimport { UploadType } from '../../shared/model/UploadType';\r\nimport { FileUpload } from '../../shared/model/FileUpload';\r\nimport { AttachmentType } from '../../shared/model/AttachmentType';\r\nimport utils from '../../shared/service/utils';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { RegApplicationStep } from '../../prereg/model/RegApplicationStep';\r\nimport { FormStepperService } from '../../shared/formStepper/formStepper.service';\r\nimport { Tooltip } from '../../core/tooltip/Tooltip';\r\nimport { SupportingDocumentsService } from '../../shared/supportingDocuments/supportingDocuments.service';\r\nimport { FinalTrainingReport } from '../model/FinalTrainingReport';\r\nimport { RegistrantStatus } from '../../registration/model/RegistrantStatus';\r\n\r\n@Component({\r\n selector: 'app-supporting-documents-step',\r\n templateUrl: './supportingDocumentsStep.component.html',\r\n styleUrls: ['./supportingDocumentsStep.scss'],\r\n providers: [\r\n SupportingDocumentsService,\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => SupportingDocumentsStepComponent)\r\n }\r\n ]\r\n})\r\nexport class SupportingDocumentsStepComponent extends FormStepComponent implements OnInit {\r\n\r\n constructor(private authService: AuthService, stepper: FormStepperService, private docService: SupportingDocumentsService) {\r\n super(stepper);\r\n }\r\n showDetailsHelp = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n title = 'Documents';\r\n stepId = RegApplicationStep.SupportingDocuments;\r\n hasProofOfId = false;\r\n hasQualification = false;\r\n attachments: { [key: number]: Array } = {};\r\n AttachmentType = AttachmentType;\r\n uploadType = UploadType.RegistrationFormSupportingDocuments;\r\n sessionId = utils.guid();\r\n requireQualificationCertificate = true;\r\n viewReady = false;\r\n registeredDocTypes = [];\r\n docTypes = 7;\r\n isAros = false;\r\n\r\n FinalTrainingReport = FinalTrainingReport;\r\n registrantStatus: RegistrantStatus;\r\n isFinalTrainingReportPass = false;\r\n\r\n\r\n populateForm() { }\r\n\r\n ngOnInit() {\r\n\r\n // this.requireQualificationCertificate = !this.authService.user.isSandwichStudent;\r\n // if (!this.requireQualificationCertificate) {\r\n // this.docTypes = 6;\r\n // }\r\n\r\n\r\n if (this.application.forms[0].attachments) {\r\n this.application.forms[0].attachments.forEach(attachment => {\r\n this.attachments[attachment.type] = this.attachments[attachment.type] || [];\r\n this.attachments[attachment.type].push(attachment);\r\n });\r\n }\r\n }\r\n get isTrainee() {\r\n return this.registrantStatus == RegistrantStatus.PreRegistrationTrainee;\r\n }\r\n\r\n removeFinalDeclarationDocsFromSupportingDocs(element) {\r\n return element.type === AttachmentType.FinalDeclarationForm;\r\n }\r\n load() {\r\n if (this.viewReady) {\r\n this.ready$.next(true);\r\n }\r\n }\r\n\r\n onRegistered(type: AttachmentType) {\r\n this.registeredDocTypes.push(type);\r\n if (this.registeredDocTypes.length === this.docTypes) {\r\n setTimeout(() => {\r\n this.viewReady = true;\r\n this.ready$.next(true);\r\n });\r\n }\r\n }\r\n\r\n validate() {\r\n const messages = this.docService.validate();\r\n this.validity$.next({ valid: !messages.length, messages, touched: this.touched });\r\n }\r\n\r\n onUploaded($event) {\r\n this.attachments[$event.type] = $event.uploads;\r\n $event.uploads.forEach(upload => upload.type = $event.type);\r\n this.updateApplication();\r\n }\r\n\r\n updateApplication() {\r\n let attachments = [];\r\n for (const type in this.attachments) {\r\n attachments = attachments.concat(this.attachments[type]);\r\n }\r\n this.application.activeForm.attachments = attachments;\r\n this.validate();\r\n this.makeDirty();\r\n }\r\n\r\n}\r\n","\r\n
    \r\n

    \r\n
    \r\n Supporting documents\r\n
    \r\n \r\n

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

    \r\n Please upload scanned copies of the documents we need to verify the information you have given us as part of\r\n your application\r\n to register as pharmacist. Click on the ‘I’ icon next to each section to find out more about the documents you\r\n need to provide.\r\n \r\n Read the application guidance on providing correctly certified documents\r\n to check how to get copies of your original\r\n documents certified correctly.\r\n

    \r\n

    \r\n Important: the files you upload here must be scanned versions of the certified copies of your\r\n documents. Make sure your scanned versions\r\n are clear and the text is readable. You must post hard copies of the documents you have scanned to us, with an\r\n application\r\n cover sheet.\r\n

    \r\n

    \r\n We will never ask you for the original versions of your identity and qualification documents and you should\r\n not send these\r\n to us.\r\n

    \r\n

    You will also need to complete\r\n and upload a statutory declaration form if:

    \r\n
      \r\n
    • If your birth certificate is not written in English or the registration date on your birth certificate is\r\n not within one\r\n year of your birth
    • \r\n
    • your name is written differently on any of your supporting documents
    • \r\n
    • you want to register using a different version of your name than the one on your birth certificate
    • \r\n
    \r\n

    \r\n \r\n See the application guidance for more information about completing a statutory declaration form.\r\n \r\n

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

    \r\n Upload a scanned version of your foundation\r\n training final declaration which\r\n has been signed off by your designated supervisor.\r\n

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

    \r\n Upload a scanned version of your certified copy of your proof of identity document(s)\r\n

    \r\n

    \r\n Important: All documents you submit as proofs of your identity must be correctly certified copies of\r\n original documents\r\n which are valid on the date you submit your application.\r\n

    \r\n

    \r\n What documents can be used as proof of identity ?\r\n

    \r\n

    \r\n As proof of identity, you can submit a correctly certified copy of either:\r\n

    \r\n
      \r\n
    • \r\n a page of your current valid passport page showing your photo and the expiry date\r\n
    • \r\n
    • \r\n or, if you do not have a current valid\r\n passport, you can submit a correctly certified copy of:\r\n
    • \r\n
    • your valid full or provisional photocard driving licence together with a correctly certified copy of your:\r\n
    • \r\n
    • UK national Insurance card
    • \r\n
    • NHS card
    • \r\n
    • photo identity card from an non-UK EEA country
    • \r\n
    \r\n\r\n

    \r\n Your name should be written exactly the same on all the documents you submit as proof of identity. If\r\n any letter or word\r\n in your name is written differently on any of them, you must complete a statutory declaration form – see the application\r\n guidance for more information.\r\n

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

    \r\n Upload a scan of your birth certificate. If you were born in England, Wales and Scotland, please upload your birth certificate \r\n issued by the General Registry Office, or the General Registers Office for Scotland.\r\n

    \r\n

    \r\n If you were NOT born in England, Wales or Scotland you must submit a certified copy of your birth certificate. Any document that is not written in English must be accompanied by a translation.\r\n

    \r\n\r\n

    \r\n If you are not able to provide a birth certificate you can submit Statutory Declaration A, which needs to be completed with a solicitor. \r\n

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

    \r\n Upload a scanned version of your MPharm or OSPAP qualification certificate.\r\n The name on the certificate must match the one on your identification document. If it does not, see the\r\n application guidance and complete a\r\n statutory declaration form.\r\n

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

    \r\n Upload a recent photograph of yourself and a completed photo certification form that has been countersigned by one of the people\r\n who is listed as an acceptable counter signatory by the Home Office passport service. This should be someone who has known you for\r\n at least two years and is resident in the UK.\r\n

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

    \r\n If you need to submit any other documents such as a statutory declaration form or proof of change of name,\r\n upload them here.\r\n

    \r\n
    \r\n
    \r\n\r\n \r\n\r\n\r\n
    \r\n","import { Component, forwardRef, OnInit } from '@angular/core';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\nimport { RegApplicationStep } from '../../model/RegApplicationStep';\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\nimport { Tooltip } from '../../../core/tooltip/Tooltip';\r\nimport { ArosApplicationStep } from '../../assessment-report/models/ArosApplicationStep';\r\n\r\n@Component({\r\n selector: 'app-confirm-training-step',\r\n templateUrl: './confirmTrainingStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => ConfirmTrainingStepComponent)\r\n }\r\n ]\r\n}) export class ConfirmTrainingStepComponent extends FormStepComponent implements OnInit {\r\n\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n assessmentConfirmed;\r\n trainingConfirmed;\r\n title = 'Training';\r\n stepId = RegApplicationStep.TrainingConfirmation;\r\n showDetailsHelp = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n\r\n ngOnInit() {\r\n this.assessmentConfirmed = this.application.activeForm.isAssessmentConfirmed;\r\n this.trainingConfirmed = this.application.activeForm.isTrainingConfirmed;\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n const valid = this.assessmentConfirmed === true && this.trainingConfirmed === true;\r\n\r\n if (!valid) {\r\n messages.push(`Your training and assessment details must be confirmed as correct before you can continue with your application.`);\r\n }\r\n\r\n if (this.assessmentConfirmed !== this.application.activeForm.isAssessmentConfirmed ||\r\n this.trainingConfirmed !== this.application.activeForm.isTrainingConfirmed\r\n ) {\r\n this.makeDirty();\r\n }\r\n\r\n\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n populateForm() {\r\n this.application.activeForm.isAssessmentConfirmed = this.assessmentConfirmed;\r\n this.application.activeForm.isTrainingConfirmed = this.trainingConfirmed;\r\n }\r\n\r\n\r\n}\r\n","\r\n\r\n
    \r\n

    \r\n
    \r\n Confirm your training and assessment details\r\n
    \r\n \r\n

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

    \r\n The information about your training shown here is taken from your foundation application form and any\r\n approved changes\r\n to your training. Please confirm if these details are correct so that we can verify that you meet the criteria\r\n to\r\n be registered.\r\n

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

    Training

    \r\n

    Please confirm your training details are correct.

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

    Correct

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

    Incorrect

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

    \r\n \r\n Please contact us to discuss your training details\r\n \r\n before continuing with the application form.\r\n

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

    Assessment results

    \r\n

    Please confirm your assessment result details are correct.

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

    Correct

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

    Incorrect

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

    \r\n Please contact us to discuss your training details\r\n before\r\n continuing with the application form.\r\n

    \r\n
    \r\n
    \r\n
    ","
    0; else noAssessmentResults \">\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n You do not currently have any assessment results recorded.\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { RegApplication } from '../../model/RegApplication';\r\nimport { TraineeAssessment } from '../../model/TraineeAssessment';\r\n\r\n@Component({\r\n selector: 'app-trainee-assessment',\r\n templateUrl: './traineeAssessment.component.html'\r\n})\r\nexport class TraineeAssessmentComponent implements OnInit {\r\n\r\n @Input() application: RegApplication;\r\n\r\n ngOnInit() {\r\n if (this.application.assessment.assessments) {\r\n this.application.assessment.assessments.sort((a, b) => {\r\n return parseInt(a.session, 10) - parseInt(b.session, 10);\r\n });\r\n }\r\n }\r\n\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { RegApplication } from '../../model/RegApplication';\r\nimport { TraineeReportType } from '../../model/TraineeReportType';\r\nimport { Address } from '../../../account/model/Address';\r\nimport { TrainingPlacement } from '../../model/TrainingPlacement';\r\n\r\n@Component({\r\n selector: 'app-trainee-placement',\r\n templateUrl: './traineePlacement.component.html'\r\n})\r\nexport class TraineePlacementComponent implements OnInit{\r\n itemAddresses: string[];\r\n TraineeReportType = TraineeReportType;\r\n @Input() application: RegApplication;\r\n\r\n ngOnInit() {\r\n this.itemAddresses = this.application.training.trainedAt.map((training: TrainingPlacement) => {\r\n return new Address(training.address).toString('
    ');\r\n });\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n \r\n
    \r\n {{item.trainingSite}}\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \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 { Router } from '@angular/router';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { Registrant } from './model/Registrant';\r\nimport { RegistrantStatus } from './model/RegistrantStatus';\r\nimport { RegistrantType } from './model/RegistrantType';\r\nimport { IndependentPrescriberApplication } from './independent-precriber/model/IndependentPrescriberApplication';\r\nimport { User } from '../account/model/User';\r\nimport { ApplicationStatus } from '../prereg/model/ApplicationStatus';\r\nimport { RegistrationService } from '../core/service/registration.service';\r\nimport { ApplicationDetails } from './model/ApplicationDetails';\r\n\r\n@Component({\r\n selector: 'app-applications-dashboard',\r\n moduleId: module.id,\r\n templateUrl: './applicationsDashboard.component.html',\r\n styleUrls: ['../style/dashboard.scss']\r\n})\r\nexport class ApplicationsDashboardComponent implements OnInit {\r\n\r\n user: User;\r\n registrant: Registrant;\r\n name: string;\r\n RegistrantStatus = RegistrantStatus;\r\n RegistrantType = RegistrantType;\r\n independentPrescriberApplication: IndependentPrescriberApplication;\r\n ApplicationStatus = ApplicationStatus;\r\n loadingIPApplication = true;\r\n loadingVRapplication = true;\r\n loadingApplications = true;\r\n error = false;\r\n applicationClosed;\r\n returnToRegisterApplication;\r\n ccpsRegulatoryBodiesSelected = [];\r\n\r\n applications: Array<{ header: string, status: ApplicationStatus, link: string, loading: boolean, regulatoryBodyName?: string, isCCPSApplication: boolean }> = [];\r\n\r\n constructor(private _router: Router, private auth: AuthService, \r\n private registrationService: RegistrationService ) { }\r\n\r\n ngOnInit() {\r\n this.user = this.auth.user;\r\n this.loadApplications();\r\n }\r\n\r\n loadApplications() {\r\n if(this.user.registrant) {\r\n this.registrationService.getAvailableForms().subscribe((details: ApplicationDetails) => {\r\n if(!details) return;\r\n if( details.isVRAppAvailable ) {\r\n this.applications.push({\r\n header: 'Voluntary removal of your register entry',\r\n status: details.voluntaryRemovalFormStatus ? details.voluntaryRemovalFormStatus : ApplicationStatus.NotStarted,\r\n link: '/voluntaryRemoval/application',\r\n loading: false,\r\n isCCPSApplication: false\r\n });\r\n }\r\n\r\n if( details.isIndyPrescAppAvailable ) {\r\n this.applications.push({\r\n header: 'Independent prescriber application',\r\n status: details.indyPrescriberFormStatus ? details.indyPrescriberFormStatus : ApplicationStatus.NotStarted,\r\n link: '/independentPrescriber/application',\r\n loading: false,\r\n isCCPSApplication: false\r\n });\r\n }\r\n\r\n if( details.isCPSCAppAvailable ) {\r\n this.applications.push({\r\n header: 'Certificate of current professional status & fitness to practice history',\r\n status: ApplicationStatus.NotStarted,\r\n link: '/ccps/application',\r\n loading: false,\r\n isCCPSApplication: true\r\n });\r\n // formId of a new application will be known only after making a ccps post call.\r\n localStorage.setItem('ccpsFormActive',JSON.stringify('noFormIdYet'));\r\n }\r\n\r\n details.cpscFormsDetails?.forEach( (form, index) => {\r\n\r\n this.applications.push({\r\n header: 'Certificate of current professional status & fitness to practice history',\r\n status: form?.formStatus ? form.formStatus : ApplicationStatus.NotStarted,\r\n link: (details.isCPSCAppAvailable && form.formStatus === ApplicationStatus.NotStarted) ? '/ccps/application': '/ccps/application/'+form.formId,\r\n loading: false,\r\n regulatoryBodyName: form.regulatoryBodyName,\r\n isCCPSApplication: true\r\n });\r\n\r\n this.ccpsRegulatoryBodiesSelected.push({\r\n formId: form.formId,\r\n regulatoryBodyId: form.regulatoryBodyId\r\n });\r\n });\r\n\r\n localStorage.setItem('ccpsFormDetails', JSON.stringify(this.ccpsRegulatoryBodiesSelected));\r\n\r\n this.loadingApplications = false;\r\n }, error => {\r\n this.loadingApplications = false;\r\n });\r\n ;\r\n }\r\n }\r\n}\r\n","\r\n
    \r\n

    Applications

    \r\n

    \r\n Access your applications\r\n

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

    \r\n No application available at the moment.\r\n

    \r\n
    \r\n
    \r\n \r\n {{application.header}}\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n {{ ApplicationStatus[application.status] | caseSplit:application.isCCPSApplication }}\r\n
    \r\n
    \r\n

    {{ application.regulatoryBodyName }}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, OnInit, Input, ViewChild, QueryList, ViewChildren } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { CountersignatureOutcome } from '../../prereg/model/CountersignatureOutcome';\r\nimport { AssessmentReport } from '../../prereg/assessment-report/models/AssessmentReport';\r\nimport { AssessmentReportService } from '../../core/service/assessmentReport.service';\r\nimport { Address } from '../../account/model/Address';\r\nimport { TrainingPlacement } from '../../prereg/model/TrainingPlacement';\r\nimport { User } from '../../account/model/User';\r\nimport { NgForm } from '@angular/forms';\r\nimport { Tooltip } from './../../core/tooltip/Tooltip';\r\nimport { AssessmentTutorDetails } from '../../prereg/assessment-report/models/AssessmentTutors';\r\nimport { ValidationError } from '../../core/model/ValidationError';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n selector: 'app-assessment-countersign-response',\r\n templateUrl: './assessmentCountersignResponse.component.html',\r\n styleUrls: ['../countersign.scss']\r\n})\r\nexport class AssessmentCountersignResponseComponent implements OnInit {\r\n\r\n @ViewChild('form') countersignForm: NgForm;\r\n @ViewChildren('formInput') allInputs: QueryList;\r\n @Input() application: AssessmentReport;\r\n id: string;\r\n date: string;\r\n name: string;\r\n loading = false;\r\n CountersignatureOutcome = CountersignatureOutcome;\r\n response;\r\n responseReason;\r\n certified;\r\n certifiedIdentity;\r\n role: number;\r\n submitting = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n }\r\n showDetailsHelp = false;\r\n comments = '';\r\n otherComment = '';\r\n otherLeaveComment = '';\r\n validationErrors: any;\r\n certifiedPhotoValidationFailed: boolean = false;\r\n certifiedPhotoIdentityValidationFailed: boolean = false;\r\n\r\n trainingSiteAdress: Array;\r\n user: User;\r\n weeksSinceTrainingStart: number;\r\n validInputs: boolean;\r\n @Input() trainingSites: TrainingPlacement[];\r\n @Input() tutors: AssessmentTutorDetails[];\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private auth: AuthService,\r\n private assessmentReportService: AssessmentReportService\r\n ) {\r\n this.id = this.route.snapshot.params['id'];\r\n this.date = this.route.snapshot.params['date'];\r\n this.role = +this.route.snapshot.params['role'];\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n this.user = this.auth.user;\r\n this.formatAddress();\r\n\r\n }\r\n\r\n public formatName(trainee): string {\r\n return `${trainee.title.name} ${trainee.forenames} ${trainee.middleName ? trainee.middleName : ''} ${trainee.surname}`\r\n }\r\n\r\n formatAddress(): void {\r\n this.trainingSiteAdress = this.application.training.trainedAt.map((training: TrainingPlacement) => {\r\n return new Address(training.address).toString('
    ');\r\n });\r\n }\r\n\r\n print(): void {\r\n (window).print();\r\n }\r\n\r\n exit(): void {\r\n this.router.navigate(['/registration']);\r\n }\r\n\r\n focusOnInvalidInputs(): void {\r\n this\r\n .allInputs\r\n .filter(input => input.nativeElement.className.includes('ng-invalid'))\r\n .forEach(input => input.nativeElement.focus());\r\n }\r\n\r\n submitOutcome(formValue): void {\r\n this.submitting = true;\r\n const outcome = {\r\n id: this.id,\r\n decision: this.response,\r\n feedback: this.responseReason,\r\n countersignerComment: formValue\r\n };\r\n const submitOutcome = (anoutcome = outcome): void => {\r\n this.submitting = false;\r\n this.validInputs = true;\r\n this.assessmentReportService.submitCountersignatureOutcome(anoutcome).subscribe(() => {\r\n this.submitting = true;\r\n this.exit();\r\n }, () => {\r\n this.submitting = false;\r\n this.validInputs = false;\r\n });\r\n };\r\n\r\n if (this.response === CountersignatureOutcome.Refused) {\r\n this.validInputs = true;\r\n outcome['countersignerComment'] = '';\r\n submitOutcome(outcome);\r\n }\r\n\r\n if (this.response === CountersignatureOutcome.Approved ||\r\n this.response === CountersignatureOutcome.Rejected\r\n ) {\r\n (this.countersignForm.invalid) ? this.focusOnInvalidInputs() : submitOutcome();\r\n }\r\n }\r\n\r\n}","
    \r\n
    \r\n

    \r\n You have received this request from your foundation trainee as they have reached the 39 week stage of\r\n foundation training.\r\n By indicating Satisfactory below you are confirming that you have completed the 39 week appraisal and that the\r\n trainee has demonstrated the required level you would expect for a trainee\r\n at this stage in the foundation year.\r\n This will then allow them to proceed with their assessment entry application. For more information on your role as\r\n a foundation designated supervisor please see\r\n our website.\r\n

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

    Your details

    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n {{ user.toString()}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n

    Trainee details

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n {{ formatName(application.trainee)}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n {{site.trainingSite}}\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n

    Comments

    \r\n\r\n\r\n
    \r\n\r\n\r\n
    \r\n\r\n \r\n Yes\r\n \r\n No\r\n \r\n \r\n\r\n \r\n
    \r\n

    \r\n Please select an option\r\n

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

    \r\n \r\n

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

    1000 \">\r\n You can only enter a maximum of 1000 characters in this field\r\n

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

    \r\n Trainees have a 40 day limit on the number of days leave they can take throughout the foundation\r\n year.\r\n

    \r\n
      \r\n
    • \r\n The 40-day limit includes public holidays, sickness and annual leave. For part-time training\r\n arrangements,\r\n the 40 days\r\n applies to the whole training period.\r\n
    • \r\n
    • \r\n If they are absent for more than 40 days, they will need to complete additional training to be\r\n eligible\r\n to\r\n sit the\r\n registration assessment. They must have completed at least 39 weeks of training by the application\r\n entry\r\n deadline for\r\n the sitting.\r\n
    • \r\n
    • \r\n If they are absent for more than 40 days before the 39-week progress review, you should delay the\r\n review\r\n until they have\r\n worked the additional days that have been missed to have completed the equivalent of 39 weeks\r\n training.\r\n
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n = 48 \" [required]=\"response !== CountersignatureOutcome.Refused\" ngModel\r\n #annual=\"ngModel\" />\r\n
    \r\n\r\n \r\n
    \r\n

    \r\n Please enter a value, if no days have been taken, please enter ’0'\r\n

    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n \r\n = 48 \" [required]=\"response !== CountersignatureOutcome.Refused\" ngModel\r\n #sick=\"ngModel\" />\r\n
    \r\n \r\n
    \r\n

    \r\n Please enter a value, if no days have been taken, please enter ’0'\r\n

    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n = 48 \" [required]=\"response !== CountersignatureOutcome.Refused\"\r\n #formInput ngModel #otherAbsents=\"ngModel\" />\r\n\r\n
    \r\n \r\n
    \r\n

    \r\n Please enter a value, if no days have been taken, please enter ’0'\r\n

    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n 0\">\r\n
    \r\n \r\n \r\n

    500 \">\r\n You can only enter a maximum of 500 characters in this field\r\n

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

    \r\n Please enter a reason\r\n

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

    500\">\r\n You can only enter a maximum of 500 characters in this field\r\n

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

    Rate your trainees overall performance at 39 weeks of training

    \r\n
    \r\n The information you have provided will be visible to the trainee and may be used by the GPhC for any future\r\n applications they make\r\n
    \r\n \r\n \r\n Satisfactory\r\n \r\n \r\n Unsatisfactory\r\n \r\n The progress report has been\r\n sent to me in error\r\n \r\n\r\n \r\n

    \r\n I confirm that I have discussed this outcome with the named trainee.\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, ViewChild, ViewChildren, QueryList, ChangeDetectorRef } from '@angular/core';\r\nimport { FormStepSummary } from '../../shared/formStepper/FormStepSummary';\r\nimport { User } from '../../account/model/User';\r\nimport { FormStepperComponent } from '../../shared/formStepper/formStepper.component';\r\nimport { FormStepperService } from '../../shared/formStepper/formStepper.service';\r\nimport { LayoutService } from '../../core/service/layout.service';\r\nimport { CCPSService } from '../../core/service/ccps.service';\r\nimport { CCPSApplication } from './model/ccpsApplication';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { FormStepComponent } from '../../../app/shared/formStepper/formStep.component';\r\nimport { ApplicationStatus } from '../../../app/prereg/model/ApplicationStatus';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { RegistrantStatus } from '../../../app/registration/model/RegistrantStatus';\r\n@Component({\r\n selector: 'app-ccps',\r\n templateUrl: './ccps.component.html',\r\n styleUrls: ['../../prereg/application-form.scss'],\r\n providers: [FormStepperService]\r\n})\r\nexport class CcpsComponent implements OnInit {\r\n\r\n @ViewChildren(FormStepperComponent) formStepperComponents: QueryList;\r\n loading = false;\r\n loadingError = false;\r\n isApplicationOpen = true;\r\n ready = true;\r\n saving = false;\r\n showGuidanceWarning = false;\r\n user: User;\r\n formId: number;\r\n onLoad = true;\r\n get readonly() {\r\n return (this.application && (\r\n this.application.activeForm.formStatus === ApplicationStatus.Submitted ||\r\n this.application.activeForm.formStatus === ApplicationStatus.Approved ||\r\n this.application.activeForm.formStatus === ApplicationStatus.WaitingForApplicant ||\r\n this.application.activeForm.formStatus === ApplicationStatus.PendingProcessing\r\n ));\r\n }\r\n maxStep;\r\n minStep;\r\n\r\n allSteps: FormStepComponent[];\r\n allStepSummary: any;\r\n stepsWithoutFtP;\r\n menuWithoutFtP;\r\n initialSteps;\r\n displayFtPStep = true;\r\n\r\n application: CCPSApplication;\r\n @ViewChild(FormStepperComponent) formStepper;\r\n\r\n constructor(public formStepperService: FormStepperService,\r\n public layout: LayoutService, public ccpsService: CCPSService, private auth: AuthService,\r\n private dialog: MatDialog, private route: ActivatedRoute, private router: Router, private cd: ChangeDetectorRef) { }\r\n\r\n ngAfterViewInit(): void {\r\n this.formStepperComponents.changes.subscribe((comps: QueryList) => {\r\n this.formStepper = comps.first;\r\n this.cloneSteps();\r\n this.cloneSummary();\r\n this.showHideFtPStep();\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.formId = this.route.snapshot.params['id'];\r\n if (this.formId) localStorage.setItem('ccpsFormActive', JSON.stringify(this.formId));\r\n else {\r\n let formId = localStorage.getItem('ccpsFormActive');\r\n if (!formId) {\r\n this.router.navigate(['application']);\r\n }\r\n if (JSON.parse(formId) !== 'noFormIdYet') this.formId = JSON.parse(formId);\r\n }\r\n this.load();\r\n }\r\n\r\n load() {\r\n this.user = this.auth.user;\r\n this.loading = true;\r\n this.loadingError = false;\r\n this.ccpsService.getApplication(this.auth.user.registrationStatus, this.formId).subscribe((app : CCPSApplication) => {\r\n this.application = app;\r\n\r\n if (this.application.activeForm.step) {\r\n this.maxStep = this.application.activeForm.step;\r\n }\r\n if (this.application.activeForm.minStep) {\r\n this.minStep = this.application.activeForm.minStep;\r\n }\r\n\r\n this.loading = false;\r\n this.ready = true;\r\n }, error => {\r\n this.loading = false;\r\n this.loadingError = true;\r\n });\r\n }\r\n\r\n get isRegisteredSuspended() {\r\n return (this.application.personalDetails?.registration?.registrationStatus === RegistrantStatus.Registered || this.application.personalDetails?.registration?.registrationStatus === RegistrantStatus.Suspended);\r\n }\r\n\r\n goToStep(step: FormStepSummary) {\r\n if (step.disabled) { return; }\r\n this.formStepper.goToStep(step.stepId);\r\n }\r\n\r\n save() {\r\n this.saving = true;\r\n\r\n if (this.application.activeForm.formStatus === ApplicationStatus.NotStarted) {\r\n this.application.activeForm.formStatus = ApplicationStatus.InProgress;\r\n }\r\n\r\n this.application.activeForm.step = this.formStepperService.getFurthestStep();\r\n this.formStepper.currentStep.populateForm();\r\n return new Promise((resolve, reject) => {\r\n const start = performance.now();\r\n const minExecution = 300;\r\n function respond(cb) {\r\n const end = performance.now();\r\n const duration = end - start;\r\n if (duration < minExecution) {\r\n setTimeout(() => {\r\n cb();\r\n }, Math.round(minExecution - duration));\r\n } else {\r\n cb();\r\n }\r\n }\r\n this.ccpsService.saveApplication(this.application).subscribe(() => {\r\n respond(() => {\r\n this.saving = false;\r\n resolve();\r\n });\r\n }, error => {\r\n respond(() => {\r\n this.saving = false;\r\n reject(error);\r\n });\r\n });\r\n });\r\n }\r\n\r\n\r\n goToStepId(stepId) {\r\n this.formStepper.goToStep(stepId);\r\n }\r\n\r\n\r\n stepChanged(stepId) {\r\n this.ccpsService.setStep(this.application.activeForm.id, stepId).subscribe();\r\n this.application.activeForm.step = stepId;\r\n }\r\n\r\n\r\n\r\n cloneSteps(): void {\r\n this.allSteps = this.formStepper?.steps.slice();\r\n }\r\n\r\n cloneSummary(): void {\r\n this.allStepSummary = this.formStepperService.summary?.slice();\r\n }\r\n\r\n showHideFtPStep() {\r\n\r\n if(this.formStepper) {\r\n if(!this.stepsWithoutFtP && !this.menuWithoutFtP) {\r\n this.stepsWithoutFtP = this.formStepper.steps.filter(step => !step.title.includes('Fitness to practise declarations'));\r\n this.menuWithoutFtP = this.formStepperService.summary.filter(step => !step.title.includes('Fitness to practise declarations'));\r\n }\r\n \r\n this.displayFtPStep = this.isRegisteredSuspended;\r\n\r\n if (this.displayFtPStep) {\r\n this.formStepper.steps = this.allSteps;\r\n this.formStepperService.summary = this.allStepSummary;\r\n } else {\r\n this.formStepper.steps = this.stepsWithoutFtP;\r\n this.formStepperService.summary = this.menuWithoutFtP;\r\n }\r\n this.updateStepId(); \r\n this.cd.detectChanges();\r\n }\r\n }\r\n\r\n updateStepId(): void {\r\n if(this.formStepper) {\r\n if(this.formStepperService.updateStepsId(this.initialSteps, this.formStepper.steps)) {\r\n this.initialSteps = this.formStepper.steps;\r\n if(this.onLoad) {\r\n this.formStepper.currentStep = this.formStepper.steps.find( s => s.stepId === this.maxStep);\r\n this.formStepperService.setCurrentStep(this.maxStep);\r\n this.formStepperService.summary.forEach( item => {\r\n item.current = item.title === this.formStepper.currentStep.title ? true: false; \r\n item.validity = { valid: item.stepId < this.maxStep ? true : undefined, messages: [], touched: false };\r\n });\r\n this.formStepper.currentStep.load(); \r\n this.formStepper.currentStep.validate(); \r\n this.onLoad = false;\r\n }\r\n }\r\n }\r\n }\r\n \r\n stepChange(): () => Promise {\r\n return function () {\r\n return new Promise((resolve, reject) => {\r\n if (this.formStepper.currentStep.dirty || this.formStepper.currentStep.stepId) {\r\n\r\n this.formStepper.serverErrors = [];\r\n return this.save().then(() => {\r\n\r\n resolve();\r\n }, error => {\r\n this.formStepper.serverErrors = error.validationErrors;\r\n reject(error);\r\n });\r\n } else {\r\n resolve();\r\n }\r\n });\r\n }.bind(this);\r\n }\r\n}\r\n","
    \r\n
    \r\n\r\n \r\n
    \r\n\r\n
    \r\n

    Certificate of current professional status and fitness to practise history request

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

    Before you begin your application for registration,\r\n read the guidance on providing correctly certified supporting documents [hyperlink to policy website]

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

    \r\n An error occurred while attempting to load your application\r\n

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

    This application has been marked as ineligible.

    \r\n
    \r\n

    You can either re-submit this application as it is, or re-open this one for editing if you need to make\r\n changes.

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

    You can re-open this application if you would like to submit again.

    \r\n \r\n
    \r\n\r\n
    \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n \r\n \r\n\r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n\r\n
    \r\n \r\n Certificate of current professional status & fitness to practice history\r\n \r\n
    \r\n \r\n
    \r\n

    \r\n {{ applicationClosedMessage }}\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    ","import { QualificationType } from \"../../../../app/technician/model/QualificationType\";\r\nimport { ApplicationStatus } from \"../../../prereg/model/ApplicationStatus\";\r\nimport { AnnotationType } from \"../../model/AnnotationType\";\r\nimport { RegistrantType } from \"../../model/RegistrantType\";\r\nimport { CourseType } from \"../../../../app/technician/model/CourseType\";\r\nimport { LegacyRegistrationRoute, trainingSites } from \"./initialPharmacyQualificationDetail\";\r\nimport { RegistrantStatus } from \"../../model/RegistrantStatus\";\r\n\r\nexport interface RegistrationDetails {\r\n registrationNumber: number;\r\n registrationStatus: RegistrantStatus;\r\n independentPrescriberStatus: AnnotationType;\r\n voluntaryRemovalReason: string;\r\n registrationRoute: RegistrationRoute;\r\n contactType: RegistrantType;\r\n isRequiredEnglishCertificate: EnglishQualificationType;\r\n isRequiredRevalidationSubmission: boolean;\r\n eeaDirectiveRoute: string;\r\n legacyRegistrationRoute: LegacyRegistrationRoute;\r\n}\r\nexport interface RegistrantPersonalDetails {\r\n title: Title;\r\n forenames: string;\r\n surname: string;\r\n middleName: string;\r\n dateOfBirth: Date;\r\n address: Address;\r\n contact: ContactDetails;\r\n registration: RegistrationDetails;\r\n assessmentName: string;\r\n otherRegulators: string;\r\n}\r\n\r\nexport enum EnglishQualificationType {\r\n IELTS = 1,\r\n OET,\r\n EmployerReference,\r\n}\r\n\r\nexport enum RegistrationRoute {\r\n UK = 717750000,\r\n UKPlusOverseas = 717750001,\r\n OSPAP = 717750002,\r\n EEA = 717750003,\r\n NorthernIreland = 717750004,\r\n Legacy = 717750005,\r\n}\r\n\r\nexport interface Address {\r\n line1: string;\r\n line2: string;\r\n line3: string;\r\n town: string;\r\n county: string;\r\n postcode: string;\r\n country: string;\r\n homeNation: number;\r\n latitude: string;\r\n longitude: string;\r\n countryCode: string;\r\n}\r\n\r\nexport interface ContactDetails {\r\n email: string;\r\n telephone1: string;\r\n mobilePhone: string;\r\n}\r\n\r\nexport interface Qualification {\r\n id?: string;\r\n courseName: string;\r\n courseType: CourseType;\r\n country: string;\r\n dateAwarded?: Date;\r\n qualificationType?: QualificationType;\r\n}\r\n\r\nexport interface Title {\r\n name: string;\r\n id: number;\r\n}\r\n","import { Applicant } from \"../../../account/model/Applicant\";\r\nimport { ApplicationStatus } from \"../../../prereg/model/ApplicationStatus\";\r\nimport { Application } from \"../../../prereg/model/Application\";\r\nimport { RegistrantStatus } from \"../../model/RegistrantStatus\";\r\nimport { CCPSForm } from \"./ccpsForm\";\r\nimport { RegulatoryBodies } from \"./regulatoryBodies\";\r\nimport { RegistrantPersonalDetails } from \"./CCPSDetails\";\r\nimport { LegacyRegistrationRoute } from \"./initialPharmacyQualificationDetail\";\r\n\r\nexport class CCPSApplication implements Application {\r\n trainee: Applicant;\r\n status: ApplicationStatus;\r\n form: CCPSForm;\r\n pastApplications : CCPSForm[];\r\n activeForm: CCPSForm;\r\n forms:CCPSForm[];\r\n countries;\r\n regulatoryBodies:RegulatoryBodies[];\r\n personalDetails: RegistrantPersonalDetails;\r\n certProfessionalStandingApplicationFee: number;\r\n LegacyRegistrationRoute: string;\r\n\r\n constructor(data, registrantStatus: RegistrantStatus) {\r\n Object.assign(this, data);\r\n this.activeForm = new CCPSForm(this.form, registrantStatus);\r\n }\r\n}\r\n","export enum CCPSApplicationStep {\r\n Guidance = 1,\r\n PersonalDetails,\r\n OverseasRegularDetails,\r\n InitialPharmacyQualificationDetails,\r\n FtPDeclarations,\r\n CCPSDeclarations,\r\n EDIDetails,\r\n Review,\r\n Payment\r\n}\r\n ","import { EqualityDiversity } from \"../../../../app/account/model/EqualityDiversity\";\r\nimport { FormAnswer } from \"../../../dynamic/model/FormAnswer\";\r\nimport { ApplicationForm } from \"../../../prereg/model/ApplicationForm\";\r\nimport { ApplicationFormMode } from \"../../../prereg/model/ApplicationFormMode\";\r\nimport { ApplicationStatus } from \"../../../prereg/model/ApplicationStatus\";\r\nimport { FileUpload } from \"../../../shared/model/FileUpload\";\r\nimport { RegistrantStatus } from \"../../model/RegistrantStatus\";\r\nimport { CCPSApplicationStep } from \"./ccpsApplicationStep\";\r\nimport { InitialRegistrantQualificationDetail } from \"./initialPharmacyQualificationDetail\";\r\nimport { ProfessionalStandingDetail } from \"./professionalStandingDetail\";\r\n\r\n\r\nexport class CCPSForm implements ApplicationForm{\r\n id: string;\r\n formStatus: ApplicationStatus;\r\n declarations: Array<{ dynamicFormId: string, answers: Array }>;\r\n attachments: Array;\r\n isOverallDeclarationConfirmed: boolean;\r\n\r\n step: CCPSApplicationStep;\r\n minStep: CCPSApplicationStep;\r\n mode: ApplicationFormMode;\r\n\r\n isOverallDeclarationAcknowledged: boolean;\r\n professionalStandingDetail:ProfessionalStandingDetail;\r\n initialRegistrantQualificationDetail: InitialRegistrantQualificationDetail;\r\n equalityDiversity: EqualityDiversity;\r\n appDeclaration: { isQ1Confirmed: boolean, isQ2Confirmed: boolean, isQ3Confirmed: boolean, isQ4Confirmed: boolean };\r\n //registrantStatus: RegistrantStatus;\r\n assessmentDetailsExists: boolean;\r\n qualificationDetailsExists: {\r\n courseExists: boolean,\r\n qualifiedExists: boolean,\r\n countryExists: boolean\r\n };\r\n trainingDetailsExists: boolean;\r\n get readonly() {\r\n return (this.formStatus === ApplicationStatus.NotStarted ||\r\n this.formStatus === ApplicationStatus.InProgress ||\r\n this.formStatus === ApplicationStatus.CounterSigned ||\r\n this.formStatus === ApplicationStatus.ReadyForCountersigning \r\n //|| this.registrantStatus === RegistrantStatus.IneligibleToRegister\r\n );\r\n }\r\n \r\n\r\n constructor(data, registrantStatus) {\r\n if( data ) {\r\n Object.assign(this, data);\r\n } \r\n // this.registrantStatus = registrantStatus;\r\n }\r\n \r\n}\r\n","export class InitialRegistrantQualificationDetail {\r\n registrationRoute: number;\r\n eeaPharmacistQualificationDetail: eeaPharmacistQualificationDetail;\r\n ukPharmacistQualificationDetail: ukPharmacistQualificationDetail;\r\n ospapPharmacistQualificationDetail:ospapPharmacistQualificationDetail;\r\n irelandPharmacistQualificationDetail: irelandPharmacistQualificationDetail;\r\n pharmacyTechnicianQualificationDetail: pharmacyTechnicianQualificationDetail;\r\n trainingDetails: trainingDetails[]\r\n}\r\n\r\nexport interface pharmacyTechnicianQualificationDetail{\r\n degreeName1: string;\r\n qualifiedDate1: string;\r\n degreeName2: string;\r\n qualifiedDate2: string\r\n}\r\n\r\nexport interface irelandPharmacistQualificationDetail{\r\n courseId: string;\r\n courseName: string;\r\n yearObtained: number\r\n}\r\n\r\nexport interface ospapPharmacistQualificationDetail{\r\n ospapCountryQualified: string;\r\n ospapCourseId: string;\r\n ospapCourseName: string;\r\n degreeName: string;\r\n universityName: string;\r\n yearObtained: number;\r\n ospapDateQualified: string;\r\n assessmentYear: string\r\n}\r\n\r\nexport interface ukPharmacistQualificationDetail {\r\n courseId: string;\r\n courseName: string;\r\n yearQualified: number;\r\n assessmentYear: string\r\n}\r\n\r\nexport interface eeaPharmacistQualificationDetail {\r\n countryQualified: string;\r\n eeaDirectiveRoute?: string;\r\n courseName?: string;\r\n dateStarted?: Date;\r\n datePassed?: Date,\r\n educationTrainingDetails?: string;\r\n countryFirstRecognized: string;\r\n cvUpload?: any;\r\n nameOfUniversity?: string;\r\n}\r\n\r\nexport interface PreRegTraining {\r\n trainingSiteName: string;\r\n trainingSiteAddress: string;\r\n startedDate: Date;\r\n endedDate: Date;\r\n}\r\n\r\nexport interface trainingDetails \r\n {\r\n trainingSiteName: string;\r\n trainingSiteAddress: string;\r\n trainingStartDate: Date;\r\n trainingEndDate: Date;\r\n }\r\n\r\n export class trainingSites\r\n {\r\n trainingSite: string;\r\n line1: string;\r\n line2: string;\r\n line3: string;\r\n town: string;\r\n county: string;\r\n country: string;\r\n postcode: string;\r\n startDate: string;\r\n endDate: string;\r\n }\r\n\r\n export enum LegacyRegistrationRoute{\r\n Adjudicating = 717750000,\r\n NonEEATechnicianApplicant = 717750001,\r\n Reciprocity = 717750002,\r\n RouteATechnicianApplicant = 717750003,\r\n RouteBTechnicianApplicant = 717750004\r\n }\r\n\r\nexport enum eeaDirectiveRoute{\r\n Article44 = 717750000,\r\n Article23 = 717750001,\r\n //[Description(\"Non-Auto (EEA Qual)\")]\r\n NonAutoEEAQual = 717750002,\r\n //[Description(\"Non-Auto (Non-EEA Qual)\")]\r\n NonAutoNonEEAQual = 717750003,\r\n}\r\n\r\nexport const EEACountries = [\r\n 'Austria',\r\n 'Belgium',\r\n 'Bulgaria',\r\n 'Croatia',\r\n 'Republic of Cyprus',\r\n 'Czech Republic',\r\n 'Denmark',\r\n 'Estonia',\r\n 'Finland',\r\n 'France',\r\n 'Germany',\r\n 'Greece',\r\n 'Hungary',\r\n 'Ireland',\r\n 'Italy',\r\n 'Latvia',\r\n 'Lithuania',\r\n 'Luxembourg',\r\n 'Malta',\r\n 'Netherlands',\r\n 'Poland',\r\n 'Portugal',\r\n 'Romania',\r\n 'Slovakia',\r\n 'Slovenia',\r\n 'Spain',\r\n 'Sweden',\r\n 'Iceland',\r\n 'Liechtenstein',\r\n 'Norway',\r\n 'Switzerland'\r\n];\r\n\r\n\r\nexport const EEADirectiveRoute = ['Article44', 'Article23', 'NonAutoEEAQual', 'NonAutoNonEEAQual'];\r\n","import { Component, forwardRef, Input, OnInit } from '@angular/core';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { CCPSApplicationStep } from '../../model/ccpsApplicationStep';\r\nimport { RegistrantStatus } from '../../../../../app/registration/model/RegistrantStatus';\r\n\r\n@Component({\r\n selector: 'app-ccps-declarations',\r\n templateUrl: './ccps-declarations.component.html',\r\n styleUrls: ['./ccps-declarations.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => CcpsDeclarationsComponent)\r\n }\r\n ]\r\n})\r\nexport class CcpsDeclarationsComponent extends FormStepComponent implements OnInit {\r\n\r\n title = 'CCPS Declarations';\r\n stepId = CCPSApplicationStep.CCPSDeclarations;\r\n @Input() application;\r\n touched;\r\n viewReady = false;\r\n isRegisteredOrSuspended:boolean;\r\n registrationStatus:any;\r\n constructor(formStpperService: FormStepperService) {\r\n super(formStpperService);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.registrationStatus=this.application.personalDetails.registration.registrationStatus;\r\n this.ready$.next(true);\r\n }\r\n update() {\r\n this.application.activeForm.appDeclaration.isQ1Confirmed=this.application.activeForm.appDeclaration.isQ1Confirmed===true ? true : false;\r\n this.application.activeForm.appDeclaration.isQ2Confirmed=this.application.activeForm.appDeclaration.isQ2Confirmed===true ? true : false;\r\n this.application.activeForm.appDeclaration.isQ3Confirmed=this.application.activeForm.appDeclaration.isQ3Confirmed===true ? true : false;\r\n this.application.activeForm.appDeclaration.isQ4Confirmed=this.application.activeForm.appDeclaration.isQ4Confirmed===true ? true : false;\r\n this.application.activeForm.appDeclaration.isQ5Confirmed=this.application.activeForm.appDeclaration.isQ5Confirmed===true ? true : false;\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n populateForm() { } \r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.ready$.next(true);\r\n this.viewReady = true;\r\n });\r\n }\r\n\r\n get isRegistered() {\r\n return this.registrationStatus===RegistrantStatus.Registered;\r\n }\r\n\r\n validate() {\r\n const {\r\n isQ1Confirmed, isQ2Confirmed, isQ3Confirmed, isQ4Confirmed, isQ5Confirmed\r\n } = this.application.activeForm.appDeclaration;\r\n const isOverallDeclarationAcknowledged = this.application.activeForm.isOverallDeclarationAcknowledged;\r\n\r\n let messages = [];\r\n if(this.isRegistered){\r\n if (!isQ1Confirmed) {\r\n messages.push('You have not confirmed the 1st declaration');\r\n }\r\n if (!isQ2Confirmed) {\r\n messages.push('You have not confirmed the 2nd declaration');\r\n }\r\n if (!isQ3Confirmed) {\r\n messages.push('You have not confirmed the 3rd declaration');\r\n }\r\n if (!isQ4Confirmed) {\r\n messages.push('You have not confirmed the 4th declaration');\r\n }\r\n if (!isQ5Confirmed) {\r\n messages.push('You have not confirmed the 5th declaration');\r\n }\r\n if (!isOverallDeclarationAcknowledged) {\r\n messages.push('You have to complete over all declaration');\r\n }\r\n }else{\r\n if (!isQ1Confirmed) {\r\n messages.push('You have not confirmed the 1st declaration');\r\n }\r\n if (!isQ5Confirmed) {\r\n messages.push('You have not confirmed the 2nd declaration');\r\n }\r\n if (!isOverallDeclarationAcknowledged) {\r\n messages.push('You have to complete over all declaration');\r\n }\r\n } \r\n this.validity$.next({ valid: messages.length === 0, messages, touched: this.touched });\r\n }\r\n}\r\n","\r\n
    \r\n

    \r\n
    Application declarations
    \r\n

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

    \r\n \r\n The information I have provided for this application for a certificate\r\n of current professional status and fitness to practise history is\r\n complete, true and accurate.\r\n \r\n \r\n

    \r\n

    \r\n Please select this checkbox\r\n

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

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

    \r\n \r\n I am aware that I must notify the registrar of any changes to my name,\r\n home address or other contact details within one month starting on the\r\n day on which the change occurred.\r\n \r\n \r\n

    \r\n

    \r\n Please select this checkbox\r\n

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

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

    \r\n \r\n I am aware that I must notify the registrar if there is any change in\r\n the circumstances relating to the fitness to practise declaration that I\r\n have made in this application within seven days, starting on the day on\r\n which the event occurred.\r\n \r\n \r\n

    \r\n

    \r\n Please select this checkbox\r\n

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

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

    \r\n \r\n I understand that if I am found to have given false or misleading\r\n information in connection with this application for a CCPS, this may be\r\n treated as misconduct, which may result in my removal from the register.\r\n \r\n \r\n

    \r\n

    \r\n Please select this checkbox\r\n

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

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

    \r\n \r\n I give my consent for the GPhC to use the information I have provided in this application \r\n and any fitness to practise history (where applicable) to produce a CCPS and to send it to \r\n my nominated regulatory authority. I am aware that this may mean my personal data will be \r\n transferred outside the UK and the European Union, depending on the location of my selected regulator. \r\n \r\n \r\n

    \r\n

    \r\n Please select this checkbox\r\n

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

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

    \r\n \r\n The information I have provided for this application for a certificate of current professional status and fitness to practise history is complete, true and accurate.\r\n \r\n \r\n

    \r\n

    \r\n Please select this checkbox\r\n

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

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

    \r\n \r\n I give my consent for the GPhC to use the information I have provided in this application\r\n and any fitness to practise history (where applicable) to produce a CCPS and to send it to \r\n my nominated regulatory authority. I am aware that this may mean my personal data will be \r\n transferred outside the UK and the European Union, depending on the location of my selected regulator. \r\n \r\n \r\n

    \r\n

    \r\n Please select this checkbox\r\n

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

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

    I have read and understood the declarations

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, forwardRef, Input, OnInit } from '@angular/core';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { CCPSApplicationStep } from '../../model/ccpsApplicationStep';\r\nimport { EqualityDiversity } from '../../../../account/model/EqualityDiversity';\r\nimport { EdiService } from '../../../../account/service/edi.service';\r\nimport { Tooltip } from '../../../../core/tooltip/Tooltip';\r\n\r\n@Component({\r\n selector: 'app-ccps-edi',\r\n templateUrl: './ccps-edi.component.html',\r\n styleUrls: ['./ccps-edi.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => CCPSEDIComponent)\r\n }\r\n ]\r\n})\r\nexport class CCPSEDIComponent extends FormStepComponent implements OnInit {\r\n title = 'ED&I Details';\r\n stepId = CCPSApplicationStep.EDIDetails;\r\n equalityDiversity: EqualityDiversity;\r\n\r\n constructor(public ediService: EdiService, service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n showDetailsHelp = false;\r\n prevDisabled = false;\r\n\r\n ngOnInit() {\r\n this.equalityDiversity = this.application.activeForm.equalityDiversity || {\r\n ethnicity: undefined,\r\n ethnicityOther: '',\r\n nationality: undefined,\r\n religion: undefined,\r\n religionOther: '',\r\n disabled: undefined,\r\n disabilityDetails: '',\r\n gender: undefined,\r\n sexualOrientation: undefined\r\n };\r\n }\r\n\r\n validate() {\r\n let ediValidation = this.ediService.validate(this.equalityDiversity);\r\n if(ediValidation) this.validity$.next(Object.assign(ediValidation, { touched: this.touched })); \r\n }\r\n\r\n update($event) {\r\n const nationality = this.application.activeForm.equalityDiversity?.nationality;\r\n this.application.activeForm.equalityDiversity = Object.assign($event, { nationality });\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n load() {\r\n this.ediService.load().subscribe(() => {\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n populateForm() { }\r\n\r\n\r\n}\r\n","\r\n\r\n
    \r\n

    \r\n
    \r\n Equality and diversity\r\n
    \r\n \r\n

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

    \r\n At the GPhC, we are committed to promoting equality, valuing diversity and being inclusive in all our work\r\n as a health professions regulator, and to making sure we meet our equality duties.\r\n

    \r\n

    \r\n This equality monitoring form will provide us with information to check that this happens, as defined under\r\n the Equality Act 2010. We will use your answers to compile statistics and to facilitate research to support\r\n this work. We sometimes share anonymised data with third parties to help us carry out research into\r\n particular issues and will have a confidentiality agreement in place if this happens.\r\n

    \r\n

    \r\n It does not form part of the application process and will not be used in assessing applications. If you do not want to give us any information, click on ‘prefer\r\n not to say’ in response to each section.\r\n

    \r\n
    \r\n
    \r\n
    \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, forwardRef } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { CCPSApplication } from '../../model/ccpsApplication';\r\nimport { CCPSApplicationStep } from '../../model/ccpsApplicationStep';\r\n\r\n@Component({\r\n selector: 'app-ccps-guidance',\r\n templateUrl: './ccps-guidance.component.html',\r\n styleUrls: ['./ccps-guidance.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => CcpsGuidanceComponent)\r\n } \r\n ]\r\n})\r\nexport class CcpsGuidanceComponent extends FormStepComponent {\r\n title = 'Guidance for this application';\r\n application: CCPSApplication;\r\n stepId: CCPSApplicationStep = CCPSApplicationStep.Guidance;\r\n\r\n constructor(private formStepperService: FormStepperService) { \r\n super(formStepperService);\r\n }\r\n\r\n populateForm() {}\r\n\r\n validate(){\r\n this.validity$.next({valid: true, messages: [], touched: this.touched});\r\n }\r\n}\r\n","\r\n

    {{title}}

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

    \r\n If you are currently, or were previously registered with the GPhC or the former regulator \r\n the RPS as a pharmacist or pharmacy technician and you want to practise in another country, \r\n or want to register with another regulatory body in the UK, use this form to request that we \r\n provide a ‘certificate of current professional status’, sometimes called a ‘letter of good standing’ \r\n to the other regulatory body.\r\n

    \r\n\r\n

    \r\n We will create the certificate of current professional status and fitness to practice history \r\n (CCPS) at your request and will send it to the regulatory authority you nominate.\r\n

    \r\n\r\n

    The CCPS will include:

    \r\n\r\n
      \r\n
    • your full name
    • \r\n
    • your registered address
    • \r\n
    • your date of birth
    • \r\n
    • details of your pharmacy education and training
    • \r\n
    • your current registration status
    • \r\n
    • details of any current and past fitness to practise matters
    • \r\n
    \r\n\r\n

    \r\n If there is any fitness to practise history on your record, we will send you an extract of the \r\n information that will be included so that you can confirm it is accurate before we complete the CCPS.\r\n

    \r\n\r\n

    \r\n We will send the CCPS directly to the regulatory body. We will not provide a copy to you, \r\n or any other person or organisation.\r\n

    \r\n
    \r\n
    \r\n
    ","import { AfterViewInit, Component, ElementRef, EventEmitter, forwardRef, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { CCPSApplicationStep } from '../../model/ccpsApplicationStep';\r\nimport { Tooltip } from '../../../../core/tooltip/Tooltip';\r\nimport { Applicant } from '../../../../account/model/Applicant';\r\nimport { ContactEditComponent } from '../../../../account/contactEdit.component';\r\nimport { AuthService } from '../../../../core/service/auth.service';\r\nimport { SupportingDocumentsService } from '../../../../shared/supportingDocuments/supportingDocuments.service';\r\nimport { UploadType } from '../../../../shared/model/UploadType';\r\nimport { FileUpload } from '../../../../shared/model/FileUpload';\r\nimport { AttachmentType } from '../../../../shared/model/AttachmentType';\r\nimport utils from '../../../../shared/service/utils';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { NgForm, FormControl } from '@angular/forms';\r\nimport { Observable } from 'rxjs';\r\nimport { AccountService } from '../../../../account/service/account.service';\r\nimport { map, startWith } from 'rxjs/operators';\r\nimport { RegistrantPersonalDetails, RegistrationDetails } from '../../model/CCPSDetails';\r\nimport { CCPSApplication } from '../../model/ccpsApplication';\r\nimport { ProfessionalStandingDetail } from '../../model/professionalStandingDetail';\r\n\r\n@Component({\r\n selector: 'app-ccps-personal-details',\r\n templateUrl: './ccps-personal-details.component.html',\r\n styleUrls: ['./ccps-personal-details.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => CCPSPersonalDetailsComponent)\r\n },\r\n SupportingDocumentsService,\r\n ]\r\n})\r\nexport class CCPSPersonalDetailsComponent extends FormStepComponent implements OnInit, AfterViewInit {\r\n title = 'Personal details';\r\n @Input() stepId = CCPSApplicationStep.PersonalDetails;\r\n @Input() readonly = false;\r\n @Input() touched = false;\r\n @Input() application: CCPSApplication;\r\n @Output() navigate = new EventEmitter();\r\n @ViewChild('form') form: NgForm;\r\n @ViewChild('salutationInput') salutationRef: ElementRef;\r\n @ViewChild('contact') contact: ContactEditComponent;\r\n viewReady = false;\r\n showDetailsHelp = false;\r\n showContactHelp = false;\r\n applicant;\r\n contactValid;\r\n hasNewName;\r\n hasTitle;\r\n hasNationality;\r\n selection;\r\n registrantFullName;\r\n user;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n uploadType = UploadType.ProfessionalStandingSupportingDocuments;\r\n sessionId = utils.guid();\r\n attachments: { [key: number]: Array } = {};\r\n AttachmentType = AttachmentType;\r\n deleteUrl;\r\n registrant: Applicant;\r\n registrantDetails: RegistrantPersonalDetails;\r\n registrationDetails: RegistrationDetails;\r\n officialDocumentForNameChange;\r\n registeredDocTypes = [];\r\n docTypes = 2;\r\n titleError: boolean = false\r\n salutations: Array<{ key: string; value: number }> = [];\r\n titleName;\r\n salutation: FormControl = new FormControl();\r\n filteredSalutations: Observable;\r\n nationalities = [];\r\n nationality;\r\n zero = 0;\r\n professionalStandingDetail: ProfessionalStandingDetail;\r\n \r\n constructor(\r\n service: FormStepperService,\r\n private auth: AuthService, \r\n private docService: SupportingDocumentsService,\r\n private dialog: MatDialog,\r\n private accountService: AccountService) \r\n {\r\n super(service);\r\n }\r\n\r\n ngOnInit() {\r\n this.user = this.auth.user;\r\n this.applicant = this.application;\r\n this.registrantDetails = this.applicant.personalDetails;\r\n\r\n this.professionalStandingDetail = this.application.activeForm.professionalStandingDetail;\r\n\r\n if (this.user) {\r\n this.registrantFullName = [this.user.title, this.user.forenames, this.user.middleName, this.user.surname].filter(Boolean).join(' ');\r\n }\r\n\r\n if (this.application.activeForm.attachments.length > 0) {\r\n let attachment = this.application.activeForm.attachments.find(attachement => attachement.type === AttachmentType.OfficialDocummentConfirmingNameChange);\r\n if (attachment) {\r\n this.attachments[AttachmentType.OfficialDocummentConfirmingNameChange] = [attachment];\r\n }\r\n }\r\n\r\n if (this.professionalStandingDetail.title && this.professionalStandingDetail.title.name) {\r\n this.salutation.setValue(this.professionalStandingDetail.title.name);\r\n this.titleName = this.professionalStandingDetail.title.name;\r\n }\r\n\r\n this.loadSalutations();\r\n this.loadNationalities();\r\n }\r\n\r\n load() {\r\n if (this.viewReady) {\r\n this.ready$.next(true);\r\n }\r\n }\r\n\r\n loadSalutations() {\r\n this.accountService.getSalutations().subscribe(data => {\r\n for (const key in data) {\r\n this.salutations.push({ key, value: data[key] });\r\n }\r\n this.filteredSalutations = this.salutation.valueChanges\r\n .pipe(\r\n startWith(''),\r\n map(val => this.filter(val))\r\n );\r\n\r\n this.salutation.valueChanges.subscribe(value => {\r\n if (!value) {\r\n return false;\r\n } else {\r\n const selected = this.salutations.filter(item => item.key.toLowerCase() === value.toLowerCase());\r\n\r\n let newValue = { name: value, id: 981360000 };\r\n if (selected.length) {\r\n newValue = { name: selected[0].key, id: selected[0].value };\r\n }\r\n if (newValue.name !== this.professionalStandingDetail.title.name) {\r\n this.professionalStandingDetail.title = newValue;\r\n this.propagateChange(this.professionalStandingDetail);\r\n }\r\n }\r\n });\r\n });\r\n }\r\n\r\n filter(val: string): { key: string; value: number }[] {\r\n return this.salutations.filter(option =>\r\n option.key.toLowerCase().indexOf(val.toLowerCase()) === 0);\r\n }\r\n\r\n propagateChange = (model: any) => { };\r\n \r\n loadNationalities() {\r\n this.accountService.getEdiOptions().subscribe(data => {\r\n this.nationalities = data.sections.find(section => section.name === 'Nationality').groups;\r\n\r\n // pre-populate nationality if set in CRM\r\n this.nationality = this.applicant.activeForm.equalityDiversity.nationality;\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.ready$.next(true);\r\n this.viewReady = true;\r\n });\r\n }\r\n\r\n update() {\r\n this.propagateChange(this.professionalStandingDetail.continueExistingName);\r\n\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n onRegistered(type: AttachmentType) {\r\n this.registeredDocTypes.push(type);\r\n if (this.registeredDocTypes.length === this.docTypes) {\r\n setTimeout(() => {\r\n this.viewReady = true;\r\n this.ready$.next(true);\r\n });\r\n }\r\n }\r\n\r\n onUploaded($event) {\r\n this.attachments[$event.type] = $event.uploads;\r\n $event.uploads.forEach(upload => upload.type = $event.type);\r\n this.updateApplication();\r\n }\r\n\r\n get getIndexOfDocummentConfirmingNameChange() {\r\n let index = -1;\r\n if (this.application.activeForm.attachments && this.application.activeForm.attachments.length > 0) {\r\n index = this.application.activeForm.attachments.findIndex(item => item.type === AttachmentType.OfficialDocummentConfirmingNameChange);\r\n }\r\n return index;\r\n }\r\n\r\n updateApplication() {\r\n let index = this.getIndexOfDocummentConfirmingNameChange;\r\n if (index >= 0) {\r\n this.application.activeForm.attachments.splice(index, 1);\r\n }\r\n if (this.attachments[AttachmentType.OfficialDocummentConfirmingNameChange].length > 0) {\r\n this.application.activeForm.attachments.push(this.attachments[AttachmentType.OfficialDocummentConfirmingNameChange][0]);\r\n }\r\n this.validate();\r\n this.makeDirty();\r\n }\r\n\r\n onTitleChange(event) {\r\n let selected, value;\r\n this.titleError = false;\r\n if (event.target.value && event.target.value.trim().length > 0) {\r\n selected = this.salutations.filter(item => item.key.toLowerCase() == event.target.value.toLowerCase());\r\n selected.length > 0 ? value = { name: selected[0].key, id: selected[0].value } : this.titleError = true;\r\n } else {\r\n value = { name: '', id: '' };\r\n }\r\n this.professionalStandingDetail.title = value;\r\n this.propagate();\r\n }\r\n\r\n updateAttachment() {\r\n if(this.professionalStandingDetail.continueExistingName) {\r\n if(this.getIndexOfDocummentConfirmingNameChange >= 0) {\r\n this.attachments = [];\r\n this.application.activeForm.attachments.splice(this.getIndexOfDocummentConfirmingNameChange,1);\r\n }\r\n }\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n const continueExistingName = this.professionalStandingDetail.continueExistingName;\r\n \r\n this.hasTitle = !!this.professionalStandingDetail.title && !!this.professionalStandingDetail.title.name && !!this.professionalStandingDetail.title.name.trim().length;\r\n this.hasNewName = !!this.professionalStandingDetail.forenames && !!this.professionalStandingDetail.surname;\r\n \r\n if(continueExistingName === null || continueExistingName === undefined) {\r\n messages.push('Please confirm the name you wish to register with');\r\n }\r\n\r\n if (continueExistingName === false) {\r\n\r\n if (this.hasTitle === null || this.hasTitle === false) {\r\n messages.push('You haven\\'t entered a title');\r\n }\r\n if (this.hasNewName === null || this.hasNewName === false ) {\r\n messages.push('You haven\\'t entered changed name');\r\n }\r\n \r\n if (this.docService.validate().length) {\r\n messages.push(this.docService.validate());\r\n } else {\r\n if(this.professionalStandingDetail.continueExistingName === false && this.getIndexOfDocummentConfirmingNameChange < 0) {\r\n messages.push(\"You haven't uploaded your image of official document confirming name change\");\r\n }\r\n }\r\n }\r\n \r\n this.applicant.activeForm.equalityDiversity.nationality = parseInt((this.applicant.activeForm.equalityDiversity.nationality), 10);\r\n\r\n this.hasNationality = !!this.applicant.activeForm.equalityDiversity.nationality;\r\n if (!this.hasNationality) {\r\n messages.push('You haven\\'t selected your nationality');\r\n }\r\n\r\n this.validity$.next({ valid: messages.length == 0, messages, touched: this.touched });\r\n }\r\n\r\n propagate() {\r\n this.validate();\r\n }\r\n \r\n populateForm() { \r\n this.updateAttachment();\r\n if(this.professionalStandingDetail.continueExistingName === true) {\r\n this.professionalStandingDetail.forenames = null;\r\n this.professionalStandingDetail.surname = null;\r\n this.professionalStandingDetail.middleName = null;\r\n }\r\n }\r\n}\r\n","\r\n
    \r\n

    \r\n
    \r\n Your details\r\n
    \r\n

    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n \r\n\r\n
    \r\n \r\n Yes\r\n No\r\n \r\n\r\n \r\n

    \r\n This is mandatory\r\n

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

    \r\n Enter your name in the boxes below how you would like it to appear on the certificate, and on the register if you are registered. \r\n You must provide evidence of your official name change, by uploading a copy of an official document which confirms the change in your name for example, \r\n a marriage certificate, civil partnership certificate, deed poll, decree absolute, or final order.\r\n

    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n\r\n \r\n \r\n \r\n {{ option.key }}\r\n \r\n \r\n\r\n \r\n

    \r\n This is mandatory\r\n

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

    \r\n Please select a valid 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 This is mandatory\r\n

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

    \r\n This is mandatory\r\n

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

    \r\n This is mandatory\r\n

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

    \r\n
    \r\n Contact details\r\n
    \r\n

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

    \r\n If your contact details are incorrect, update them in the 'Account' tab.\r\n

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

    \r\n
    \r\n Home address\r\n
    \r\n

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

    \r\n If your address details are incorrect, update them in the 'Account' tab.\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, forwardRef, Input, Output, EventEmitter } from '@angular/core';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { CCPSApplicationStep } from '../../model/ccpsApplicationStep';\r\n\r\n@Component({\r\n selector: 'app-ccps-review',\r\n templateUrl: './ccps-review.component.html',\r\n styleUrls: ['./ccps-review.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => CcpsReviewComponent)\r\n }\r\n ]\r\n})\r\nexport class CcpsReviewComponent extends FormStepComponent implements OnInit {\r\n\r\n title = 'Review';\r\n stepId = CCPSApplicationStep.Review;\r\n @Input() application;\r\n @Input() formId;\r\n @Input() readonly = false;\r\n @Input() showEdi = true;\r\n @Output() navigate = new EventEmitter();\r\n @Input() displayFtPStep: boolean = false;\r\n\r\n constructor(formStpperService: FormStepperService) {\r\n super(formStpperService);\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n populateForm() { }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.ready$.next(true);\r\n //this.viewReady = true;\r\n });\r\n }\r\n\r\n validate() {\r\n this.validity$.next({ valid: true, messages: [], touched: this.touched });\r\n }\r\n\r\n goToStep(stepId) { \r\n this.navigate.emit(stepId);\r\n}\r\n\r\nload() {\r\n this.ready$.next(true);\r\n}\r\n}\r\n","\r\n

    Review your application

    \r\n\r\n\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 { Input, Component, OnInit, EventEmitter, Output } from \"@angular/core\";\r\nimport { FormStepperService } from \"../../../../../app/shared/formStepper/formStepper.service\";\r\nimport { AuthService } from \"../../../../core/service/auth.service\";\r\nimport { CCPSService } from \"../../../../core/service/ccps.service\";\r\nimport { AccountService } from '../../../../account/service/account.service';\r\nimport { RegistrantType } from \"../../../model/RegistrantType\";\r\nimport { CCPSApplication } from \"../../model/ccpsApplication\";\r\nimport { CCPSApplicationStep } from \"../../model/ccpsApplicationStep\";\r\nimport { RegistrantPersonalDetails, RegistrationRoute } from \"../../model/CCPSDetails\";\r\nimport { EEACountries, eeaDirectiveRoute, LegacyRegistrationRoute } from \"../../model/initialPharmacyQualificationDetail\";\r\nimport { ProfessionalStandingDetail } from \"../../model/professionalStandingDetail\";\r\nimport { AttachmentType } from \"../../../../shared/model/AttachmentType\";\r\nimport { RegistrantStatus } from \"../../../model/RegistrantStatus\";\r\n@Component({\r\n selector: \"app-ccps-application-review\",\r\n templateUrl: \"./ccpsApplicationReview.component.html\",\r\n styleUrls: [\"./ccpsApplicationReview.scss\"],\r\n})\r\nexport class CcpsApplicationReviewComponent implements OnInit {\r\n title = \"Review\";\r\n stepId = CCPSApplicationStep.Review;\r\n\r\n user;\r\n applicant;\r\n @Input() application: CCPSApplication;\r\n @Input() readonly = false;\r\n @Input() showEdi = true;\r\n @Input() formId;\r\n @Input() pastApplication = false;\r\n @Input() displayFtPStep : boolean = false;\r\n initialPharmacyQualificationDetailHeading = {\r\n education: \"Education\",\r\n training: \"Pre-registration training/foundation training\",\r\n assessment: \"Registration assessment\",\r\n };\r\n\r\n professionalStandingDetail: ProfessionalStandingDetail;\r\n personalDetails: RegistrantPersonalDetails\r\n registrantFullName: string;\r\n nameChangeForename: string;\r\n nameChangeTitle: string;\r\n nameChangeMiddleNames: string;\r\n nameChangeSurname: string;\r\n countryQualified: string;\r\n degreeName: string;\r\n universityName: string;\r\n yearObtained: number;\r\n ospapDegreeName: string;\r\n ospapDateQualified: string;\r\n assessmentName: string;\r\n degreeName1: string;\r\n qualifiedDate1: Date;\r\n degreeName2: string;\r\n qualifiedDate2: Date;\r\n continueExistingName: string;\r\n nameTitle: string;\r\n overseasRegulatoryDetais = {\r\n country: \"country1\",\r\n regulatoryBody: \"regulatory body\",\r\n pinCode: \"pin code\",\r\n address: \"address\",\r\n };\r\n initQualDetails;\r\n ccpsApplicationStep: any;\r\n regulatoryBodyName: any;\r\n isPharmacist = false;\r\n userRoute;\r\n registrationRoute: RegistrationRoute;\r\n EEACountriesList = EEACountries;\r\n attachments = [];\r\n downloading = false;\r\n nationalities = [];\r\n selectedNationality: string;\r\n attachmentType = AttachmentType;\r\n registration;\r\n registrationStatus;\r\n regBodyEmailAddress;\r\n \r\n constructor(formStpperService: FormStepperService, private auth: AuthService, private ccpsService: CCPSService, private accountService: AccountService) { }\r\n @Output() navigate = new EventEmitter();\r\n ngOnInit() {\r\n this.initQualDetails = this.application.activeForm.initialRegistrantQualificationDetail;\r\n\r\n this.attachments = this.application.activeForm.attachments;\r\n\r\n this.isPharmacist = this.auth.user.registrant.type === RegistrantType.Pharmacist;\r\n\r\n if(this.isPharmacist) this.setUserRoute();\r\n\r\n this.professionalStandingDetail =\r\n this.application.activeForm.professionalStandingDetail;\r\n this.application.regulatoryBodies.forEach((rb) => {\r\n if (\r\n this.application.activeForm.professionalStandingDetail\r\n .regulatoryBodyId === rb.id\r\n ) {\r\n this.regulatoryBodyName = rb.name;\r\n this.regBodyEmailAddress = rb.standardEmail;\r\n\r\n }\r\n });\r\n\r\n this.personalDetails = this.application.personalDetails;\r\n\r\n if (this.personalDetails) {\r\n this.nameTitle = this.personalDetails?.title?.name || '-';\r\n this.registrantFullName = this.nameTitle + ' ' + [this.personalDetails.forenames, this.personalDetails.middleName, this.personalDetails.surname].filter(Boolean).join(' ');\r\n this.continueExistingName = this.professionalStandingDetail.continueExistingName === true ? 'Yes': (this.professionalStandingDetail.continueExistingName === false ? 'No' : '-');\r\n this.nameChangeTitle = this.professionalStandingDetail?.title?.name || '-';\r\n this.nameChangeForename = this.professionalStandingDetail.forenames;\r\n this.nameChangeMiddleNames = this.professionalStandingDetail.middleName;\r\n this.nameChangeSurname = this.professionalStandingDetail.surname;\r\n this.registration = this.personalDetails.registration;\r\n this.registrationStatus = RegistrantStatus[this.registration.registrationStatus];\r\n }\r\n\r\n this.ccpsApplicationStep = CCPSApplicationStep;\r\n\r\n this.loadNationalitiesAndSet();\r\n }\r\n\r\n get route(){\r\n if(this.application.personalDetails.registration.registrationRoute)return RegistrationRoute[this.application.personalDetails.registration.registrationRoute];\r\n }\r\n\r\n loadNationalitiesAndSet() {\r\n this.accountService.getEdiOptions().subscribe(data => {\r\n this.nationalities = data.sections.find(section => section.name === 'Nationality').groups;\r\n\r\n const filterById = this.application.activeForm.equalityDiversity.nationality;\r\n const filteredItem = this.nationalities.find((item) => item.id === filterById);\r\n \r\n if (filteredItem) {\r\n this.selectedNationality = filteredItem.name;\r\n }\r\n });\r\n }\r\n\r\n get directiveRouteEEA() {\r\n if(this.initQualDetails.eeaPharmacistQualificationDetail?.eeaDirectiveRoute) {\r\n if(typeof(this.initQualDetails.eeaPharmacistQualificationDetail?.eeaDirectiveRoute) === 'number') return eeaDirectiveRoute[this.initQualDetails.eeaPharmacistQualificationDetail.eeaDirectiveRoute];\r\n else return this.initQualDetails.eeaPharmacistQualificationDetail.eeaDirectiveRoute;\r\n } else return '-';\r\n }\r\n\r\n isCVUploadRequired(): boolean {\r\n let eeaRoute;\r\n if(this.initQualDetails.eeaPharmacistQualificationDetail?.eeaDirectiveRoute) {\r\n eeaRoute = this.initQualDetails.eeaPharmacistQualificationDetail.eeaDirectiveRoute;\r\n if(typeof(this.initQualDetails.eeaPharmacistQualificationDetail?.eeaDirectiveRoute) === 'string') eeaRoute = eeaDirectiveRoute[this.initQualDetails.eeaPharmacistQualificationDetail?.eeaDirectiveRoute];\r\n }\r\n\r\n return this.isEEARegulatorSelected && (eeaRoute === eeaDirectiveRoute.Article23);\r\n }\r\n\r\n get isEEARegulatorSelected() {\r\n const EEARegulatorSelected = this.EEACountriesList.includes(this.application.activeForm.professionalStandingDetail.country);\r\n return EEARegulatorSelected;\r\n }\r\n\r\n setUserRoute() {\r\n let countryQualified = this.application?.activeForm?.initialRegistrantQualificationDetail?.ospapPharmacistQualificationDetail?.ospapCountryQualified;\r\n this.registrationRoute = this.application.personalDetails.registration.registrationRoute;\r\n \r\n if (this.registrationRoute === RegistrationRoute.UK) {\r\n this.userRoute = \"UK\"; \r\n }\r\n // EEA route\r\n else if (this.registrationRoute === RegistrationRoute.EEA) {\r\n this.userRoute = \"EEA\";\r\n }\r\n // Reciprocity\r\n else if ((this.registrationRoute === RegistrationRoute.Legacy && this.application.personalDetails.registration.legacyRegistrationRoute === LegacyRegistrationRoute.Reciprocity) ||\r\n (this.registrationRoute === RegistrationRoute.OSPAP && this.application.activeForm.qualificationDetailsExists?.countryExists && (countryQualified === 'Australia' || countryQualified === 'New Zealand' || countryQualified === 'South Africa'))) {\r\n this.userRoute = 'Reciprocity';\r\n }\r\n // OSPAP\r\n else if (this.registrationRoute === RegistrationRoute.OSPAP || \r\n (this.registrationRoute === RegistrationRoute.Legacy && this.application.personalDetails.registration.legacyRegistrationRoute === LegacyRegistrationRoute.Adjudicating)) {\r\n this.userRoute = 'OSPAP';\r\n }\r\n // Northern Ireland\r\n else if (this.registrationRoute === RegistrationRoute.NorthernIreland) {\r\n this.userRoute = \"Northern Ireland\";\r\n }\r\n }\r\n\r\n download(file) {\r\n this.downloading = true;\r\n this.ccpsService.getDoc(file).subscribe(blob => {\r\n const url = URL.createObjectURL(blob);\r\n const element = document.createElement('a');\r\n element.href = url;\r\n element.setAttribute('download', file.filename);\r\n document.body.appendChild(element); // Append the element to work in firefox\r\n element.click();\r\n\r\n });\r\n }\r\n\r\n validate() {\r\n //throw new Error('Method not implemented.');\r\n }\r\n populateForm() {\r\n //throw new Error('Method not implemented.');\r\n }\r\n\r\n goToStep(stepId) {\r\n this.navigate.emit(stepId);\r\n }\r\n}\r\n","
    \r\n
    \r\n\r\n

    \r\n
    Personal Details
    \r\n \r\n \r\n

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

    \r\n
    Contact details
    \r\n \r\n \r\n

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

    \r\n
    Home address
    \r\n \r\n

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

    \r\n
    Changing your registered name
    \r\n \r\n \r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    {{file.filename}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n\r\n

    \r\n
    Requesting regulator details
    \r\n \r\n \r\n

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

    Regulator details

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

    Other contact details

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

    \r\n
    Initial pharmacy qualification details
    \r\n \r\n \r\n

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

    \r\n Education\r\n

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

    \r\n Pre-registration training/foundation training\r\n

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \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
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n

    \r\n Registration assessment\r\n

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

    \r\n Education\r\n

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

    \r\n Pre-registration training/foundation training\r\n

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

    \r\n Registration assessment\r\n

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

    \r\n Education\r\n

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    {{file.filename}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n

    \r\n Education\r\n

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

    \r\n Education\r\n

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

    \r\n
    Fitness to practise declarations
    \r\n \r\n \r\n

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

    \r\n
    CCPS Declarations
    \r\n \r\n \r\n

    \r\n
    \r\n
    \r\n I have read and understand the application declaration\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n
    ED&I Details
    \r\n \r\n \r\n

    \r\n \r\n
    \r\n
    ","import { Input, Component, OnInit } from '@angular/core';\r\n\r\nimport { map } from 'rxjs/operators';\r\nimport { FormQuestion } from '../../../../../app/dynamic/model/FormQuestion';\r\nimport { FormValidationService } from '../../../../../app/dynamic/service/formValidationService';\r\nimport { FormValidator } from '../../../../../app/dynamic/service/FormValidator';\r\nimport { CCPSApplication } from '../../model/ccpsApplication';\r\nimport { CCPSForm } from '../../model/ccpsForm';\r\nimport { CCPSService } from '../../../../../app/core/service/ccps.service';\r\n\r\n@Component({\r\n selector: 'app-ccps-declaration-summary',\r\n templateUrl: './declarationSummary.component.html',\r\n providers: [\r\n FormValidationService,\r\n { provide: FormValidator, useExisting: FormValidationService }\r\n ],\r\n styleUrls: ['./declarationSummary.scss']\r\n}) export class CCPSDeclarationSummaryComponent implements OnInit {\r\n empty = false;\r\n form$ = this.validator.state$.pipe(map(forms => forms[0]));\r\n formIndex = 0;\r\n @Input() application: CCPSApplication;\r\n @Input() formId;\r\n applicationForm: CCPSForm;\r\n dynamicFormId;\r\n hasToDeclare: Array = [];\r\n constructor(\r\n private ccpsService: CCPSService,\r\n private validator: FormValidationService\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n this.setForm();\r\n this.load();\r\n }\r\n\r\n setForm() {\r\n if (this.formId) {\r\n this.applicationForm = this.application.pastApplications\r\n .find(pastApp => pastApp.id === this.formId);\r\n } else {\r\n this.applicationForm = this.application.activeForm;\r\n }\r\n }\r\n\r\n load() {\r\n this.ccpsService.getDeclarationFormTemplates().subscribe(formTemplates => {\r\n const form = this.validator.addForm(formTemplates[0]);\r\n this.dynamicFormId = form.dynamicFormId;\r\n const saved = this.applicationForm.declarations.find(dec => dec.dynamicFormId === form.dynamicFormId);\r\n if (!saved) {\r\n this.empty = true;\r\n return;\r\n }\r\n this.validator.loadAnswers(form, saved.answers);\r\n this.hasToDeclare = form.questionGroups.reduce((acc, group) => {\r\n acc = acc.concat(group.questions.filter(q => this.validator.hasAnsweredYes(q)));\r\n return acc;\r\n }, []);\r\n });\r\n }\r\n}\r\n\r\n\r\n","
    \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n
    \r\n I have nothing to declare\r\n
    \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n Declarations not completed\r\n
    \r\n
    ","import { Component, OnInit, forwardRef, Input } from '@angular/core';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { CCPSApplicationStep } from '../../model/ccpsApplicationStep';\r\nimport { FormValidationService } from '../../../../../app/dynamic/service/formValidationService';\r\nimport { map } from 'rxjs/operators';\r\nimport { CCPSService } from '../../../../../app/core/service/ccps.service';\r\nimport { FormValidator } from '../../../../../app/dynamic/service/FormValidator';\r\n\r\n@Component({\r\n selector: 'app-ftp-declarations',\r\n templateUrl: './ftp-declarations.component.html',\r\n styleUrls: ['./ftp-declarations.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => FtpDeclarationsComponent)\r\n },\r\n FormValidationService,\r\n { provide: FormValidator, useExisting: FormValidationService }\r\n ]\r\n})\r\nexport class FtpDeclarationsComponent extends FormStepComponent implements OnInit {\r\n\r\n title = 'Fitness to practise declarations';\r\n stepId = CCPSApplicationStep.FtPDeclarations;\r\n @Input() application;\r\n form$ = this.validator.state$.pipe(map(forms => forms[0]));\r\n valid;\r\n dynamicFormId: any;\r\n formIndex: number=0;\r\n\r\n constructor(formStpperService: FormStepperService,private validator: FormValidationService,private ccpsService:CCPSService) {\r\n super(formStpperService);\r\n this.form$.subscribe(form => {\r\n if (form) {\r\n this.dirty = form.dirty;\r\n this.valid = !form.invalid && form.completed;\r\n }\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n beforeNext() {\r\n return this.populateForm();\r\n }\r\n\r\n beforePrev() {\r\n return this.populateForm();\r\n }\r\n \r\n populateForm() {\r\n this.application.activeForm.declarations = this.application.activeForm.declarations\r\n .filter(d => d.dynamicFormId !== this.dynamicFormId);\r\n this.application.activeForm.declarations.push(this.validator.getPayload()[0]);\r\n return true;\r\n }\r\n\r\n\r\n validate() { \r\n const messages = [];\r\n if (!this.valid) {\r\n messages.push('You must answer all the questions to continue');\r\n }\r\n this.validity$.next({ valid: this.valid, messages, touched: this.touched });\r\n }\r\n\r\n load() {\r\n\r\n this.ccpsService.getDeclarationFormTemplates().subscribe(formTemplates => {\r\n const formTemplate = formTemplates[this.formIndex];\r\n const form = this.validator.addForm(formTemplate);\r\n this.dynamicFormId = form.dynamicFormId;\r\n const saved = this.application.activeForm.declarations.find(dec => dec.dynamicFormId === form.dynamicFormId);\r\n if (saved) {\r\n this.validator.loadAnswers(form, saved.answers);\r\n }\r\n\r\n // strip off any legacy declaration forms\r\n const currentDynamicFormIds = formTemplates.map(template => template.dynamicFormId);\r\n this.application.activeForm.declarations = this.application.activeForm.declarations\r\n .filter(f => currentDynamicFormIds.indexOf(f.dynamicFormId) > -1 );\r\n\r\n this.validator.updateState();\r\n this.dirty = false;\r\n this.touched = false;\r\n this.ready$.next(true);\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","import { Component, OnInit, forwardRef, Input, ViewChild } from \"@angular/core\";\r\nimport { FormStepperService } from \"../../../../shared/formStepper/formStepper.service\";\r\nimport { FormStepComponent } from \"../../../../shared/formStepper/formStep.component\";\r\nimport { CCPSApplicationStep } from \"../../model/ccpsApplicationStep\";\r\nimport { Tooltip } from \"../../../../../app/core/tooltip/Tooltip\";\r\nimport { RegistrantType } from \"../../../../../app/registration/model/RegistrantType\";\r\nimport { AuthService } from \"../../../../../app/core/service/auth.service\";\r\nimport {\r\n EEACountries,\r\n EEADirectiveRoute,\r\n eeaDirectiveRoute,\r\n InitialRegistrantQualificationDetail,\r\n LegacyRegistrationRoute,\r\n trainingDetails,\r\n trainingSites,\r\n} from \"../../model/initialPharmacyQualificationDetail\";\r\nimport { CourseType } from \"../../../../../app/shared/model/student/CourseType\";\r\nimport { AccountService } from \"../../../../account/service/account.service\";\r\nimport { CCPSService } from \"../../../../core/service/ccps.service\";\r\nimport { CCPSApplication } from \"../../model/ccpsApplication\";\r\nimport { NgForm } from \"@angular/forms\";\r\nimport utils from '../../../../shared/service/utils';\r\nimport { AttachmentType } from \"../../../../shared/model/AttachmentType\";\r\nimport { SupportingDocumentsService } from \"../../../../shared/supportingDocuments/supportingDocuments.service\";\r\nimport { UploadType } from \"../../../../shared/model/UploadType\";\r\nimport { Qualification, RegistrationRoute } from \"../../model/CCPSDetails\";\r\nimport { TrainingDetailsComponent } from \"./training-details/training-details.component\";\r\n\r\n\r\nconst MAX_TRAININGS: number = 5;\r\nconst MIN_YEARQUALIFIED = 1955;\r\nconst MIN_ASSESSMENTYEAR = 1993;\r\nconst MIN_EEAQUALIFIEDYEAR = 1960;\r\n@Component({\r\n selector: \"app-initial-pharmacy-qualification-details\",\r\n templateUrl: \"./initial-pharmacy-qualification-details.component.html\",\r\n styleUrls: [\"./initial-pharmacy-qualification-details.component.scss\"],\r\n providers: [\r\n SupportingDocumentsService,\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(\r\n () => InitialPharmacyQualificationDetailsComponent\r\n ),\r\n },\r\n ],\r\n})\r\nexport class InitialPharmacyQualificationDetailsComponent\r\n extends FormStepComponent\r\n implements OnInit\r\n{\r\n title = \"Initial pharmacy qualification details\";\r\n stepId = CCPSApplicationStep.InitialPharmacyQualificationDetails;\r\n\r\n @ViewChild('form') form: NgForm;\r\n\r\n\r\n @Input() application: CCPSApplication;\r\n registrationRouteSwitchValue: string; //'Northern Ireland'//'OSPAP'//'UK'//'EEA' // 'NONEEA' // 'OSPAPWITH';\r\n registrationRoute: RegistrationRoute;\r\n isPharmacist: boolean = true;\r\n currentDate = new Date();\r\n currentYear = new Date().getFullYear(); \r\n \r\n inputTrainingSiteName;\r\n inputTrainingSiteAddress;\r\n inputTrainingStartDate;\r\n inputTrainingEndDate;\r\n countryChanged = false;\r\n routeChanged = false;\r\n countriesList = [];\r\n showTrainingForm: boolean = false;\r\n editTrainingRow;\r\n newTrainingDetails = {\r\n siteName:null,\r\n siteAddress: null,\r\n startDate: null,\r\n endDate: null\r\n }\r\n errorMessages: Array = [];\r\n editedTrainingDetails = {\r\n siteName: null,\r\n siteAddress: null,\r\n startDate: null,\r\n endDate: null\r\n };\r\n trainingDetail = {\r\n trainingSiteName: '',\r\n trainingSiteAddress: '',\r\n trainingStartDate: null,\r\n trainingEndDate: null\r\n }\r\n isEditTrainingDetails = false;\r\n trainingDetailsSaved = false;\r\n EEARegulatorSelected: boolean;\r\n invalidYearFormat: boolean;\r\n\r\n readonly: boolean = true;\r\n tooltipInfo: Tooltip = {\r\n id: \"help\",\r\n content: \"Click here for more information.\",\r\n width: 250,\r\n placement: \"right\",\r\n order: -1,\r\n };\r\n eeaDirectiveRoute = EEADirectiveRoute;\r\n countryFirstRecognised = EEACountries; \r\n trainingDetails: trainingDetails[];\r\n \r\n countries: any;\r\n qualifications:any;\r\n qualificationsToSelectFrom: Qualification[] = [];\r\n otherThanOSPAPQualifications = []; \r\n ospapQualifications = [];\r\n assessment: any;\r\n addTrainingFlag: boolean = false;\r\n initQualDetail: InitialRegistrantQualificationDetail;\r\n eeaDirectiveRouteSelected;\r\n PTQualifcationDetails = [];\r\n\r\n qualificationDetailsExists: {\r\n courseExists: boolean,\r\n qualifiedExists: boolean,\r\n countryExists: boolean\r\n };\r\n otherQualificationDetailsExists = {\r\n courseExists: false,\r\n qualifiedExists: false,\r\n countryExists: false\r\n }\r\n DELETE_URL = 'v1.0/pharmacistform/attachment';\r\n\r\n trainingDetailsExists;\r\n assessmentDetailsExists;\r\n startDateTouched: boolean = false;\r\n endDateTouched: boolean = false;\r\n sessionId = utils.guid();\r\n deleteUrl;\r\n attachmentType = AttachmentType.PharmcistCVForProfessionalStanding;\r\n uploadType = UploadType.ProfessionalStandingSupportingDocuments;\r\n courseExists: boolean = false;\r\n qualifiedExists: boolean = false;\r\n reciprocityCountries = ['Australia', 'New Zealand','South Africa'];\r\n attachments = [];\r\n\r\n @ViewChild('trainingDetailsComp') trainingDetailsComp: TrainingDetailsComponent;\r\n\r\n constructor(\r\n formStpperService: FormStepperService,\r\n private auth: AuthService,\r\n private accountService: AccountService,\r\n private ccpsService: CCPSService,\r\n private docService: SupportingDocumentsService\r\n ) {\r\n super(formStpperService);\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n this.getCountries();\r\n this.assessment = this.application.personalDetails.assessmentName ? this.application.personalDetails.assessmentName : null;\r\n this.qualificationDetailsExists = this.application.activeForm.qualificationDetailsExists;\r\n this.assessmentDetailsExists = this.application.activeForm.assessmentDetailsExists;\r\n this.deleteUrl = this.application.activeForm.attachments?.length > 0 ? this.DELETE_URL : '';\r\n\r\n this.ccpsService.getQualificationsList().subscribe((list) => {\r\n this.qualifications = list.qualifications;\r\n \r\n if (this.qualifications && this.qualifications.length > 0) {\r\n this.qualifications.forEach(qualification => {\r\n if (qualification.courseType === CourseType.OSPAP)\r\n this.ospapQualifications.push(qualification)\r\n else\r\n this.otherThanOSPAPQualifications.push(qualification)\r\n });\r\n }\r\n });\r\n this.countries = this.application.countries;\r\n\r\n if (this.auth.user) {\r\n this.isPharmacist = this.auth.user.registrant.type === RegistrantType.Pharmacist;\r\n\r\n this.initiateQualifcationDetails();\r\n \r\n this.registrationRoute = this.application.personalDetails.registration.registrationRoute;\r\n \r\n if(this.isPharmacist)\r\n {\r\n this.getRegistrationRoute();\r\n }\r\n }\r\n this.ready$.next(true);\r\n }\r\n\r\n get route(){\r\n return RegistrationRoute[this.registrationRoute];\r\n }\r\n\r\n get isEEARegulatorSelected() {\r\n const EEARegulatorSelected = !this.application.activeForm.professionalStandingDetail.country ? true : this.countryFirstRecognised.includes(this.application.activeForm.professionalStandingDetail.country);\r\n this.ccpsService.setIsEEARegulatorSelected(EEARegulatorSelected);\r\n return EEARegulatorSelected;\r\n }\r\n\r\n initiateQualifcationDetails() {\r\n this.initQualDetail = this.application.activeForm.initialRegistrantQualificationDetail;\r\n }\r\n\r\n updateTrainingDetails(val) {\r\n this.initQualDetail.trainingDetails = val;\r\n this.validate();\r\n }\r\n\r\n isCVUploadRequired(): boolean {\r\n let eeaDirRoute = this.eeaDirectiveRouteSelected;\r\n if(typeof(eeaDirRoute) === 'string') eeaDirRoute = eeaDirectiveRoute[this.eeaDirectiveRouteSelected];\r\n return this.isEEARegulatorSelected && (eeaDirRoute === eeaDirectiveRoute.Article23);\r\n }\r\n\r\n getCountries() {\r\n this.accountService.getCountries().subscribe(countries => this.countriesList = countries);\r\n }\r\n\r\n setCourseName(id) {\r\n let qualification;\r\n if(this.registrationRouteSwitchValue === 'UK'){\r\n qualification = this.otherThanOSPAPQualifications.filter(qual => qual.id === id);\r\n this.initQualDetail.ukPharmacistQualificationDetail.courseName = qualification[0].courseName;\r\n }\r\n if(this.registrationRouteSwitchValue === \"Northern Ireland\") {\r\n qualification = this.otherThanOSPAPQualifications.filter(qual => qual.id === id);\r\n this.initQualDetail.irelandPharmacistQualificationDetail.courseName = qualification[0].courseName;\r\n }\r\n if(this.registrationRouteSwitchValue === 'OSPAP') {\r\n qualification = this.ospapQualifications.filter(qual => qual.id === id);\r\n this.initQualDetail.ospapPharmacistQualificationDetail.ospapCourseName = qualification[0].courseName;\r\n }\r\n }\r\n\r\n getIndexOfCV(arr) {\r\n let index = -1;\r\n if(arr && arr.length > 0) {\r\n index = arr.findIndex(item => item.type === AttachmentType.PharmcistCVForProfessionalStanding);\r\n } \r\n return index;\r\n }\r\n\r\n updateAttachmentsList(arr) { \r\n let attachment;\r\n let index = this.getIndexOfCV(arr);\r\n if(index >= 0) {\r\n attachment = arr.splice(index,1);\r\n }\r\n return attachment;\r\n }\r\n\r\n getRegistrationRoute() {\r\n let countryQualified = this.initQualDetail?.ospapPharmacistQualificationDetail?.ospapCountryQualified;\r\n\r\n // UK route\r\n if (this.registrationRoute === RegistrationRoute.UK || this.registrationRoute === RegistrationRoute.UKPlusOverseas ) {\r\n this.registrationRouteSwitchValue = \"UK\";\r\n /*this.setRouteDetailsNull();*/\r\n this.initQualDetail.ukPharmacistQualificationDetail = {\r\n courseName: this.initQualDetail.ukPharmacistQualificationDetail?.courseName,\r\n assessmentYear: this.initQualDetail.ukPharmacistQualificationDetail?.assessmentYear,\r\n courseId: this.initQualDetail.ukPharmacistQualificationDetail?.courseId,\r\n yearQualified: this.initQualDetail.ukPharmacistQualificationDetail?.yearQualified\r\n };\r\n }\r\n // EEA route\r\n else if (this.registrationRoute === RegistrationRoute.EEA) {\r\n this.registrationRouteSwitchValue = \"EEA\";\r\n // this.EEARegulatorSelected = this.countryFirstRecognised.includes(this.ccpsService.getRegulatorSelected()?.country);\r\n let eeaRoute = this.initQualDetail?.eeaPharmacistQualificationDetail?.eeaDirectiveRoute;\r\n //EEA Route - EEA Regulator selected\r\n if (this.isEEARegulatorSelected) { \r\n if (this.application.activeForm.attachments.length > 0) {\r\n let attachment = this.application.activeForm.attachments.find( attachement => attachement.type === AttachmentType.PharmcistCVForProfessionalStanding); \r\n if(attachment) {\r\n this.attachments = [attachment];\r\n }\r\n } \r\n\r\n this.initQualDetail.eeaPharmacistQualificationDetail = {\r\n countryQualified: this.initQualDetail.eeaPharmacistQualificationDetail?.countryQualified || null,\r\n courseName : this.initQualDetail.eeaPharmacistQualificationDetail?.courseName || null,\r\n dateStarted : this.initQualDetail.eeaPharmacistQualificationDetail?.dateStarted || null,\r\n datePassed : this.initQualDetail.eeaPharmacistQualificationDetail?.datePassed || null,\r\n eeaDirectiveRoute: (typeof(eeaRoute) === 'number' ? eeaDirectiveRoute[eeaRoute] : eeaRoute) || null,\r\n educationTrainingDetails: null,\r\n countryFirstRecognized: this.initQualDetail.eeaPharmacistQualificationDetail?.countryFirstRecognized || null,\r\n nameOfUniversity: this.initQualDetail.eeaPharmacistQualificationDetail?.nameOfUniversity || null,\r\n cvUpload: this.attachments[0] || null\r\n };\r\n\r\n this.eeaDirectiveRouteSelected = this.initQualDetail.eeaPharmacistQualificationDetail.eeaDirectiveRoute;\r\n if(typeof(this.initQualDetail.eeaPharmacistQualificationDetail.eeaDirectiveRoute) === 'number') this.eeaDirectiveRouteSelected = eeaDirectiveRoute[this.initQualDetail.eeaPharmacistQualificationDetail.eeaDirectiveRoute];\r\n \r\n } else {\r\n //EEA Route - Non EEA Regulator selected\r\n this.initQualDetail.eeaPharmacistQualificationDetail = {\r\n countryQualified: this.initQualDetail.eeaPharmacistQualificationDetail?.countryQualified || null,\r\n dateStarted : this.initQualDetail.eeaPharmacistQualificationDetail?.dateStarted || null,\r\n courseName : this.initQualDetail.eeaPharmacistQualificationDetail?.courseName || null,\r\n datePassed : this.initQualDetail.eeaPharmacistQualificationDetail?.datePassed || null,\r\n countryFirstRecognized: this.initQualDetail?.eeaPharmacistQualificationDetail?.countryFirstRecognized || null,\r\n nameOfUniversity: this.initQualDetail.eeaPharmacistQualificationDetail?.nameOfUniversity || null,\r\n eeaDirectiveRoute: (typeof(eeaRoute) === 'number' ? eeaDirectiveRoute[eeaRoute] : eeaRoute) || null,\r\n };\r\n }\r\n\r\n }\r\n // Reciprocity\r\n else if ((this.registrationRoute === RegistrationRoute.Legacy && this.application.personalDetails.registration.legacyRegistrationRoute === LegacyRegistrationRoute.Reciprocity)) {\r\n this.registrationRouteSwitchValue = 'Reciprocity';\r\n Object.assign(this.otherQualificationDetailsExists, this.qualificationDetailsExists);\r\n let ospapDetails = this.initQualDetail.ospapPharmacistQualificationDetail;\r\n this.initQualDetail.ospapPharmacistQualificationDetail = {\r\n ospapCountryQualified: ospapDetails?.ospapCountryQualified || null,\r\n degreeName: ospapDetails?.degreeName || null,\r\n universityName: ospapDetails?.universityName || null,\r\n yearObtained: ospapDetails?.yearObtained || null,\r\n ospapCourseId: ospapDetails?.ospapCourseId || null,\r\n ospapCourseName: ospapDetails?.ospapCourseName || null,\r\n ospapDateQualified: ospapDetails?.ospapDateQualified || null,\r\n assessmentYear: ospapDetails?.assessmentYear || null,\r\n };\r\n\r\n }\r\n // OSPAP\r\n else if (this.registrationRoute === RegistrationRoute.OSPAP || \r\n (this.registrationRoute === RegistrationRoute.Legacy && this.application.personalDetails.registration.legacyRegistrationRoute === LegacyRegistrationRoute.Adjudicating)) {\r\n this.registrationRouteSwitchValue = 'OSPAP';\r\n let ospapDetails = this.initQualDetail.ospapPharmacistQualificationDetail;\r\n this.initQualDetail.ospapPharmacistQualificationDetail = {\r\n ospapCountryQualified: ospapDetails?.ospapCountryQualified || null,\r\n degreeName: ospapDetails?.degreeName || null,\r\n universityName: ospapDetails?.universityName || null,\r\n yearObtained: (ospapDetails?.yearObtained) || null,\r\n ospapCourseId: (ospapDetails?.ospapCourseId) || null,\r\n ospapCourseName: (ospapDetails?.ospapCourseName) || null,\r\n ospapDateQualified: (ospapDetails?.ospapDateQualified) || null,\r\n assessmentYear: (ospapDetails?.assessmentYear) || null,\r\n }; \r\n\r\n }\r\n // Northern Ireland\r\n else if (this.registrationRoute === RegistrationRoute.NorthernIreland) {\r\n this.registrationRouteSwitchValue = \"Northern Ireland\";\r\n this.initQualDetail.irelandPharmacistQualificationDetail = {\r\n courseId: this.initQualDetail.irelandPharmacistQualificationDetail?.courseId || null,\r\n courseName: this.initQualDetail.irelandPharmacistQualificationDetail?.courseName || null,\r\n yearObtained: this.initQualDetail.irelandPharmacistQualificationDetail?.yearObtained || null,\r\n };\r\n }\r\n }\r\n\r\n isYearInvalid(year,type){\r\n if(this.assessmentDetailsExists) return;\r\n if(type==='yearQualified') {\r\n if(!year || (String(year).length !== 4) || (Number(year) < MIN_YEARQUALIFIED || Number(year) > this.currentYear)) {\r\n return `Year passed should be between ${MIN_YEARQUALIFIED} and ${this.currentYear}`; \r\n }\r\n }\r\n\r\n if(type==='assessmentYear') {\r\n if((String(year).length > 0 && String(year).length !== 4) || (Number(year) < MIN_ASSESSMENTYEAR || Number(year) > this.currentYear)) {\r\n return `Assessment year should be between ${MIN_ASSESSMENTYEAR} and ${this.currentYear}`;\r\n }\r\n }\r\n\r\n if(type==='dateStarted' || type==='datePassed') {\r\n let dateType = (type === 'dateStarted') ? 'started' : 'awarded';\r\n if((String(year).length > 0 && String(year).length !== 4) || (Number(year) < MIN_EEAQUALIFIEDYEAR || Number(year) > this.currentYear)) {\r\n return `Year degree ${dateType} should be between ${MIN_EEAQUALIFIEDYEAR} and ${this.currentYear}`;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n enforceMax(el, route, prop) {\r\n el = el.target;\r\n \r\n let valueStr = String(el.value);\r\n \r\n if (el.value != \"\") {\r\n this.invalidYearFormat = false;\r\n if (valueStr.length > 4) el.value = Number(valueStr.slice(0,4)); \r\n if(valueStr.length !==4) this.invalidYearFormat = true;\r\n } else this.invalidYearFormat = true;\r\n\r\n if(prop === 'yearQualified') {\r\n if(route === 'UK') this.initQualDetail.ukPharmacistQualificationDetail.yearQualified = el.value;\r\n if(route === 'OSPAP' || route === 'Reciprocity') this.initQualDetail.ospapPharmacistQualificationDetail.yearObtained = el.value;\r\n if(route === 'Northern Ireland') this.initQualDetail.irelandPharmacistQualificationDetail.yearObtained = el.value;\r\n }\r\n if(prop === 'assessmentYear') {\r\n if(route === 'UK') this.initQualDetail.ukPharmacistQualificationDetail.assessmentYear = el.value;\r\n if(route === 'OSPAP') this.initQualDetail.ospapPharmacistQualificationDetail.assessmentYear = el.value;\r\n }\r\n if(prop === 'dateStarted') this.initQualDetail.eeaPharmacistQualificationDetail.dateStarted = el.value;\r\n if(prop === 'datePassed') this.initQualDetail.eeaPharmacistQualificationDetail.datePassed = el.value;\r\n this.validate();\r\n}\r\n\r\n setRouteDetailsNull() {\r\n this.initQualDetail.irelandPharmacistQualificationDetail = null;\r\n this.initQualDetail.pharmacyTechnicianQualificationDetail = null;\r\n this.initQualDetail.ukPharmacistQualificationDetail = null;\r\n this.initQualDetail.eeaPharmacistQualificationDetail = null;\r\n this.initQualDetail.ospapPharmacistQualificationDetail = null;\r\n }\r\n\r\n checkIfInValid(value) {\r\n return value === '' || !value;\r\n }\r\n\r\n populateForm() {\r\n if(this.registrationRouteSwitchValue && this.registrationRouteSwitchValue === 'EEA') {\r\n if(!this.isEEARegulatorSelected) {\r\n this.initQualDetail.eeaPharmacistQualificationDetail.cvUpload = null;\r\n this.onDocDelete();\r\n } else {\r\n if(!this.isCVUploadRequired()) {\r\n this.initQualDetail.eeaPharmacistQualificationDetail.cvUpload = null;\r\n this.onDocDelete();\r\n }\r\n }\r\n }\r\n }\r\n\r\n onDocUpload($event) {\r\n this.attachments = $event;\r\n this.attachments.forEach(attachment => {\r\n attachment.type = this.attachmentType;\r\n });\r\n this.deleteUrl = this.DELETE_URL;\r\n this.validate();\r\n }\r\n\r\n onDocDelete() {\r\n this.deleteUrl = '';\r\n this.updateAttachmentsList(this.attachments);\r\n this.updateAttachmentsList(this.application.activeForm.attachments);\r\n this.validate();\r\n }\r\n\r\n get checkIfTrainingDetailsExists() {\r\n return !!(this.initQualDetail.trainingDetails && this.initQualDetail.trainingDetails?.length > 0);\r\n }\r\n\r\n get isPTDetailsEntered(){\r\n if(this.registrationRoute === RegistrationRoute.EEA) return;\r\n let firstQualDetails = this.initQualDetail.pharmacyTechnicianQualificationDetail.degreeName1 && this.initQualDetail.pharmacyTechnicianQualificationDetail.qualifiedDate1;\r\n let secQualDetails = this.initQualDetail.pharmacyTechnicianQualificationDetail.degreeName2 && this.initQualDetail.pharmacyTechnicianQualificationDetail.qualifiedDate2;\r\n return firstQualDetails || secQualDetails;\r\n }\r\n \r\n onDateSelection(type, date) {\r\n if(type === 'qualifiedDate1')this.initQualDetail.pharmacyTechnicianQualificationDetail.qualifiedDate1 = date;\r\n if(type === 'qualifiedDate2')this.initQualDetail.pharmacyTechnicianQualificationDetail.qualifiedDate2 = date;\r\n this.validate();\r\n }\r\n\r\n onEEADirectiveRouteSelect() {\r\n this.initQualDetail.eeaPharmacistQualificationDetail.eeaDirectiveRoute = eeaDirectiveRoute[this.eeaDirectiveRouteSelected]\r\n }\r\n\r\n validate() {\r\n let messages = []; let valid =true;\r\n\r\n if (!this.isPharmacist) {\r\n \r\n if(this.registrationRoute === RegistrationRoute.EEA) {\r\n if(this.initQualDetail.eeaPharmacistQualificationDetail) {\r\n if(!this.initQualDetail.eeaPharmacistQualificationDetail.courseName) messages.push('Please enter the course name')\r\n if(!this.initQualDetail.eeaPharmacistQualificationDetail.countryQualified) messages.push('Please select the country')\r\n if(this.isYearInvalid(this.initQualDetail.eeaPharmacistQualificationDetail.datePassed,'datePassed')) messages.push(this.isYearInvalid(this.initQualDetail.eeaPharmacistQualificationDetail.datePassed,'datePassed'));\r\n }\r\n } else {\r\n if (!this.isPTDetailsEntered) messages.push('Please provide atleast one qualification details');\r\n\r\n if(this.initQualDetail.pharmacyTechnicianQualificationDetail?.degreeName1?.length > 200 ||\r\n this.initQualDetail.pharmacyTechnicianQualificationDetail?.degreeName2?.length > 200) messages.push('Qualification can be of maximum 200 characters');\r\n }\r\n }\r\n if (this.registrationRouteSwitchValue === 'UK') {\r\n\r\n\r\n if((!this.qualificationDetailsExists.courseExists && this.checkIfInValid(this.initQualDetail.ukPharmacistQualificationDetail?.courseId)) ||\r\n (!this.qualificationDetailsExists.qualifiedExists && (this.checkIfInValid(this.initQualDetail.ukPharmacistQualificationDetail?.yearQualified) ||\r\n (this.isYearInvalid(this.initQualDetail.ukPharmacistQualificationDetail?.yearQualified, 'yearQualified'))))){\r\n messages.push('Please provide education details');\r\n }\r\n\r\n if(this.trainingDetailsComp && (this.trainingDetailsComp.getTrainingRowEditable === 0 || this.trainingDetailsComp.getTrainingRowEditable >0)) messages.push('Please save the training details');\r\n\r\n if(!this.assessmentDetailsExists && this.initQualDetail.ukPharmacistQualificationDetail?.assessmentYear) if (this.isYearInvalid(this.initQualDetail.ukPharmacistQualificationDetail?.assessmentYear,'assessmentYear')) messages.push(this.isYearInvalid(this.initQualDetail.ukPharmacistQualificationDetail?.assessmentYear,'assessmentYear'));\r\n }\r\n if (this.registrationRouteSwitchValue === 'EEA') {\r\n if(!this.initQualDetail.eeaPharmacistQualificationDetail.nameOfUniversity) messages.push('Please provide the university/awarding body name');\r\n if (this.isEEARegulatorSelected) {\r\n if (!this.initQualDetail.eeaPharmacistQualificationDetail.countryQualified) messages.push('Please select the country');\r\n if (!this.initQualDetail.eeaPharmacistQualificationDetail.eeaDirectiveRoute) messages.push('Please select the EEA directive route');\r\n if(!this.initQualDetail.eeaPharmacistQualificationDetail.courseName || !this.initQualDetail.eeaPharmacistQualificationDetail.datePassed ||\r\n !this.initQualDetail.eeaPharmacistQualificationDetail.dateStarted) messages.push('Please provide the course details');\r\n if(this.initQualDetail.eeaPharmacistQualificationDetail.dateStarted && this.isYearInvalid(this.initQualDetail.eeaPharmacistQualificationDetail.dateStarted,'dateStarted')) messages.push(this.isYearInvalid(this.initQualDetail.eeaPharmacistQualificationDetail.dateStarted,'dateStarted'));\r\n if(this.initQualDetail.eeaPharmacistQualificationDetail.datePassed && this.isYearInvalid(this.initQualDetail.eeaPharmacistQualificationDetail.datePassed,'datePassed')) messages.push(this.isYearInvalid(this.initQualDetail.eeaPharmacistQualificationDetail.datePassed,'datePassed'));\r\n if (this.isCVUploadRequired()) {\r\n let attachment = this.updateAttachmentsList(this.application.activeForm.attachments);\r\n attachment = this.application.activeForm.attachments.find( attachement => attachement.type === AttachmentType.PharmcistCVForProfessionalStanding); \r\n \r\n if(this.attachments.length > 0 && !attachment) {\r\n this.application.activeForm.attachments.push(this.attachments[0]);\r\n }\r\n if (!this.attachments || (this.attachments && this.attachments?.length === 0)) messages.push('Please upload your CV');\r\n if (this.docService.validate()?.length > 0) messages.push([...this.docService.validate()])\r\n }\r\n\r\n } else {\r\n if (!this.qualificationDetailsExists.countryExists && !this.initQualDetail.eeaPharmacistQualificationDetail.countryQualified) messages.push('Please select the country in which pharmacy qualification was obtained');\r\n //if (!this.initQualDetail.eeaPharmacistQualificationDetail.countryFirstRecognized) messages.push('Please select the country of first recognition within the EEA');\r\n if(!this.initQualDetail.eeaPharmacistQualificationDetail.courseName || !this.initQualDetail.eeaPharmacistQualificationDetail.datePassed) messages.push('Please provide the course details');\r\n }\r\n if(this.initQualDetail.eeaPharmacistQualificationDetail?.courseName?.length > 200) messages.push('Qualification can be of maximum 200 characters');\r\n if(this.initQualDetail.eeaPharmacistQualificationDetail?.nameOfUniversity?.length > 2000 ) messages.push('Name of university or awarding body can be of maximum 2000 characters');\r\n }\r\n\r\n if (this.registrationRouteSwitchValue === 'OSPAP' || this.registrationRouteSwitchValue === 'Reciprocity') {\r\n let isEducationDetailsValid = true;\r\n \r\n if(this.registrationRouteSwitchValue === 'OSPAP') {\r\n if(!this.qualificationDetailsExists.countryExists && !this.initQualDetail.ospapPharmacistQualificationDetail.ospapCountryQualified) messages.push('Please enter the country in which degree obtained');\r\n if(!this.qualificationDetailsExists.courseExists) isEducationDetailsValid = isEducationDetailsValid && !!this.initQualDetail.ospapPharmacistQualificationDetail.ospapCourseId;\r\n if(!this.qualificationDetailsExists.qualifiedExists) isEducationDetailsValid = isEducationDetailsValid && !!this.initQualDetail.ospapPharmacistQualificationDetail.ospapDateQualified;\r\n if(!isEducationDetailsValid) messages.push('Please enter all the OSPAP qualification details');\r\n if(this.initQualDetail.ospapPharmacistQualificationDetail?.yearObtained && this.isYearInvalid(this.initQualDetail.ospapPharmacistQualificationDetail?.yearObtained,'yearQualified')) {if(messages.length < 3) messages.push('Please enter a valid year'); else valid = false;}\r\n }\r\n\r\n if(this.registrationRouteSwitchValue === 'Reciprocity') {\r\n isEducationDetailsValid = !!this.initQualDetail.ospapPharmacistQualificationDetail.degreeName;\r\n if(!this.qualificationDetailsExists.countryExists) isEducationDetailsValid = isEducationDetailsValid && !!this.initQualDetail.ospapPharmacistQualificationDetail.ospapCountryQualified;\r\n isEducationDetailsValid = isEducationDetailsValid && (!!this.initQualDetail.ospapPharmacistQualificationDetail.yearObtained && !this.isYearInvalid(this.initQualDetail.ospapPharmacistQualificationDetail.yearObtained,'yearQualified'));\r\n if(!isEducationDetailsValid) messages.push('Please enter all the qualification details');\r\n }\r\n\r\n if(isEducationDetailsValid) if(this.initQualDetail.ospapPharmacistQualificationDetail?.degreeName?.length > 200) messages.push('Degree can be of maximum 200 characters');\r\n\r\n if (!this.assessmentDetailsExists && this.initQualDetail.ospapPharmacistQualificationDetail.assessmentYear && this.registrationRouteSwitchValue === 'OSPAP' && this.isYearInvalid(this.initQualDetail.ospapPharmacistQualificationDetail.assessmentYear,'assessmentYear')) messages.push(this.isYearInvalid(this.initQualDetail.ospapPharmacistQualificationDetail.assessmentYear,'assessmentYear'));\r\n\r\n if (!this.trainingDetailsExists) if(this.trainingDetailsComp && (this.trainingDetailsComp.getTrainingRowEditable === 0 || this.trainingDetailsComp.getTrainingRowEditable >0)) messages.push('Please save the training details');\r\n\r\n if(this.initQualDetail.ospapPharmacistQualificationDetail?.degreeName && \r\n this.initQualDetail.ospapPharmacistQualificationDetail?.degreeName?.length > 500) messages.push('Qualification can be of maximum 200 characters');\r\n\r\n if(this.initQualDetail.ospapPharmacistQualificationDetail?.universityName && \r\n this.initQualDetail.ospapPharmacistQualificationDetail?.universityName?.length > 1000) messages.push('University can be of maximum 1000 characters');\r\n }\r\n\r\n if (this.registrationRouteSwitchValue === 'Northern Ireland') {\r\n if (!this.qualificationDetailsExists.courseExists) if (this.checkIfInValid(this.initQualDetail.irelandPharmacistQualificationDetail?.courseId)) messages.push('Please enter the degree')\r\n if(!this.qualificationDetailsExists.qualifiedExists) if (this.checkIfInValid(this.initQualDetail.irelandPharmacistQualificationDetail?.yearObtained) || this.isYearInvalid(this.initQualDetail.irelandPharmacistQualificationDetail?.yearObtained,'yearQualified')) messages.push('Please enter year passed')\r\n }\r\n\r\n valid = valid && !messages.length;\r\n this.validity$.next({ valid: valid, messages: messages, touched: this.touched });\r\n }\r\n}\r\n","\r\n

    {{ title }}

    \r\n\r\n

    Please review the information we hold about your education and training. \r\n If any of the information is missing please add it, please include the name of the qualification and \r\n the institution that awarded the qualification. We may contact you to ask for verification of the information you provide.

    \r\n\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    200)\">\r\n \r\n \r\n \r\n

    200 \">\r\n You can only enter a maximum of 200 characters in this field\r\n

    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    200)\">\r\n \r\n \r\n \r\n

    200 \">\r\n You can only enter a maximum of 200 characters in this field\r\n

    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    200)\">\r\n \r\n \r\n

    200 \">\r\n You can only enter a maximum of 200 characters in this field\r\n

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

    \r\n {{isYearInvalid(initQualDetail.eeaPharmacistQualificationDetail.datePassed,'datePassed')}}\r\n

    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n\r\n \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    200)\">\r\n \r\n \r\n

    200 \">\r\n You can only enter a maximum of 200 characters in this field\r\n

    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    2000)\">\r\n \r\n \r\n

    2000 \">\r\n You can only enter a maximum of 2000 characters in this field\r\n

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

    \r\n {{isYearInvalid(initQualDetail.eeaPharmacistQualificationDetail.dateStarted, 'dateStarted')}}\r\n

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

    \r\n {{isYearInvalid(initQualDetail.eeaPharmacistQualificationDetail.datePassed, 'datePassed')}}\r\n

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

    \r\n
    CV upload
    \r\n \r\n

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

    \r\n Please provide a summary of your career, qualifications and\r\n education\r\n

    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    200 )\">\r\n \r\n \r\n

    200 \">\r\n You can only enter a maximum of 200 characters in this field\r\n

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    2000)\">\r\n \r\n \r\n

    2000 \">\r\n You can only enter a maximum of 2000 characters in this field\r\n

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

    \r\n {{isYearInvalid(initQualDetail.eeaPharmacistQualificationDetail.datePassed, 'datePassed')}}\r\n

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

    \r\n
    Education
    \r\n \r\n

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

    \r\n If the details of your degree are not shown then please provide\r\n the title of your degree and the year that you passed.\r\n

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

    \r\n {{isYearInvalid(initQualDetail.ukPharmacistQualificationDetail.yearQualified, 'yearQualified')}}\r\n

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

    0)\">\r\n Pre-registration training/foundation training\r\n

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

    \r\n
    Registration assessment
    \r\n

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

    If you joined the register since 1993 please check the registration assessment details below, and add the year you passed the exam if no information is shown. If you joined the register before 1993 and did not sit the registration assessment please leave this question blank.

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

    \r\n {{isYearInvalid(initQualDetail.ukPharmacistQualificationDetail.assessmentYear,'assessmentYear')}}\r\n

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

    \r\n
    Initial pharmacy qualification details outside the UK
    \r\n \r\n

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

    \r\n If the details of your degree are not shown then please provide\r\n the title of your degree, the name of the university at which you\r\n obtained it and the year you passed.\r\n

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    200)\">\r\n \r\n \r\n \r\n

    200 \">\r\n You can only enter a maximum of 200 characters in this field\r\n

    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    1000)\">\r\n \r\n \r\n

    1000 \">\r\n You can only enter a maximum of 1000 characters in this field\r\n

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

    \r\n {{isYearInvalid(initQualDetail.ospapPharmacistQualificationDetail.yearObtained,'yearQualified')}}\r\n

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

    \r\n
    OSPAP qualification details
    \r\n

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

    0)\">\r\n
    Pre-registration training/foundation training
    \r\n

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

    \r\n
    Registration assessment
    \r\n

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

    If you joined the register since 1993 please check the registration assessment details below, and add the year you passed the exam if no information is shown. If you joined the register before 1993 and did not sit the registration assessment please leave this question blank.

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

    \r\n {{isYearInvalid(initQualDetail.ospapPharmacistQualificationDetail.assessmentYear,'assessmentYear')}}\r\n

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

    \r\n
    Education
    \r\n \r\n

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

    \r\n If the details of your degree are not shown then please provide\r\n the title of your degree and the name of the university at which\r\n you obtained it.\r\n

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

    \r\n {{isYearInvalid(initQualDetail.irelandPharmacistQualificationDetail.yearObtained,'yearQualified')}}\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 } from '@angular/core';\r\nimport { trainingDetails } from '../../../model/initialPharmacyQualificationDetail';\r\n\r\n@Component({\r\n selector: 'app-training-details',\r\n templateUrl: './training-details.component.html',\r\n styleUrls: ['./training-details.component.scss']\r\n})\r\nexport class TrainingDetailsComponent implements OnInit {\r\n editTrainingRow;\r\n addTrainingFlag: boolean = false;\r\n startDateTouched;\r\n endDateTouched;\r\n isEditTrainingDetails = false;\r\n @Input() trainingDetailsExists: boolean;\r\n @Input() existingTrainingDetails = [];\r\n trainingDetails: trainingDetails[];\r\n @Input() invalid: boolean = false;\r\n trainingDetailsSaved = false;\r\n @Output() saveTrainingDetails = new EventEmitter();\r\n dateRangeInvalid: boolean = false;\r\n currentDate = new Date();\r\n // allowEditOthers = true;\r\n @Input() touched = false;\r\n\r\n ngOnInit() {\r\n if (this.existingTrainingDetails && this.existingTrainingDetails.length > 0) {\r\n this.trainingDetails = this.existingTrainingDetails;\r\n } else {\r\n this.editTrainingRow = 0;\r\n this.initiateTrainingDetails();\r\n }\r\n if (this.trainingDetails?.length > 0 && this.trainingDetails?.length < 5 && !this.trainingDetailsExists && !this.checkObjectHasNullEmptyValue(this.trainingDetails[this.trainingDetails.length - 1])) this.addTrainingFlag = true;\r\n }\r\n\r\n addNew() {\r\n this.initiateTrainingDetails();\r\n this.editTrainingRow = this.trainingDetails.length - 1;\r\n this.isEditTrainingDetails = true;\r\n this.addTrainingFlag = false;\r\n // this.allowEditOthers = false;\r\n this.setstartEndDateNull();\r\n }\r\n\r\n editTrainingDetails(row) {\r\n this.addTrainingFlag = false;\r\n this.editTrainingRow = row;\r\n this.saveTrainingDetails.emit(this.trainingDetails);\r\n this.isEditTrainingDetails = true;\r\n }\r\n\r\n initiateTrainingDetails() {\r\n if (!this.trainingDetails) this.trainingDetails = [];\r\n this.trainingDetails.push({\r\n trainingSiteName: '',\r\n trainingSiteAddress: '',\r\n trainingStartDate: null,\r\n trainingEndDate: null\r\n });\r\n }\r\n\r\n updateTraining(i, updatedTrainingDetails) {\r\n if (this.trainingDetails.length < 5) this.addTrainingFlag = true;\r\n this.editTrainingRow = null;\r\n this.isEditTrainingDetails = false;\r\n this.trainingDetailsSaved = true;\r\n // this.allowEditOthers = true;\r\n this.saveTrainingDetails.emit(this.trainingDetails);\r\n }\r\n\r\n setstartEndDateNull() {\r\n this.startDateTouched = false;\r\n this.endDateTouched = false;\r\n }\r\n\r\n deleteTrainingDetails(index) {\r\n this.trainingDetails.splice(index, 1);\r\n this.editTrainingRow = null;\r\n this.saveTrainingDetails.emit(this.trainingDetails);\r\n this.dateRangeInvalid = false;\r\n this.isEditTrainingDetails = false;\r\n // this.allowEditOthers = true;\r\n\r\n if (this.trainingDetails.length === 0) {\r\n this.initiateTrainingDetails();\r\n this.editTrainingRow = 0;\r\n this.addTrainingFlag = false;\r\n this.trainingDetailsSaved = false;\r\n } else this.addTrainingFlag = true;\r\n this.setstartEndDateNull();\r\n }\r\n\r\n getErrorOnDelete(training) {\r\n let showErr = false;\r\n if(training) showErr = this.checkObjectHasNullEmptyValue(training);\r\n return showErr;\r\n }\r\n\r\n isDatePickerClicked(type) {\r\n if (type === 'startDate') this.startDateTouched = true;\r\n if (type === 'endDate') this.endDateTouched = true;\r\n }\r\n\r\n onDateChange(training) {\r\n if (training.trainingStartDate && training.trainingEndDate) {\r\n this.dateRangeInvalid = new Date(training.trainingStartDate) > new Date(training.trainingEndDate) ? true : false;\r\n }\r\n }\r\n\r\n allowSave(training: { siteName: string; siteAddress: string; startDate: Date; endDate: Date }) {\r\n return training['trainingSiteName'] && training['trainingSiteAddress'] && training['trainingStartDate'] && training['trainingEndDate'] && !this.dateRangeInvalid && training['trainingSiteName'].length < 2001 && training['trainingSiteAddress'].length < 3001;\r\n }\r\n\r\n get getTrainingRowEditable(): number{\r\n return this.editTrainingRow;\r\n }\r\n\r\n checkObjectHasNullEmptyValue(obj): boolean {\r\n for (const [key, value] of Object.entries(obj)) {\r\n if (!value || value === '') return true;\r\n }\r\n return false;\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    2000)\">\r\n
    \r\n \r\n \r\n

    2000 \">\r\n You can only enter a maximum of 2000 characters in this field\r\n

    \r\n \r\n

    \r\n Training site name is mandatory\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    3000 )\">\r\n
    \r\n \r\n

    3000 \">\r\n You can only enter a maximum of 3000 characters in this field\r\n

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

    \r\n Training site address is mandatory\r\n

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

    \r\n Training start date is mandatory\r\n

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

    \r\n Training end date is mandatory\r\n

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

    \r\n Invalid date range - start and end date must not overlap\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \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, forwardRef, Input, ChangeDetectorRef } from \"@angular/core\";\r\nimport { FormStepperService } from \"../../../../shared/formStepper/formStepper.service\";\r\nimport { FormStepComponent } from \"../../../../shared/formStepper/formStep.component\";\r\nimport { CCPSApplicationStep } from \"../../model/ccpsApplicationStep\";\r\nimport { RegulatoryBodies } from \"../../model/regulatoryBodies\";\r\nimport { ProfessionalStandingDetail } from \"../../model/professionalStandingDetail\";\r\nimport { RegistrationService } from \"../../../../core/service/registration.service\";\r\nimport { CCPSApplication } from \"../../model/ccpsApplication\";\r\n\r\n@Component({\r\n selector: \"app-overseas-regular-details\",\r\n templateUrl: \"./overseas-regular-details.component.html\",\r\n styleUrls: [\"./overseas-regular-details.component.scss\"],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => OverseasRegularDetailsComponent),\r\n },\r\n ],\r\n})\r\nexport class OverseasRegularDetailsComponent\r\n extends FormStepComponent\r\n implements OnInit\r\n{\r\n title = \"Requesting regulator details\";\r\n stepId = CCPSApplicationStep.OverseasRegularDetails;\r\n\r\n countrySelected;\r\n regulatorSelected;\r\n address;\r\n emailAddress;\r\n contactName;\r\n telNumber;\r\n toEmailAddress;\r\n professionalStandingDetail: ProfessionalStandingDetail;\r\n regulatoryBody: RegulatoryBodies;\r\n regulatoryBodiesSubmitted = [];\r\n isRegBodySubmitted = false;\r\n invalidTelNumber = false;\r\n\r\n @Input() application: CCPSApplication;\r\n countries: any;\r\n regulatoryBodies: any[];\r\n countryAndRegBodies = {};\r\n\r\n constructor(formStpperService: FormStepperService, \r\n private registrationService: RegistrationService,\r\n private cd: ChangeDetectorRef) {\r\n super(formStpperService);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.countries = this.application.countries?.sort();\r\n this.regulatoryBodies = [];\r\n this.professionalStandingDetail = this.application.activeForm.professionalStandingDetail;\r\n\r\n let ccpsFormDetails = localStorage.getItem('ccpsFormDetails');\r\n if(ccpsFormDetails) {\r\n JSON.parse(ccpsFormDetails).forEach( reg => {\r\n if(reg.formId !== this.application.activeForm.id) this.regulatoryBodiesSubmitted.push(reg.regulatoryBodyId);\r\n });\r\n }\r\n\r\n this.getRegulatorBodies();\r\n\r\n if (this.professionalStandingDetail) {\r\n this.selectCountryHandler(this.professionalStandingDetail.country);\r\n if(this.professionalStandingDetail?.regulatoryBodyId) this.selectRegulatoryBodyHandler(this.professionalStandingDetail.regulatoryBodyId);\r\n }\r\n\r\n this.ready$.next(true);\r\n }\r\n\r\n getRegulatorBodies(){\r\n this.application.regulatoryBodies.forEach((regBody:RegulatoryBodies) => {\r\n if(!this.countryAndRegBodies[regBody.country]) {\r\n this.countryAndRegBodies[regBody.country] = [regBody];\r\n } else{\r\n this.countryAndRegBodies[regBody.country].push(regBody);\r\n }\r\n });\r\n }\r\n\r\n populateForm() {}\r\n\r\n checkIfRegBodySubmitted(regBodySelected): boolean {\r\n if(!this.regulatoryBodiesSubmitted || this.regulatoryBodiesSubmitted.length === 0) return false;\r\n if(this.regulatoryBodiesSubmitted.indexOf(regBodySelected)>=0) this.isRegBodySubmitted = true; else this.isRegBodySubmitted = false;\r\n }\r\n\r\n isTelNumberValid() {\r\n let isValid;\r\n let regex = /^[0-9\\+]*$/;\r\n if(!this.professionalStandingDetail.telephone) isValid = true;\r\n else isValid = regex.test(this.professionalStandingDetail.telephone);\r\n return isValid;\r\n }\r\n\r\n \r\n validate() {\r\n const messages = [];\r\n if(!this.professionalStandingDetail.country || this.professionalStandingDetail.country==\"undefined\"){\r\n messages.push('Please select country');\r\n }\r\n if(!this.professionalStandingDetail.regulatoryBodyId || this.isRegBodySubmitted){\r\n messages.push('Please select a right regulatory body');\r\n }\r\n \r\n if(!this.isTelNumberValid()) messages.push(`Please check that you have entered your mobile phone number correctly (only numbers and '+' allowed)`);\r\n\r\n this.validity$.next({ valid: messages.length === 0, messages, touched: this.touched });\r\n }\r\n\r\n onCountryChange(event) {\r\n this.professionalStandingDetail.regulatoryBodyId = null;\r\n this.cd.detectChanges();\r\n this.selectChangeCountryHandler(event?.target?.value);\r\n }\r\n\r\n selectChangeCountryHandler(data) { \r\n this.selectCountryHandler(data);\r\n this.validate();\r\n }\r\n \r\n selectCountryHandler(data) {\r\n let value = data ? data : null;\r\n this.regulatoryBodies=[];\r\n\r\n if(!value){\r\n this.countrySelected=value;\r\n this.regulatorSelected=null;\r\n this.professionalStandingDetail.country = null;\r\n this.professionalStandingDetail.regulatoryBodyId = null;\r\n }\r\n else{\r\n this.countries = this.application.countries?.sort();\r\n this.countrySelected = value;\r\n\r\n if(this.countryAndRegBodies[value]) {\r\n this.regulatoryBodies = this.countryAndRegBodies[value].sort((regBody1, regBody2) => regBody1.name.localeCompare(regBody2.name));\r\n }\r\n\r\n let regBody; \r\n regBody = this.professionalStandingDetail.regulatoryBodyId ? this.professionalStandingDetail.regulatoryBodyId : null;\r\n this.selectRegulatoryBodyHandler(regBody);\r\n }\r\n }\r\n\r\n selectChangeRegulatoryBodyHandler(value: any) {\r\n this.selectRegulatoryBodyHandler(value); \r\n this.validate();\r\n }\r\n\r\n selectRegulatoryBodyHandler(value) {\r\n this.regulatoryBody = null;\r\n if(!value)\r\n {\r\n this.professionalStandingDetail.regulatoryBodyId = null;\r\n }\r\n else{\r\n this.regulatorSelected=value;\r\n this.countryAndRegBodies[this.professionalStandingDetail.country].forEach((regulatoryBody) => {\r\n if (regulatoryBody.id === value) {\r\n this.regulatoryBody = regulatoryBody;\r\n }\r\n });\r\n }\r\n this.checkIfRegBodySubmitted(this.professionalStandingDetail.regulatoryBodyId);\r\n }\r\n}\r\n","\r\n

    {{title}}

    \r\n\r\n

    \r\n Please select the country and the name of the regulatory organisation which has requested a CCPS for you.\r\n

    \r\n If the regulator is not listed below, please contact us.\r\n We will not be able to process your request until we have verified the details of the regulator. We will send the CCPS directly to your selected regulator.\r\n

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

    \r\n CCPS application for selected regulatory body is already submitted\r\n

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

    \r\n We will send your CCPS and FTP history directly to the organisation you have identified above. This will usually be in the form of an email and PDF attachment. If there is a specific contact to whom we should send it please add the details below.\r\n

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

    \r\n Please check that you have entered your mobile phone number correctly (only numbers and '+' allowed)\r\n

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

    \r\n Please check that you have entered your email address correctly\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n","import { Component, OnInit, forwardRef, Input, ViewChild, ElementRef } from '@angular/core';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { CCPSApplicationStep } from '../../model/ccpsApplicationStep';\r\nimport { CreditCard, creditCards } from '../../../../../app/renewal/model/CreditCard';\r\nimport { CCPSApplication } from '../../model/ccpsApplication';\r\nimport { CollectionMethod } from '../../../../../app/payment/model/CollectionMethod';\r\nimport { RenewalService } from '../../../../../app/core/service/renewal.service';\r\nimport { CCPSService } from '../../../../../app/core/service/ccps.service';\r\n\r\n@Component({\r\n selector: 'app-payment',\r\n templateUrl: './payment.component.html',\r\n styleUrls: ['./payment.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => PaymentComponent)\r\n }\r\n ]\r\n})\r\nexport class PaymentComponent extends FormStepComponent implements OnInit {\r\n\r\n title = 'Payment';\r\n stepId = CCPSApplicationStep.Payment;\r\n fee;\r\n cartId;\r\n selectedCard: CreditCard;\r\n creditCards = creditCards;\r\n worldpayConfig;\r\n @ViewChild('worldpayForm', { static: false }) worldpayForm: ElementRef;\r\n application: CCPSApplication;\r\n outStandingPaymentDetails = [];\r\n collectionMethod = CollectionMethod;\r\n\r\n\r\n constructor(private renewalService: RenewalService,\r\n stepper: FormStepperService, private ccpsService: CCPSService) {\r\n super(stepper);\r\n }\r\n\r\n ngOnInit() {\r\n this.fee=this.application.certProfessionalStandingApplicationFee;\r\n }\r\n\r\n load() {\r\n this.renewalService.getWordpayConfig().subscribe(config => {\r\n this.worldpayConfig = config;\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n let isDateValid = true;\r\n\r\n if(!isDateValid) {\r\n messages.push(\"The date of removal from the register must be greater than today's date, please select a valid date.\");\r\n }\r\n const valid = !!this.selectedCard && isDateValid;\r\n if (!valid) {\r\n messages.push('You must select a card type to proceed to payment');\r\n }\r\n\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n beforeNext() {\r\n this.ccpsService.saveApplicationPayment().subscribe((result) => {\r\n this.cartId = JSON.stringify(result.paymentIdentifier);\r\n setTimeout(() => {\r\n //this.renderer.setProperty(this.worldpayForm.nativeElement, 'value', 'submit');\r\n this.worldpayForm.nativeElement.submit();\r\n }, 100);\r\n });\r\n return false;\r\n }\r\n\r\n populateForm() { }\r\n\r\n}\r\n","\r\n

    \r\n Application fee\r\n \"Worldpay\r\n

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

    Fees to be paid

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

    \r\n Certificate of current professional status application fee: {{fee | currency: 'GBP': 'symbol' :'.2'}}\r\n

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

    \r\n This fee covers the processing of your application and is non-refundable.\r\n

    \r\n

    \r\n You will receive an update on the status of your application within 28 days of making payment. \r\n

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

    Please select your card type

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

    \r\n We can only accept payments made in pounds sterling (GBP). Payments are processed using worldpay, for more\r\n information please\r\n review their\r\n privacy policy.\r\n

    \r\n

    \r\n When you make a card payment, you may be redirected to your card provider’s site to enter another password\r\n before they authorise\r\n your payment. You can find out more about 3-D Secure authentication from your card provider.\r\n

    \r\n
    \r\n \r\n \r\n \r\n \"{{card.name}}\r\n
    {{card.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
    ","import { Component, OnInit, Inject, ViewChild, ElementRef, ChangeDetectorRef } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Registrant } from './model/Registrant';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { PreregService } from '../core/service/prereg.service';\r\n\r\nimport { RegApplication } from '../prereg/model/RegApplication';\r\n\r\nimport { CountersignatureOutcome } from '../prereg/model/CountersignatureOutcome';\r\nimport { FormScope } from './model/FormScope';\r\nimport { TechnicianService } from '../core/service/technician.service';\r\nimport { ValidationError } from '../core/model/ValidationError';\r\nimport { TechnicianApplication } from '../technician/model/TechnicianApplication';\r\nimport { AssessmentReportService } from '../core/service/assessmentReport.service';\r\nimport { AssessmentReport } from '../prereg/assessment-report/models/AssessmentReport';\r\nimport { FinalDeclaration } from '../prereg/final-declaration/model/FinalDeclaration';\r\nimport { FinalDeclarationService } from '../core/service/finalDeclaration.service';\r\nimport { IndependentPrescriberService } from '../core/service/independentPrescriber.service';\r\nimport { IndependentPrescriberApplication } from './independent-precriber/model/IndependentPrescriberApplication';\r\nimport { IndependentPrescriberData } from './model/IndependentPrescriberData';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n templateUrl: './countersign.component.html',\r\n styleUrls: ['countersign.scss']\r\n})\r\nexport class CountersignComponent implements OnInit {\r\n\r\n id: string;\r\n date: string;\r\n name: string;\r\n loading = false;\r\n application: RegApplication | TechnicianApplication | AssessmentReport | FinalDeclaration |IndependentPrescriberData;\r\n isTechnician = false;\r\n submitClicked;\r\n CountersignatureOutcome = CountersignatureOutcome;\r\n submitting;\r\n response;\r\n responseReason;\r\n @ViewChild('responseReasonInput') responseReasonInput: ElementRef;\r\n certified: boolean = false;\r\n validationErrors: any;\r\n technicianApplicationValidationFailed: boolean = false;\r\n role: number;\r\n isAssessmentReport = false;\r\n isFinalDeclaration = false;\r\n FormScope = FormScope;\r\n technicianAndROSApplicationValidationFailed = false;\r\n isPrescriber = false;\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private auth: AuthService,\r\n private preregService: PreregService,\r\n private arosService: AssessmentReportService,\r\n private finalDeclarationService: FinalDeclarationService,\r\n private independentPrescriberService: IndependentPrescriberService,\r\n\r\n private technicianService: TechnicianService,\r\n private ref: ChangeDetectorRef\r\n ) {\r\n this.id = this.route.snapshot.params['id'];\r\n this.date = this.route.snapshot.params['date'];\r\n this.role = +this.route.snapshot.params['role'];\r\n }\r\n\r\n setFocus(response) {\r\n if (response === CountersignatureOutcome.Rejected) {\r\n setTimeout(() => { this.responseReasonInput.nativeElement.focus(); }, 1000);\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.loading = true;\r\n switch (this.role) {\r\n case FormScope.TechnicianApplicant:\r\n this.isTechnician = true;\r\n this.preregService.getTechnicianCountersignerForm(this.id).subscribe((application: TechnicianApplication) => {\r\n this.application = application;\r\n this.name = application.trainee.forenames + ' ' + application.trainee.surname;\r\n this.loading = false;\r\n })\r\n break;\r\n case FormScope.Trainee:\r\n this.preregService.getCountersignerForm(this.id).subscribe((application: RegApplication) => {\r\n this.application = application;\r\n this.name = application.trainee.forenames + ' ' + application.trainee.surname;\r\n this.loading = false;\r\n });\r\n break;\r\n case FormScope.ProgressReport:\r\n this.isAssessmentReport = true;\r\n this.arosService.getCountersignerForm(this.id).subscribe((application: AssessmentReport) => {\r\n this.application = application;\r\n this.isAssessmentReport = this.application.isOpen;\r\n this.name = application.trainee.forenames + ' ' + application.trainee.surname;\r\n if (!this.isAssessmentReport) {\r\n this.router.navigate(['/registration']);\r\n this.loading = false;\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.loading = false;\r\n });\r\n break;\r\n case FormScope.FinalDeclaration:\r\n this.isFinalDeclaration = true;\r\n this.finalDeclarationService.getCountersignerForm(this.id).subscribe((application: FinalDeclaration) => {\r\n this.application = application;\r\n this.isFinalDeclaration = this.application.isOpen;\r\n this.name = application.trainee.forenames + ' ' + application.trainee.surname;\r\n if (!this.isFinalDeclaration) {\r\n this.router.navigate(['/registration']);\r\n this.loading = false;\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.loading = false;\r\n });\r\n break;\r\n /*Independent prescriber */\r\n case FormScope.IndependentPrescriber:\r\n this.isPrescriber = true;\r\n this.independentPrescriberService.getCountersignerForm(this.id).subscribe((application: IndependentPrescriberData) => {\r\n this.application = application;\r\n // this.name = application.registrant.forenames + ' ' + application.registrant.surname;\r\n if (!this.isPrescriber) {\r\n this.router.navigate(['/registration']);\r\n this.loading = false;\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.loading = false;\r\n });\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n\r\n\r\n\r\n }\r\n\r\n ngAfterContentChecked() {\r\n this.ref.detectChanges();\r\n }\r\n\r\n print() {\r\n (window).print();\r\n }\r\n\r\n exit() {\r\n this.router.navigate(['/registration']);\r\n }\r\n\r\n submitOutcome() {\r\n this.submitClicked = true;\r\n let payload = null;\r\n if (!this.response || (this.response === CountersignatureOutcome.Rejected && !this.responseReason)) {\r\n this.setFocus(this.response);\r\n return;\r\n }\r\n\r\n if (this.isTechnician) {\r\n if (this.certified === false && (this.response === this.CountersignatureOutcome.Approved\r\n || this.response === this.CountersignatureOutcome.Rejected)) {\r\n this.validationErrors = new Array();\r\n const valError = {\r\n errors: [\"Please open the photo attachment above and if it is true likeness of the applicant confirm this by checking the tick box\"],\r\n property: \"Certify Photo\"\r\n };\r\n this.validationErrors.push(valError);\r\n this.technicianAndROSApplicationValidationFailed = true;\r\n return false;\r\n }\r\n\r\n const outcome = {\r\n id: this.id,\r\n decision: this.response,\r\n isCertifiedPhoto: this.certified,\r\n feedback: this.responseReason\r\n };\r\n this.submitting = true;\r\n this.technicianService.submitCountersignatureOutcome(outcome)\r\n .subscribe(() => {\r\n this.submitting = false;\r\n this.exit();\r\n }, error => {\r\n this.submitting = false;\r\n });\r\n } else {\r\n\r\n if (this.certified === false && this.response === this.CountersignatureOutcome.Approved) {\r\n this.validationErrors = new Array();\r\n const valError = {\r\n errors: [\"Please open the photo attachment above and if it is true likeness of the applicant confirm this by checking the tick box\"],\r\n property: \"Certify Photo\"\r\n };\r\n this.validationErrors.push(valError);\r\n this.technicianAndROSApplicationValidationFailed = true;\r\n return false;\r\n }\r\n\r\n payload = {\r\n id: this.id,\r\n decision: this.response,\r\n isCertifiedPhoto: this.certified,\r\n feedback: this.responseReason\r\n };\r\n this.submitting = true;\r\n this.preregService.submitCountersignatureOutcome(payload)\r\n .subscribe(() => {\r\n this.exit();\r\n }, error => {\r\n this.submitting = false;\r\n });\r\n }\r\n\r\n\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n

    Countersign application

    \r\n

    Respond to mentor request

    \r\n
    \r\n \r\n
    Print
    \r\n
    \r\n
    \r\n \r\n
    Back
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n\r\n
    \r\n

    Application for registration

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

    Certify photo

    \r\n \r\n \r\n \r\n I have viewed the photograph provided and I confirm that it is a true likeness of the applicant {{ name }}.\r\n \r\n \r\n
    \r\n

    \r\n Please certify photo\r\n

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

    Application for registration

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

    Certify photo

    \r\n \r\n \r\n \r\n I have viewed the photograph provided and I confirm that it is a true likeness of the applicant {{ name }}.\r\n \r\n \r\n
    \r\n

    \r\n Please certify photo\r\n

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

    39 week progress report

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

    Final declaration

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

    Independent prescriber

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

    Your decision

    \r\n
    \r\n

    \r\n I declare that:\r\n

    \r\n
      \r\n
    • \r\n I have reviewed the information in the application including all supporting documents.\r\n
    • \r\n
    • \r\n To the best of my knowledge, the information given in this application, including supporting documents,\r\n is true, complete and accurate, and relates to the applicant.\r\n
    • \r\n
    • \r\n I know of no reason why this applicant should not be registered as a pharmacy technician.\r\n
    • \r\n
    \r\n
    \r\n\r\n

    \r\n As part of the registration application process, we will record your outcome and any supporting text. This\r\n will be shown to the applicant and used by the GPhC when processing the application.\r\n

    \r\n\r\n \r\n I support this application\r\n \r\n I DO NOT support this application\r\n \r\n This application has\r\n been\r\n sent to me in error\r\n \r\n\r\n \r\n
    \r\n \r\n \r\n \r\n

    \r\n Please explain why you don’t support this application\r\n

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \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, Input, ViewChild, QueryList, ViewChildren } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { CountersignatureOutcome } from '../../prereg/model/CountersignatureOutcome';\r\nimport { Address } from '../../account/model/Address';\r\nimport { TrainingPlacement } from '../../prereg/model/TrainingPlacement';\r\nimport { User } from '../../account/model/User';\r\nimport { NgForm } from '@angular/forms';\r\nimport { Tooltip } from './../../core/tooltip/Tooltip';\r\nimport { AssessmentTutorDetails } from '../../prereg/assessment-report/models/AssessmentTutors';\r\nimport { FinalDeclarationService } from '../../core/service/finalDeclaration.service';\r\nimport { FinalDeclaration } from '../../prereg/final-declaration/model/FinalDeclaration';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n selector: 'app-final-declaration-countersign-response',\r\n templateUrl: './finalDeclarationCountersignResponse.component.html',\r\n styleUrls: ['../countersign.scss']\r\n})\r\nexport class FinalDeclarationCountersignResponseComponent implements OnInit {\r\n\r\n @ViewChild('form') countersignForm: NgForm;\r\n @ViewChildren('formInput') allInputs: QueryList;\r\n @Input() application: FinalDeclaration;\r\n id: string;\r\n date: string;\r\n name: string;\r\n loading = false;\r\n CountersignatureOutcome = CountersignatureOutcome;\r\n response;\r\n responseReason;\r\n traineePerfomance;\r\n role: number;\r\n submitting = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n }\r\n showDetailsHelp = false;\r\n comments = '';\r\n otherComment = '';\r\n otherLeaveComment = '';\r\n validationErrors: any;\r\n certifiedPhotoValidationFailed: boolean = false;\r\n certifiedPhotoIdentityValidationFailed: boolean = false;\r\n\r\n trainingSiteAdress: Array;\r\n user: User;\r\n weeksSinceTrainingStart: number;\r\n validInputs: boolean;\r\n anyProblemsEffected;\r\n annualLeaves;\r\n sickLeaves;\r\n otherLeaves;\r\n otherLeaveDetails;\r\n\r\n @Input() trainingSites: TrainingPlacement[];\r\n @Input() tutors: AssessmentTutorDetails[];\r\n professionalHealthcareName: any;\r\n professionalHealthJobRole: any;\r\n professionalHealthRegNumber: any;\r\n\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private auth: AuthService,\r\n private finalDeclarationService: FinalDeclarationService\r\n ) {\r\n this.id = this.route.snapshot.params['id'];\r\n this.date = this.route.snapshot.params['date'];\r\n this.role = +this.route.snapshot.params['role'];\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n this.user = this.auth.user;\r\n this.formatAddress();\r\n\r\n }\r\n\r\n public formatName(trainee): string {\r\n if(trainee !== undefined && trainee !== null) {\r\n return `${trainee.title.name} ${trainee.forenames} ${trainee.middleName ? trainee.middleName : ''} ${trainee.surname}`\r\n }\r\n }\r\n\r\n formatAddress(): void {\r\n if(this.application !== undefined) {\r\n this.trainingSiteAdress = this.application.training.trainedAt.map((training: TrainingPlacement) => {\r\n return new Address(training.address).toString('
    ');\r\n });\r\n }\r\n }\r\n\r\n print(): void {\r\n (window).print();\r\n }\r\n\r\n exit(): void {\r\n this.router.navigate(['/registration']);\r\n }\r\n\r\n focusOnInvalidInputs(): void {\r\n this\r\n .allInputs\r\n .filter(input => input.nativeElement.className.includes('ng-invalid'))\r\n .forEach(input => input.nativeElement.focus());\r\n }\r\n\r\n submitOutcome(formValue): void {\r\n this.submitting = true;\r\n const approved = `I confirm that I have discussed the satisfactory outcome of this report with ${this.professionalHealthcareName} and having job role as ${this.professionalHealthJobRole} of healthcare professional with registration number ${this.professionalHealthRegNumber}.`\r\n const outcome = {\r\n id: this.id,\r\n decision: this.response,\r\n feedback: this.responseReason || approved,\r\n countersignerComment: formValue\r\n };\r\n const submitOutcome = (anoutcome = outcome): void => {\r\n this.submitting = false;\r\n this.validInputs = true;\r\n this.finalDeclarationService.submitCountersignatureOutcome(anoutcome).subscribe(() => {\r\n const tutorFeedback = anoutcome.feedback;\r\n if (tutorFeedback === CountersignatureOutcome.Approved) {\r\n this.responseReason = approved;\r\n } else if (tutorFeedback === CountersignatureOutcome.Rejected) {\r\n this.responseReason = this.responseReason;\r\n }\r\n this.submitting = true;\r\n this.exit();\r\n }, () => {\r\n this.submitting = false;\r\n this.validInputs = false;\r\n });\r\n };\r\n\r\n if (this.response === CountersignatureOutcome.Refused) {\r\n this.validInputs = true;\r\n outcome['countersignerComment'] = '';\r\n submitOutcome(outcome);\r\n }\r\n\r\n if (this.response === CountersignatureOutcome.Approved ||\r\n this.response === CountersignatureOutcome.Rejected\r\n ) {\r\n (this.countersignForm.invalid) ? this.focusOnInvalidInputs() : submitOutcome();\r\n }\r\n }\r\n}\r\n","
    \r\n
    \r\n

    \r\n You have received this request from your foundation trainee as they have reached the final stages of\r\n their\r\n training. Please make sure that you check the trainee’s details.\r\n\r\n\r\n By indicating a satisfactory outcome below, you are confirming that the trainee has met all interim learning outcomes and registration assessment framework\r\n will have successfully completed 52 weeks of training within the next four weeks, and has a professional attitude\r\n and a\r\n sense of responsibility sufficient for a registered pharmacist. For more information about your accountability in\r\n making\r\n this declaration, please see the \r\n Pharmacist foundation supervisors page of the main GPhC website.\r\n

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

    Your details

    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n {{ user?.toString()}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n

    Trainee details

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n {{ formatName(application?.trainee)}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n {{site.trainingSite}}\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n

    Comments

    \r\n
    \r\n

    \r\n I declare that:\r\n

    \r\n
      \r\n
    • \r\n The trainee has met all 54 interim learning outcomes and is, in my opinion, able to apply in practice knowledge\r\n of\r\n the law\r\n covering the practice of pharmacy.\r\n
    • \r\n
    • \r\n The trainee has a professional attitude and sense of responsibility, and has demonstrated behaviours which\r\n indicate they\r\n could meet the standards for pharmacy professionals once registered, including using their professional\r\n judgement and\r\n speaking up when they have concerns or when things go wrong (standards 5 and 8 of the standards for pharmacy\r\n professionals).\r\n
    • \r\n
    • \r\n The trainee is a fit and proper person and safe to be registered (if they choose to apply).\r\n
    • \r\n
    • \r\n The trainee will have completed at least 52 weeks of training in total, within the next four weeks.\r\n
    • \r\n
    • \r\n I do not know of, or have not observed, any mental or physical health problems which I believe may compromise\r\n the\r\n trainee’s ability to carry out the duties and responsibilities of a registered pharmacist.\r\n
    • \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n
    \r\n\r\n \r\n Yes\r\n \r\n No\r\n \r\n \r\n\r\n \r\n
    \r\n

    \r\n Please select an option\r\n

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

    \r\n \r\n

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

    1000 \">\r\n You can only enter a maximum of 1000 characters in this field\r\n

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

    \r\n Please fill in the absence details for your trainee below.\r\n

    \r\n

    \r\n Trainees have a 40 day limit on the number of days leave they can take throughout the foundation year.\r\n

    \r\n

    \r\n If your trainee has been absent for long periods of time, please consider this in your comments above and in\r\n your\r\n overall assessment of their readiness to progress.\r\n

    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n \r\n = 48 \" [required]=\"response !== CountersignatureOutcome.Refused\" ngModel\r\n #annual=\"ngModel\" [(ngModel)]=\"annualLeaves\" />\r\n
    \r\n\r\n \r\n
    \r\n

    \r\n Please enter a value, if no days have been taken, please enter ’0'\r\n

    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n \r\n = 48 \" [required]=\"response !== CountersignatureOutcome.Refused\" ngModel\r\n #sick=\"ngModel\" [(ngModel)]=\"sickLeaves\" />\r\n
    \r\n \r\n
    \r\n

    \r\n Please enter a value, if no days have been taken, please enter ’0'\r\n

    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n = 48 \" [required]=\"response !== CountersignatureOutcome.Refused\" ngModel\r\n #otherAbsents=\"ngModel\" [(ngModel)]=\"otherLeaves\" />\r\n\r\n
    \r\n \r\n
    \r\n

    \r\n Please enter a value, if no days have been taken, please enter ’0'\r\n

    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n 0\">\r\n
    \r\n \r\n \r\n

    500 \">\r\n You can only enter a maximum of 500 characters in this field\r\n

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

    \r\n Please enter a reason\r\n

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

    Supervisor confirmation

    \r\n\r\n \r\n \r\n Satisfactory and is competent to be registered\r\n \r\n \r\n Unsatisfactory and is not yet competent to be registered\r\n \r\n This application has been\r\n sent in error\r\n \r\n\r\n
    \r\n

    If you have recorded a satisfactory outcome for your trainee, give the details of the healthcare professional\r\n you have\r\n discussed this outcome with in the boxes below.

    \r\n

    \r\n Please make the healthcare professional aware that we will keep this information and may share it with the\r\n trainee. We\r\n may also contact them in relation to this decision.\r\n

    \r\n

    \r\n If you have recorded an unsatisfactory outcome, add any comments you feel will be helpful to your trainee.\r\n

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

    \r\n Please enter 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 Please enter job role\r\n

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

    \r\n Please enter registration number\r\n

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

    \r\n Registration number must contain 7 digits\r\n

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

    \r\n Please give details of why you considered the trainee to be unsatisfactory for registration at this time\r\n

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

    \r\n I confirm that I have met and discussed the outcome of the 52 week training report with the trainee.\r\n

    \r\n\r\n
    \r\n\r\n \r\n\r\n
    \r\n\r\n\r\n
    ","\r\nimport { AfterViewInit, ChangeDetectorRef, Component, OnInit, QueryList, ViewChild, ViewChildren } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { from, Observable, of } from 'rxjs';\r\nimport { IndependentPrescriberService } from '../../core/service/independentPrescriber.service';\r\nimport { User } from '../../account/model/User';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { LayoutService } from '../../core/service/layout.service';\r\nimport { CanComponentDeactivate } from '../../guard/CanDeactivate.guard';\r\nimport { ConfirmDialogComponent } from '../../shared/confirmDialog.component';\r\nimport { FormStepperComponent } from '../../shared/formStepper/formStepper.component';\r\nimport { FormStepperService } from '../../shared/formStepper/formStepper.service';\r\nimport { FormStepSummary } from '../../shared/formStepper/FormStepSummary';\r\nimport { IndependentPrescriberApplication } from './model/IndependentPrescriberApplication';\r\nimport { FormStepComponent } from '../../shared/formStepper/formStep.component';\r\nimport { ApplicationStatus } from '../../technician/model/ApplicationStatus';\r\nimport { IndependentPrescriberApplicationStep } from './model/IndependentPrescriberApplicationStep';\r\nimport { mergeMap } from 'rxjs/operators';\r\nimport { RegistrationService } from '../../core/service/registration.service';\r\nimport { ApplicationDetails } from '../model/ApplicationDetails';\r\n\r\n@Component({\r\n selector: 'app-independent-prescriber-application',\r\n moduleId: module.id,\r\n templateUrl: './independentPrescriberApplication.component.html',\r\n styleUrls: ['../../prereg/application-form.scss'],\r\n providers: [FormStepperService]\r\n})\r\nexport class IndependentPrescriberApplicationComponent implements OnInit, AfterViewInit,\r\n CanComponentDeactivate {\r\n\r\n user: User;\r\n loading = false;\r\n ready = true;\r\n saving = false;\r\n loadingError = false;\r\n application: IndependentPrescriberApplication;\r\n maxStep;\r\n minStep;\r\n showGuidanceWarning = false;\r\n isApplicationOpen = true;\r\n applicationClosedMessage: string;\r\n ineligible = false;\r\n allowResubmit = false;\r\n displayCounterSigningPage = false;\r\n allSteps: FormStepComponent[];\r\n allStepSummary: any;\r\n IndependentPrescriberStep = IndependentPrescriberApplicationStep;\r\n initialSteps;\r\n displayCounterSignaturePage = true;\r\n stepsWithoutCounterSign;\r\n menuWithoutCounterSign;\r\n onLoad = true;\r\n\r\n @ViewChildren(FormStepperComponent) formStepperComponents: QueryList;\r\n formStepper: FormStepperComponent;\r\n minExecution: number;\r\n start: number;\r\n constructor(private auth: AuthService,\r\n public layout: LayoutService,\r\n private dialog: MatDialog,\r\n public formStepperService: FormStepperService,\r\n private independentPrescriberService: IndependentPrescriberService,\r\n private cd: ChangeDetectorRef,\r\n private registrationService: RegistrationService\r\n ) { }\r\n\r\n get submitted() {\r\n return (this.application && (this.application.activeForm?.formStatus === ApplicationStatus.Submitted ||\r\n this.application.activeForm?.formStatus === ApplicationStatus.Approved ||\r\n this.application.activeForm?.formStatus === ApplicationStatus.PendingProcessing));\r\n }\r\n\r\n ngOnInit() {\r\n this.load();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.formStepperComponents.changes.subscribe((comps: QueryList ) => {\r\n this.formStepper = comps.first;\r\n this.cloneSteps();\r\n this.cloneSummary();\r\n this.checkIfCounterSignatureHasToBeDisplayed(this.application.form.countersignatures[0].isMentorRegistered);\r\n }); \r\n }\r\n\r\n load() {\r\n this.user = this.auth.user;\r\n this.loading = false;\r\n this.loadingError = false;\r\n this.registrationService.getAvailableForms().subscribe((details : ApplicationDetails) => {\r\n this.isApplicationOpen = details.isIndyPrescAppAvailable;\r\n });\r\n this.independentPrescriberService.getApplication(this.auth.user.registrationStatus).subscribe( application => {\r\n this.application = application;\r\n\r\n if (this.application.activeForm.step) {\r\n this.maxStep = this.application.activeForm.step;\r\n }\r\n if (this.application.activeForm.minStep) {\r\n this.minStep = this.application.activeForm.minStep;\r\n }\r\n\r\n this.loading = false;\r\n this.ready = true;\r\n // setTimeout(() => {\r\n // this.showGuidanceWarning = this.formStepper && this.formStepper.currentStep === IndependentPrescriberApplicationStep.QualificationDetails;\r\n // });\r\n }, error => {\r\n this.loading = false;\r\n this.loadingError = true;\r\n });\r\n }\r\n\r\n\r\n warnForDirty(): Observable {\r\n\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n title: `Unsaved changes`,\r\n message: `

    Do you want to save your changes before exiting your application form?

    `\r\n }\r\n });\r\n return dialogRef.afterClosed()\r\n .pipe(mergeMap(shouldSave => {\r\n if (shouldSave) {\r\n this.layout.setFullscreenSpinner(true);\r\n return from(this.save().then(() => {\r\n return true;\r\n }, error => {\r\n // show error messages\r\n this.layout.setFullscreenSpinner(false);\r\n return false;\r\n }));\r\n } else {\r\n return of(true);\r\n }\r\n }));\r\n }\r\n\r\n canDeactivate() {\r\n if (!this.formStepper || !this.formStepper.currentStep || !this.formStepper.currentStep.dirty) { return true; }\r\n return this.warnForDirty();\r\n }\r\n\r\n public respond(): any {\r\n const respondObservable = new Observable(observer => {\r\n const end = performance.now();\r\n const duration = end - this.start;\r\n if (duration < this.minExecution) {\r\n setTimeout(() => {\r\n observer.next();\r\n }, Math.round(this.minExecution - duration));\r\n } else {\r\n observer.next();\r\n }\r\n });\r\n return respondObservable;\r\n }\r\n\r\n getPrescriber(resolve, reject) {\r\n this.independentPrescriberService.getApplication(this.auth.user.registrationStatus).subscribe(() => {\r\n this.respond().subscribe(() => {\r\n this.saving = false;\r\n resolve();\r\n });\r\n }, error => {\r\n this.respond().subscribe(() => {\r\n this.saving = false;\r\n reject(error);\r\n });\r\n });\r\n }\r\n\r\n savePrescriber(resolve, reject) {\r\n let counterSignatures = this.application.activeForm.countersignatures[0];\r\n \r\n\r\n if(this.application.pastApplications) {\r\n delete this.application.pastApplications;\r\n delete this.application.status;\r\n }\r\n\r\n if(this.application.activeForm.formStatus === ApplicationStatus.CounterSigned) {\r\n this.application.activeForm.attachments = [];\r\n }\r\n\r\n this.independentPrescriberService.saveApplication(this.application).subscribe(() => {\r\n this.respond().subscribe(() => {\r\n this.saving = false;\r\n resolve();\r\n \r\n });\r\n }, error => {\r\n this.respond().subscribe(() => {\r\n this.saving = false;\r\n reject(error);\r\n });\r\n });\r\n }\r\n\r\n save() {\r\n this.saving = true;\r\n this.application.activeForm.step = this.formStepperService.getFurthestStep();\r\n this.formStepper.currentStep.populateForm();\r\n return new Promise((resolve, reject) => {\r\n this.start = performance.now();\r\n this.minExecution = 300;\r\n this.savePrescriber(resolve,reject);\r\n \r\n });\r\n }\r\n\r\n\r\n goToStepId(stepId) {\r\n this.formStepper.goToStep(stepId);\r\n }\r\n\r\n\r\n goToStep(step: FormStepSummary) {\r\n if (step.disabled) { return; }\r\n this.formStepper.goToStep(step.stepId);\r\n }\r\n\r\n stepChanged(stepId) {\r\n setTimeout(() => {\r\n this.independentPrescriberService.setStep(this.application.activeForm.id, stepId).subscribe();\r\n this.application.activeForm.step = stepId;\r\n }, 1000);\r\n }\r\n\r\n stepChange(): () => Promise {\r\n return function () {\r\n return new Promise((resolve, reject) => {\r\n if (this.formStepper.currentStep.dirty || this.formStepper.currentStep.stepId) {\r\n\r\n this.formStepper.serverErrors = [];\r\n return this.save().then(() => {\r\n \r\n resolve();\r\n }, error => {\r\n this.formStepper.serverErrors = error.validationErrors;\r\n reject(error);\r\n });\r\n } else {\r\n resolve();\r\n }\r\n });\r\n }.bind(this);\r\n }\r\n\r\n\r\n checkIfCounterSignatureHasToBeDisplayed(display: boolean): void {\r\n if (this.formStepper?.steps.length === 5) {\r\n this.cloneSteps();\r\n this.cloneSummary();\r\n }\r\n\r\n if(this.formStepper) {\r\n if(this.allSteps && !this.stepsWithoutCounterSign && !this.menuWithoutCounterSign) {\r\n this.stepsWithoutCounterSign = this.formStepper.steps.filter(step => !step.title.includes('Countersignature'));\r\n this.menuWithoutCounterSign = this.formStepperService.summary.filter(step => !step.title.includes('Countersignature'));\r\n }\r\n this.displayCounterSignaturePage = display;\r\n\r\n if (this.displayCounterSignaturePage) {\r\n this.formStepper.steps = this.allSteps;\r\n this.formStepperService.summary = this.allStepSummary;\r\n } else {\r\n this.formStepper.steps = this.stepsWithoutCounterSign;\r\n this.formStepperService.summary = this.menuWithoutCounterSign;\r\n }\r\n this.updateStepId();\r\n this.cd.detectChanges();\r\n }\r\n }\r\n\r\n cloneSteps(): void {\r\n this.allSteps = this.formStepper?.steps.slice();\r\n }\r\n\r\n cloneSummary(): void {\r\n this.allStepSummary = this.formStepperService.summary?.slice();\r\n }\r\n\r\n updateStepId(): void {\r\n if(this.formStepper) {\r\n if(this.formStepperService.updateStepsId(this.initialSteps, this.formStepper.steps)) {\r\n this.initialSteps = this.formStepper.steps; \r\n if(this.onLoad) {\r\n this.formStepper.currentStep = this.formStepper.steps.find(s => s.stepId === this.maxStep);\r\n this.formStepperService.setCurrentStep(this.maxStep);\r\n if(this.formStepper.currentStep.title !== 'Countersignature'){\r\n this.allStepSummary.forEach( item => {\r\n item.current = item.title === this.formStepper.currentStep.title ? true: false;\r\n });\r\n this.allStepSummary[1].validity.valid = undefined;\r\n }\r\n \r\n this.formStepperService.summary.forEach( item => {\r\n item.current = item.title === this.formStepper.currentStep.title ? true: false; \r\n item.validity = { valid: item.stepId < this.maxStep ? true : undefined, messages: [], touched: false };\r\n });\r\n this.formStepper.currentStep.ready$.subscribe(ready => {\r\n if (ready) {\r\n this.formStepper.currentStep.validate();\r\n }\r\n });\r\n this.formStepper.currentStep.load(); \r\n this.onLoad = false;\r\n } \r\n }\r\n }\r\n }\r\n}","
    \r\n
    \r\n\r\n \r\n
    \r\n\r\n
    \r\n

    Application for independent prescriber

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

    Before you begin your application for independent prescriber,\r\n read the guidance on providing correctly certified supporting documents Privacy policy

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

    \r\n An error occurred while attempting to load your application\r\n

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

    This application has been marked as ineligible.

    \r\n
    \r\n

    You can either re-submit this application as it is, or re-open this one for editing if you need to make\r\n changes.

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

    You can re-open this application if you would like to submit again.

    \r\n \r\n
    \r\n\r\n
    \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n
    \r\n\r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n \r\n \r\n\r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n\r\n
    \r\n \r\n Independent Prescriber Application\r\n \r\n
    \r\n \r\n
    \r\n

    \r\n {{ applicationClosedMessage }}\r\n

    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    ","import { Application } from \"../../../prereg/model/Application\";\r\nimport { ApplicationStatus } from \"../../../prereg/model/ApplicationStatus\";\r\nimport { Applicant } from \"../../../account/model/Applicant\";\r\nimport { RegistrantStatus } from \"../../model/RegistrantStatus\";\r\nimport { Registrant } from \"../../model/Registrant\";\r\nimport { IndependentPrescriberForm } from './IndependentPrescriberForm';\r\n\r\nexport class IndependentPrescriberApplication implements Application {\r\n trainee: Applicant;\r\n activeForm: IndependentPrescriberForm;\r\n status: ApplicationStatus;\r\n forms: Array = [];\r\n form: IndependentPrescriberForm;\r\n pastApplications = [];\r\n registrant: Registrant;\r\n clinicalSpecialities: string;\r\n courseTitle: string;\r\n dateAwarded: Date;\r\n indyPrescriberApplicationFee: number;\r\n\r\n constructor(data, registrantStatus: RegistrantStatus) {\r\n Object.assign(this, data);\r\n this.status = this.form.formStatus;\r\n this.activeForm = new IndependentPrescriberForm(this.form, registrantStatus);\r\n this.pastApplications = this.forms.filter((form, i) => {\r\n return i > 0;\r\n });\r\n }\r\n}","export enum IndependentPrescriberApplicationStep {\r\n QualificationDetails = 1,\r\n Countersigning,\r\n EDIDetails,\r\n Declarations,\r\n Payment\r\n}","import { EqualityDiversity } from \"../../../account/model/EqualityDiversity\";\r\nimport { FormAnswer } from \"../../../dynamic/model/FormAnswer\";\r\nimport { ApplicationForm } from \"../../../prereg/model/ApplicationForm\";\r\nimport { ApplicationFormMode } from \"../../../prereg/model/ApplicationFormMode\";\r\nimport { ApplicationStatus } from \"../../../prereg/model/ApplicationStatus\";\r\nimport { FileUpload } from \"../../../shared/model/FileUpload\";\r\nimport { FormScope } from \"../../model/FormScope\";\r\nimport { RegistrantStatus } from \"../../model/RegistrantStatus\";\r\nimport { IndependentPrescriberApplicationStep } from \"./IndependentPrescriberApplicationStep\";\r\n\r\nexport interface Countersignature{\r\n id: string,\r\n isMentorRegistered: boolean,\r\n prescriberMentorName: string,\r\n prescriberRegistrationNo: string,\r\n ukRegulatoryBody: string,\r\n registrationNumber: string,\r\n forenames: string,\r\n surname: string,\r\n countersignerGPhCId: string,\r\n decisionMadeAt: Date,\r\n decision: number,\r\n feedback: string\r\n }\r\n\r\nexport class IndependentPrescriberForm implements ApplicationForm{\r\n id: string;\r\n formStatus: ApplicationStatus;\r\n declarations: Array<{ dynamicFormId: string, answers: Array }>;\r\n attachments: Array;\r\n clinicalSpecialities: string;\r\n scope: FormScope;\r\n indyPrescriberApplicationFee:number;\r\n countersignatures: Array;\r\n isOverallDeclarationConfirmed: boolean;\r\n\r\n step: IndependentPrescriberApplicationStep;\r\n minStep: IndependentPrescriberApplicationStep;\r\n mode: ApplicationFormMode;\r\n\r\n declaration: {\r\n isQ1Confirmed: boolean;\r\n isQ2Confirmed: boolean;\r\n isQ3Confirmed: boolean;\r\n isQ4Confirmed: boolean;\r\n isQ5Confirmed: boolean;\r\n };\r\n registrantStatus: RegistrantStatus;\r\n equalityDiversity: EqualityDiversity;\r\n\r\n get readonly() {\r\n return !(this.formStatus === ApplicationStatus.NotStarted ||\r\n this.formStatus === ApplicationStatus.InProgress ||\r\n this.formStatus === ApplicationStatus.CounterSigned ||\r\n this.formStatus === ApplicationStatus.ReadyForCountersigning ||\r\n this.registrantStatus === RegistrantStatus.IneligibleToRegister);\r\n }\r\n \r\n\r\n constructor(data, registrantStatus) {\r\n if( data ) {\r\n Object.assign(this, data);\r\n } \r\n this.registrantStatus = registrantStatus;\r\n\r\n if (this.formStatus === ApplicationStatus.ReadyForCountersigning ||\r\n (this.formStatus === ApplicationStatus.CounterSigned && this.countersignatures[0].isMentorRegistered === true)) {\r\n this.step = IndependentPrescriberApplicationStep.Countersigning;\r\n this.minStep = IndependentPrescriberApplicationStep.Countersigning;\r\n }\r\n }\r\n \r\n}","import { Component, ElementRef, forwardRef, Input, OnInit, QueryList, ViewChild, ViewChildren } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { IndependentPrescriberService } from '../../../../core/service/independentPrescriber.service';\r\nimport { LogService } from '../../../../core/service/log.service';\r\nimport { ConfirmDialogComponent } from '../../../../shared/confirmDialog.component';\r\nimport { ApplicationStatus } from '../../../../prereg/model/ApplicationStatus';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { IndependentPrescriberApplicationStep } from '../../model/IndependentPrescriberApplicationStep';\r\nimport { RegisterSearchBy, RegisterSearchParams, RegisterSearchResult } from '../../../../registration/model/RegisterSearchParams';\r\nimport { RegistrationService } from '../../../../core/service/registration.service';\r\nimport { AuthService } from '../../../../core/service/auth.service';\r\n\r\n@Component({\r\n selector: 'app-counter-signature-step',\r\n templateUrl: './counter-signature-step.component.html',\r\n styleUrls: ['./counter-signature-step.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => CounterSignatureStepComponent)\r\n }\r\n ]\r\n})\r\nexport class CounterSignatureStepComponent extends FormStepComponent implements OnInit {\r\n\r\n @Input() application;\r\n title = 'Countersignature';\r\n stepId = IndependentPrescriberApplicationStep.Countersigning;\r\n selectedMentor;\r\n sending = false;\r\n serverErrors;\r\n recalling = false;\r\n waiting = false;\r\n loadingMore = false;\r\n user;\r\n searchedSelf = false;\r\n\r\n @ViewChildren('focus') focus: QueryList;\r\n @ViewChild('resultsList') resultsListRef: ElementRef;\r\n searchParams: RegisterSearchParams = new RegisterSearchParams();\r\n RegisterSearchBy = RegisterSearchBy;\r\n noResultsVisible = false;\r\n searching = false;\r\n showLoadMore = false;\r\n pharmacists: Array;\r\n selectedPharmacist: RegisterSearchResult;\r\n prevDisabled = false;\r\n\r\n get awaitingCountersigning() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning;\r\n }\r\n\r\n get countersigned() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.CounterSigned;\r\n }\r\n\r\n get _prevDisabled() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.CounterSigned ||\r\n this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning;\r\n }\r\n set _prevDisabled(disabled) { }\r\n\r\n constructor(formStpperService: FormStepperService,\r\n private dialog: MatDialog,\r\n private log: LogService,\r\n private independentPrescriberService: IndependentPrescriberService,\r\n public regService: RegistrationService,\r\n private auth: AuthService) { \r\n super(formStpperService);\r\n }\r\n\r\n load() {\r\n this.serverErrors = undefined;\r\n this.loadResults();\r\n if(!this.selectedPharmacist) {\r\n this.setFocus();\r\n }\r\n this.touched = false;\r\n this.ready$.next(true); \r\n }\r\n\r\n loadResults() {\r\n if (this.application.activeForm.countersignatures &&\r\n this.application.activeForm.countersignatures[0].registrationNumber &&\r\n this.application.activeForm.countersignatures[0].registrationNumber !=='') { \r\n this.selectedPharmacist = this.application.activeForm.countersignatures[0];\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.user = this.auth.user;\r\n if (this.application.activeForm.formStatus === ApplicationStatus.CounterSigned ||\r\n this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning) {\r\n this.prevDisabled = true;\r\n }\r\n }\r\n\r\n validate(){\r\n this.waiting = this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning;\r\n if (this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning) {\r\n this.validity$.next({\r\n valid: false, messages: [`You cannot proceed until your selected prescriber mentor has completed your application.`], touched: this.touched\r\n });\r\n return;\r\n }\r\n const valid = this.application.activeForm.formStatus === ApplicationStatus.CounterSigned;\r\n const messages = [];\r\n if (!valid) {\r\n messages.push('You cannot proceed until you have selected a prescriber mentor to complete your application');\r\n }\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n sendForCountersigning() {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n confirmText: 'Yes',\r\n cancelText: 'No',\r\n title: `Send your request`,\r\n message: `

    Are you sure you are ready to send your request to be completed by your selected mentor?

    `,\r\n confirmProgressReport: false\r\n }\r\n });\r\n\r\n dialogRef.afterClosed().subscribe(confirmed => {\r\n if (confirmed) {\r\n this.serverErrors = undefined;\r\n this.sending = true;\r\n this.independentPrescriberService.sendToCountersigner(this.selectedPharmacist.registrationNumber).subscribe(() => {\r\n this.log.info('Send to countersigner response - success');\r\n this.sending = false;\r\n this.log.info('Updating form status to ReadyForCountersigning');\r\n this.application.activeForm.formStatus = ApplicationStatus.ReadyForCountersigning;\r\n this.log.info('Updating form step validity');\r\n this.waiting = true;\r\n this.validity$.next({ valid: false, messages: [], touched: this.touched });\r\n this.prevDisabled = true;\r\n setTimeout(() => {\r\n this.log.info('Locking form');\r\n this.service.disableAllStepsExcept(IndependentPrescriberApplicationStep.Countersigning);\r\n }, 50);\r\n }, error => {\r\n this.log.error('Send to countersigner response - fail', error);\r\n this.serverErrors = error.validationErrors;\r\n this.sending = false;\r\n });\r\n }\r\n\r\n });\r\n return false;\r\n }\r\n\r\n recall() {\r\n this.recalling = true;\r\n this.selectedMentor = null;\r\n this.independentPrescriberService.recallFromCountersigner().subscribe(() => {\r\n this.recalling = false;\r\n this.waiting = false;\r\n this.application.activeForm.formStatus = ApplicationStatus.InProgress;\r\n this.service.setStepRange(1, IndependentPrescriberApplicationStep.Countersigning);\r\n this.validity$.next({ valid: false, messages: [], touched: undefined });\r\n this.prevDisabled = false;\r\n }, error => {\r\n this.recalling = false;\r\n });\r\n }\r\n\r\n setFocus() {\r\n setTimeout(function () {\r\n if (this.focus.first && this.focus.first.nativeElement) {\r\n this.focus.first.nativeElement.focus();\r\n }\r\n }.bind(this), 50);\r\n }\r\n\r\n get searchByName() {\r\n return this.searchParams.searchBy === RegisterSearchBy.Name;\r\n }\r\n get searchByNumber() {\r\n return this.searchParams.searchBy === RegisterSearchBy.Number;\r\n }\r\n\r\n clearNoResults() {\r\n this.noResultsVisible = false;\r\n }\r\n\r\n search() {\r\n this.searchParams.skip = 0;\r\n this.searching = true;\r\n this.searchParams.applicationType = 'IndependentPrescriber';\r\n this.regService.searchRegister(this.searchParams)\r\n .subscribe(results => {\r\n this.pharmacists = results;\r\n this.searching = false;\r\n this.showLoadMore = results.length === this.searchParams.take;\r\n if(this.resultsListRef) {\r\n this.resultsListRef.nativeElement.scrollTop = 0;\r\n }\r\n // below line has to be uncommented if an error message has to be shown if user searches his/her own registration number.\r\n // this.searchedSelf = (results.length === 1 && results[0].registrationNumber === this.user.registrant?.registrationNumber) ? true : false; \r\n this.noResultsVisible = results.length === 0 ? true : (this.searchedSelf ? true : false)\r\n }, error => {\r\n this.searching = false;\r\n this.showLoadMore = false;\r\n });\r\n }\r\n\r\n loadMore() {\r\n this.searchParams.skip += this.searchParams.take;\r\n this.loadingMore = true;\r\n this.regService.searchRegister(this.searchParams)\r\n .subscribe(results => {\r\n this.showLoadMore = results.length === this.searchParams.take;\r\n this.pharmacists = this.pharmacists.concat(results);\r\n this.loadingMore = false;\r\n }, error => {\r\n this.loadingMore = false;\r\n });\r\n }\r\n\r\n cancelSelection() {\r\n this.selectedPharmacist = undefined;\r\n this.serverErrors = undefined;\r\n this.touched = false;\r\n this.validate();\r\n }\r\n\r\n setSelectedPharmacist(pharmacist: RegisterSearchResult) {\r\n this.selectedPharmacist = pharmacist;\r\n this.validate();\r\n }\r\n\r\n populateForm(){}\r\n}\r\n","\r\n\r\n

    Select your mentor

    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n As it has been more than six months since the date you successfully completed your \r\n prescribing qualification you need to provide details of a prescribing pharmacist who \r\n you you could refer in cases of doubt or for professional reassurance.\r\n
    \r\n \r\n
    \r\n
    \r\n

    Please search for a mentor to countersign your application using the search box below.

    \r\n \r\n \r\n Registration number\r\n Name\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n

    \r\n Please enter a registration number\r\n

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

    \r\n You must provide either last name or first name, or both.\r\n

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    Searching for pharmacists...
    \r\n
    \r\n
    \r\n \r\n 0 && !searchedSelf\">\r\n
    \r\n \r\n
      \r\n
    • \r\n \r\n
    • \r\n
    • \r\n \r\n
      \r\n \r\n
      \r\n
    • \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n

    \r\n Please select any other pharmacist.\r\n

    \r\n

    \r\n Couldn't find any prescribing pharmacists with registration number '{{searchParams.regNumber}}'.\r\n

    \r\n

    \r\n Couldn't find any pharmacists called '{{ (searchParams.firstName ? searchParams.firstName + ' ' : '') + searchParams.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 {{ selectedPharmacist?.registrationNumber}} - {{ selectedPharmacist?.forenames + ' ' + selectedPharmacist?.surname }}\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n Select a registered prescribing pharmacist to whom you will refer in cases of doubt or for professional reassurance. \r\n They will be sent a request containing your name and registration number to confirm that they are happy to act as your \r\n mentor for one month. Make sure the person you chose is aware that we will keep their information as part of this application \r\n and may contact them to verify it.\r\n
    \r\n
    \r\n\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n Recalling application...\r\n Sending to selected pharmacist...\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n Your application has now been countersigned\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n Your application is now waiting to be countersigned\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n

    \r\n {{ 'Server validation error: ' + error.errors.join(',') }}\r\n

    \r\n
    \r\n \r\n
    \r\n\r\n
    ","import { Component, forwardRef, Input, OnInit } from '@angular/core';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { IndependentPrescriberApplicationStep } from '../../model/IndependentPrescriberApplicationStep';\r\nimport { IndependentPrescriberApplication } from '../../model/IndependentPrescriberApplication';\r\n\r\n@Component({\r\n selector: 'app-declarations-step',\r\n templateUrl: './declarations-step.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => DeclarationsStepComponent)\r\n }\r\n ]\r\n})\r\nexport class DeclarationsStepComponent extends FormStepComponent implements OnInit {\r\n\r\n\r\n viewReady: any;\r\n\r\n constructor(formStpperService: FormStepperService) {\r\n super(formStpperService);\r\n }\r\n @Input() application: IndependentPrescriberApplication;\r\n saving = false;\r\n title = 'Declarations';\r\n stepId = IndependentPrescriberApplicationStep.Declarations;\r\n ngOnInit(): void {\r\n }\r\n\r\n\r\n update() {\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n load() {\r\n if (this.viewReady) {\r\n this.ready$.next(true);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.ready$.next(true);\r\n this.viewReady = true;\r\n });\r\n }\r\n\r\n validate() {\r\n const {\r\n isQ1Confirmed,\r\n isQ2Confirmed,\r\n isQ3Confirmed,\r\n isQ4Confirmed,\r\n isQ5Confirmed\r\n } = this.application.activeForm.declaration;\r\n\r\n const valid =\r\n isQ1Confirmed && isQ2Confirmed && isQ3Confirmed && isQ4Confirmed && isQ5Confirmed;\r\n const messages = [];\r\n\r\n if (!isQ1Confirmed) {\r\n messages.push('You must answer “Yes” to declaration 1');\r\n }\r\n if (!isQ2Confirmed) {\r\n messages.push('You must answer “Yes” to declaration 2');\r\n }\r\n if (!isQ3Confirmed) {\r\n messages.push('You must answer “Yes” to declaration 3');\r\n }\r\n if (!isQ4Confirmed) {\r\n messages.push('You must answer “Yes” to declaration 4');\r\n }\r\n if (!isQ5Confirmed) {\r\n messages.push('You must answer “Yes” to declaration 5');\r\n }\r\n this.validity$.next({ valid , messages, touched: this.touched });\r\n }\r\n\r\n populateForm() { }\r\n\r\n}\r\n","\r\n\r\n
    \r\n

    \r\n
    \r\n Declarations\r\n
    \r\n\r\n

    \r\n
    \r\n

    I declare that :

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

    \r\n I am qualified to practise as an independent prescriber\r\n

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

    Yes

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

    No

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

    \r\n I request that my entry in Part 1 of the register is annotated to reflect that I am a qualified independent\r\n prescriber\r\n

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

    Yes

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

    No

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

    \r\n I understand that I must not practise as an independent prescriber until I receive a notification confirming that\r\n an annotation has been added to my register entry\r\n

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

    Yes

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

    No

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

    \r\n The information that I have provided in this application, and within any supporting documentation that I have\r\n uploaded, is complete, true and accurate\r\n

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

    Yes

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

    No

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

    \r\n I understand that if I am found to have given false or misleading information in connection with my application,\r\n this may be treated as misconduct, and could result in my removal from the register\r\n

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

    Yes

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

    No

    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n \r\n\r\n
    \r\n\r\n
    ","import { Component, forwardRef, OnInit } from '@angular/core';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { IndependentPrescriberApplicationStep } from '../../model/IndependentPrescriberApplicationStep';\r\nimport { EqualityDiversity } from '../../../../account/model/EqualityDiversity';\r\nimport { EdiService } from '../../../../account/service/edi.service';\r\nimport { Tooltip } from '../../../../core/tooltip/Tooltip';\r\n\r\n@Component({\r\n selector: 'app-edi-step',\r\n templateUrl: './edi-step.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => EdiStepComponent)\r\n }\r\n ]\r\n})\r\nexport class EdiStepComponent extends FormStepComponent implements OnInit {\r\n \r\n title = 'ED&I Details';\r\n stepId = IndependentPrescriberApplicationStep.EDIDetails;\r\n equalityDiversity: EqualityDiversity;\r\n constructor(public ediService: EdiService, service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n showDetailsHelp = false;\r\n prevDisabled = false;\r\n\r\n ngOnInit() {\r\n this.equalityDiversity = this.application.activeForm.equalityDiversity || {\r\n ethnicity: undefined,\r\n ethnicityOther: '',\r\n nationality: undefined,\r\n religion: undefined,\r\n religionOther: '',\r\n disabled: undefined,\r\n disabilityDetails: '',\r\n gender: undefined,\r\n sexualOrientation: undefined\r\n };\r\n }\r\n\r\n validate() {\r\n this.validity$.next(Object.assign(this.ediService.validate(this.equalityDiversity), { touched: this.touched }));\r\n }\r\n\r\n update($event) {\r\n const nationality = this.application.activeForm.equalityDiversity.nationality;\r\n this.application.activeForm.equalityDiversity = Object.assign($event, { nationality });\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n load() {\r\n this.ediService.load().subscribe(() => {\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n populateForm() { }\r\n\r\n}\r\n","\r\n\r\n
    \r\n

    \r\n
    \r\n Equality and diversity\r\n
    \r\n \r\n

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

    \r\n At the GPhC, we are committed to promoting equality, valuing diversity and being inclusive in all our work\r\n as a health professions regulator, and to making sure we meet our equality duties.\r\n

    \r\n

    \r\n This equality monitoring form will provide us with information to check that this happens, as defined under\r\n the Equality Act 2010. We will use your answers to compile statistics and to facilitate research to support\r\n this work. We sometimes share anonymised data with third parties to help us carry out research into\r\n particular issues and will have a confidentiality agreement in place if this happens.\r\n

    \r\n

    \r\n It does not form part of the application process and will not be used in assessing applications. It won’t be\r\n submitted to your mentor if you require one. If you do not want to give us any information, click on ‘prefer\r\n not to say’ in response to each section.\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \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 { Input, Component, OnInit, Output, EventEmitter } from '@angular/core';\r\nimport { IndependentPrescriberApplication } from '../../model/IndependentPrescriberApplication';\r\nimport { Registrant } from '../../../../registration/model/Registrant';\r\nimport { ApplicationStatus } from '../../../../technician/model/ApplicationStatus';\r\nimport { Applicant } from '../../../../account/model/Applicant';\r\nimport { IndependentPrescriberApplicationStep } from '../../model/IndependentPrescriberApplicationStep';\r\nimport { AttachmentType } from '../../../../shared/model/AttachmentType';\r\nimport { UploadType } from '../../../../shared/model/UploadType';\r\nimport { IndependentPrescriberService } from '../../../../core/service/independentPrescriber.service';\r\nimport { environment } from '../../../../../environments/environment';\r\n\r\n\r\n@Component({\r\n selector: 'app-independent-prescriber-final-review',\r\n templateUrl: './independentPrescriberApplicationFinalReview.component.html',\r\n styleUrls: ['./independentPrescriberFinalReview.scss']\r\n}) export class IndependentPrescriberFinalReviewComponent implements OnInit {\r\n downloading = false;\r\n getAwardedDate = false;\r\n get submitted() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.Submitted;\r\n }\r\n\r\n @Input() application: IndependentPrescriberApplication;\r\n @Input() readonly = true;\r\n registrant: Registrant;\r\n AttachmentType = AttachmentType;\r\n uploadType = UploadType.InpendentPrescriberSupportDocuments;\r\n\r\n applicant: Applicant;\r\n @Input() formId;\r\n IndependentPrescriberStep = IndependentPrescriberApplicationStep;\r\n attachments;\r\n\r\n\r\n constructor(private service: IndependentPrescriberService ) { }\r\n\r\n @Output() navigate = new EventEmitter();\r\n ngOnInit() {\r\n this.attachments = this.application.activeForm.attachments;\r\n }\r\n get mentorName() {\r\n return this.application.activeForm.countersignatures[0].forenames + ' ' + this.application.activeForm.countersignatures[0].surname;\r\n }\r\n\r\n getIcon(file) {\r\n const bits = file.filename.split('.');\r\n const extension = bits[bits.length - 1];\r\n switch (extension) {\r\n case 'pdf':\r\n return 'fa fa-file-pdf-o';\r\n case 'png':\r\n case 'jpg':\r\n case 'bmp':\r\n case 'gif':\r\n return 'fa fa-file-image-o';\r\n case 'doc':\r\n case 'docx':\r\n return 'fa fa-file-word-o';\r\n case 'zip':\r\n case 'rar':\r\n return 'fa fa-file-archive-o';\r\n default:\r\n return 'fa fa-file-o';\r\n }\r\n}\r\n\r\ngetAwarededDate() {\r\nthis.getAwardedDate = true;\r\n if ( this.application.dateAwarded) {\r\n const dateAwarded = new Date(this.application.dateAwarded);\r\n const sixMonthsPostAwardedDate = new Date(dateAwarded.setMonth(dateAwarded.getMonth() + 6));\r\n if (new Date(this.application.dateAwarded).getDate() !== sixMonthsPostAwardedDate.getDate()) {\r\n sixMonthsPostAwardedDate.setDate(1);\r\n }\r\n if (new Date() >= sixMonthsPostAwardedDate) {\r\n this.getAwardedDate = true;\r\n } else {\r\n this.getAwardedDate = false;\r\n }\r\n }\r\n\r\n}\r\n\r\ndownload(file) {\r\n this.downloading = true;\r\n this.service.getProof(file).subscribe(blob => {\r\n const url = URL.createObjectURL(blob);\r\n const element = document.createElement('a');\r\n element.href = url;\r\n element.setAttribute('download', file.filename);\r\n document.body.appendChild(element); // Append the element to work in firefox\r\n element.click();\r\n\r\n });\r\n}\r\n\r\n}\r\n","
    \r\n\r\n\r\n \r\n
    \r\n
    \r\n\r\n
    \r\n

    Qualification Details

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n {{ mentorName }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    {{file.filename}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n

    \r\n
    Equality and diversity
    \r\n

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

    \r\n Declarations\r\n

    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \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, ElementRef, forwardRef, OnInit, Renderer2, ViewChild } from '@angular/core';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { IndependentPrescriberApplicationStep } from '../../model/IndependentPrescriberApplicationStep';\r\nimport { CreditCard, creditCards } from '../../../../renewal/model/CreditCard';\r\nimport { RenewalService } from '../../../../core/service/renewal.service';\r\nimport { IndependentPrescriberService } from '../../../../core/service/independentPrescriber.service';\r\n\r\n@Component({\r\n selector: 'app-payment-step',\r\n templateUrl: './payment-step.component.html',\r\n styleUrls: ['./payment-step.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => PaymentStepComponent)\r\n }\r\n ]\r\n})\r\nexport class PaymentStepComponent extends FormStepComponent {\r\n\r\n title = 'Payment';\r\n stepId = IndependentPrescriberApplicationStep.Payment;\r\n fee;\r\n cartId;\r\n selectedCard: CreditCard;\r\n creditCards = creditCards;\r\n worldpayConfig;\r\n @ViewChild('worldpayForm', { static: false }) worldpayForm: ElementRef;\r\n constructor(private renewalService: RenewalService,\r\n private renderer: Renderer2, stepper: FormStepperService, private independentPrescriberService: IndependentPrescriberService) {\r\n super(stepper);\r\n }\r\n load() {\r\n this.fee = this.application.indyPrescriberApplicationFee;\r\n this.renewalService.getWordpayConfig().subscribe(config => {\r\n this.worldpayConfig = config;\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n const valid = !!this.selectedCard;\r\n if (!valid) {\r\n messages.push('You must select a card type to proceed to payment');\r\n }\r\n\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n beforeNext() {\r\n this.independentPrescriberService.saveApplicationPayment().subscribe((result) => {\r\n this.cartId = JSON.stringify(result.paymentIdentifier);\r\n setTimeout(() => {\r\n this.worldpayForm.nativeElement.submit();\r\n }, 100);\r\n });\r\n return false;\r\n }\r\n\r\n populateForm() { }\r\n}","\r\n

    \r\n Application fee\r\n \"Worldpay\r\n

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

    Fees to be paid

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

    \r\n Independent prescriber application fee: {{fee | currency: 'GBP': 'symbol' :'.2'}}\r\n

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

    \r\n This fee covers the processing of your application and is non-refundable.\r\n

    \r\n

    \r\n You will receive an update on the status of your application within 28 days of making payment. You must wait\r\n until you receive confirmation that your annotation has been added to your register entry before practising as\r\n an independent prescriber.\r\n

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

    Please select your card type

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

    \r\n We can only accept payments made in pounds sterling (GBP). Payments are processed using worldpay, for more\r\n information please\r\n review their\r\n privacy policy.\r\n

    \r\n

    \r\n When you make a card payment, you may be redirected to your card provider’s site to enter another password\r\n before they authorise\r\n your payment. You can find out more about 3-D Secure authentication from your card provider.\r\n

    \r\n
    \r\n\r\n \r\n \r\n \"{{card.name}}\r\n
    {{card.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
    ","import { Component, EventEmitter, forwardRef, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { IndependentPrescriberApplicationStep } from '../../model/IndependentPrescriberApplicationStep';\r\nimport { UploadType } from '../../../../shared/model/UploadType';\r\nimport utils from '../../../../shared/service/utils';\r\nimport { SupportingDocumentsService } from '../../../../shared/supportingDocuments/supportingDocuments.service';\r\nimport { FileUpload } from '../../../../shared/model/FileUpload';\r\nimport { NgForm } from '@angular/forms';\r\nimport { AttachmentType } from '../../../../shared/model/AttachmentType';\r\nimport { ApplicationStatus } from '../../../../prereg/model/ApplicationStatus';\r\nimport { Countersignature } from '../../model/IndependentPrescriberForm';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ConfirmDialogComponent } from '../../../../shared/confirmDialog.component';\r\nimport { Tooltip } from '../../../../core/tooltip/Tooltip';\r\n\r\nconst UKRegulators = [\r\n 'General Medical Council (Doctors)',\r\n 'Nursing and Midwifery Council (Nurses)',\r\n 'Health and Care Professions Council (Physotherapists)',\r\n 'Health and Care Professions Council (Therapeutic radiographers)',\r\n 'Health and Care Professions Council (Podiatrists)',\r\n 'Health and Care Professions Council (Paramedics)',\r\n 'General Optical Council (Optometrists)'\r\n];\r\n\r\n@Component({\r\n selector: 'app-qualification-step',\r\n templateUrl: './qualification-step.component.html',\r\n providers: [\r\n SupportingDocumentsService,\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => QualificationStepComponent)\r\n }\r\n ],\r\n styleUrls: ['./qualification-step.component.scss']\r\n})\r\nexport class QualificationStepComponent extends FormStepComponent implements OnInit {\r\n \r\n @Input() application;\r\n @ViewChild('form') form: NgForm;\r\n\r\n title = 'Qualification Details';\r\n stepId = IndependentPrescriberApplicationStep.QualificationDetails;\r\n applicant;\r\n isDateBeyondSixMonths = false;\r\n prescriberMentorNotRegistered;\r\n uploadType = UploadType.InpendentPrescriberSupportDocuments;\r\n sessionId = utils.guid();\r\n attachments: { [key: number]: Array } = {};\r\n AttachmentType = AttachmentType;\r\n attachmentType = AttachmentType.IndyPrescriberMentorConfirmation;\r\n regulators;\r\n applicantFormDetails;\r\n nextStepClicked = false;\r\n\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n\r\n /**\r\n * below two changes has to be made, to display 'are you sure?' confirmation pop up when user selects yes/no for 'Is your prescriber mentor registered with the GPhC?'\r\n * 1.choiceConfirmed should be set to false below \r\n * 2.call for askConfirmation method has to be uncommented - \r\n */\r\n choiceConfirmed = true;\r\n\r\n hasTitle;\r\n hasMentorDetails;\r\n valid = false;\r\n\r\n counterSignatureDetails;\r\n counterSignature: Countersignature = {\r\n id: '',\r\n isMentorRegistered: null,\r\n prescriberMentorName: '',\r\n prescriberRegistrationNo: '',\r\n ukRegulatoryBody: '',\r\n registrationNumber: null,\r\n forenames: null,\r\n surname: null,\r\n countersignerGPhCId: null,\r\n decisionMadeAt: null,\r\n decision: null,\r\n feedback: null\r\n }\r\n deleteUrl = 'v1.0/pharmacistform/attachment';\r\n\r\n @Output() isMentorRegistered = new EventEmitter();\r\n\r\n constructor(formStpperService: FormStepperService, private docService: SupportingDocumentsService,\r\n private dialog: MatDialog) { \r\n super(formStpperService);\r\n }\r\n\r\n ngOnInit(): void {\r\n if(this.application) {\r\n this.applicant = this.application;\r\n this.applicantFormDetails = this.applicant.activeForm;\r\n if(!this.applicantFormDetails.countersignatures || this.applicantFormDetails.countersignatures.length === 0) { \r\n this.applicantFormDetails.countersignatures.push(this.counterSignature)\r\n }\r\n this.counterSignatureDetails = this.applicantFormDetails.countersignatures[0]; \r\n if(this.counterSignatureDetails.isMentorRegistered !==undefined && this.counterSignatureDetails.isMentorRegistered !== null){\r\n this.prescriberMentorNotRegistered = !this.counterSignatureDetails.isMentorRegistered;\r\n this.choiceConfirmed = this.nextStepClicked = true;\r\n }\r\n this.regulators = UKRegulators;\r\n this.checkIfAwardedDateMoreThanSixMonths();\r\n }\r\n }\r\n\r\n get countersigned() {\r\n return this.application?.activeForm?.formStatus === ApplicationStatus.CounterSigned;\r\n }\r\n\r\n propagate() { \r\n this.validate();\r\n }\r\n\r\n validate() {\r\n let messages = [];\r\n \r\n if(this.prescriberMentorNotRegistered === undefined || this.prescriberMentorNotRegistered === null) {\r\n this.valid = false;\r\n } else {\r\n if(!this.prescriberMentorNotRegistered) {\r\n this.valid = true;\r\n } else {\r\n messages = this.docService.validate();\r\n this.valid = !!(this.applicantFormDetails.attachments?.length) && !messages.length;\r\n if(this.form) {\r\n this.valid = this.valid && !!this.counterSignatureDetails.prescriberMentorName\r\n && !!this.counterSignatureDetails.prescriberRegistrationNo && !!this.counterSignatureDetails.ukRegulatoryBody\r\n && !!this.applicantFormDetails.attachments;\r\n }\r\n }\r\n\r\n this.valid = this.valid && this.choiceConfirmed;\r\n } \r\n\r\n if(!this.isDateBeyondSixMonths) {\r\n this.valid = true;\r\n }\r\n \r\n if(!this.valid) {\r\n if(this.choiceConfirmed) {\r\n messages.push('Please provide the required information.');\r\n } else {\r\n messages.push('Please confirm your choice.');\r\n }\r\n }\r\n\r\n this.validity$.next({ valid: this.valid, messages , touched: this.touched });\r\n }\r\n\r\n checkIfAwardedDateMoreThanSixMonths() { \r\n this.isDateBeyondSixMonths = true;\r\n if( this.applicant?.dateAwarded) {\r\n let dateAwarded = new Date(this.applicant?.dateAwarded);\r\n let sixMonthsPostAwardedDate = new Date(dateAwarded.setMonth(dateAwarded.getMonth()+6));\r\n if(new Date(this.applicant?.dateAwarded).getDate() !== sixMonthsPostAwardedDate.getDate()) {\r\n sixMonthsPostAwardedDate.setDate(1);\r\n }\r\n if(new Date() >= sixMonthsPostAwardedDate) {\r\n this.isDateBeyondSixMonths = true;\r\n } else {\r\n this.isDateBeyondSixMonths = false;\r\n this.application.activeForm.formStatus = ApplicationStatus.InProgress;\r\n }\r\n }\r\n }\r\n\r\n onMentorRegistrationChange(value) {\r\n if(!value) {\r\n this.prescriberMentorNotRegistered = true;\r\n } else {\r\n this.prescriberMentorNotRegistered = false;\r\n }\r\n this.application.activeForm.formStatus = ApplicationStatus.InProgress;\r\n // comment below two lines if askConfirmation method is called\r\n this.isMentorRegistered.emit(!this.prescriberMentorNotRegistered);\r\n this.validate();\r\n // this.askConfirmation();\r\n }\r\n\r\n onDocUpload($event) {\r\n this.applicantFormDetails.attachments = $event;\r\n this.applicantFormDetails.attachments.forEach(attachment => {\r\n attachment.type = this.attachmentType;\r\n });\r\n this.deleteUrl = 'v1.0/pharmacistform/attachment';\r\n this.validate();\r\n }\r\n\r\n onDocDelete(file) {\r\n this.deleteUrl = '';\r\n this.applicantFormDetails.attachments = [];\r\n this.validate();\r\n }\r\n\r\n askConfirmation() {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n disableClose: false,\r\n data: {\r\n title: `Important`,\r\n confirmText: 'Yes',\r\n cancelText: 'No',\r\n message: `

    \r\n Are you sure you want to proceed?\r\n

    \r\n `,\r\n confirmProgressReport: false\r\n }\r\n });\r\n dialogRef.afterClosed().subscribe(confirmed => {\r\n if (confirmed) {\r\n this.choiceConfirmed = true;\r\n this.isMentorRegistered.emit(!this.prescriberMentorNotRegistered); \r\n } else {\r\n this.choiceConfirmed = false;\r\n }\r\n this.validate();\r\n });\r\n return dialogRef;\r\n }\r\n\r\n populateForm() {\r\n this.nextStepClicked = this.valid ? true: false;\r\n }\r\n}\r\n","\r\n

    Qualification details \r\n \r\n

    \r\n\r\n \r\n
    \r\n The details below were supplied to us by your course provider. If any of the details are incorrect please \r\n contact us.\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n As it has been more than six months since you were awarded your prescribing qualification, please provide details of a ‘prescribing mentor’.\r\n This person must be a prescribing pharmacist or other prescribing healthcare professional who you could refer to in cases of doubt or for \r\n professional reassurance, for a period of one month from the date your annotation is added to your register entry.\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n Yes\r\n No\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \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, Input, ViewChild, QueryList, ViewChildren } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { Address } from '../../account/model/Address';\r\nimport { User } from '../../account/model/User';\r\nimport { NgForm } from '@angular/forms';\r\nimport { Tooltip } from './../../core/tooltip/Tooltip';\r\nimport { IndependentPrescriberApplication } from '../independent-precriber/model/IndependentPrescriberApplication';\r\nimport { CountersignatureOutcome } from '../../technician/model/CountersignatureOutcome';\r\nimport { IndependentPrescriberService } from '../../core/service/independentPrescriber.service';\r\nimport { IndependentPrescriberData } from '../model/IndependentPrescriberData';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n selector: 'app-independent-prescriber-countersign-response',\r\n templateUrl: './independentPrescriberMentorCountersignin.component.html',\r\n styleUrls: ['../countersign.scss']\r\n})\r\nexport class IndependentPrescriberMentorCountersigninComponent implements OnInit {\r\n\r\n @ViewChild('form') countersignForm: NgForm;\r\n @ViewChildren('formInput') allInputs: QueryList;\r\n @Input() application: IndependentPrescriberData;\r\n id: string;\r\n date: string;\r\n name: string;\r\n loading = false;\r\n CountersignatureOutcome = CountersignatureOutcome;\r\n response;\r\n responseReason;\r\n role: number;\r\n submitting = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n }\r\n showDetailsHelp = false;\r\n validationErrors: any;\r\n user : User\r\n validInputs: boolean;\r\n \r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private auth: AuthService,\r\n private IndependentPrescriberService: IndependentPrescriberService\r\n ) {\r\n this.id = this.route.snapshot.params['id'];\r\n this.date = this.route.snapshot.params['date'];\r\n this.role = +this.route.snapshot.params['role'];\r\n }\r\n\r\n ngOnInit(): void {\r\n this.user = this.auth.user;\r\n }\r\n\r\n print(): void {\r\n (window).print();\r\n }\r\n\r\n exit(): void {\r\n this.router.navigate(['/registration']);\r\n }\r\n\r\n focusOnInvalidInputs(): void {\r\n this\r\n .allInputs\r\n .filter(input => input.nativeElement.className.includes('ng-invalid'))\r\n .forEach(input => input.nativeElement.focus());\r\n }\r\n\r\n submitOutcome(formValue): void {\r\n this.submitting = true;\r\n const outcome = {\r\n id: this.id,\r\n decision: this.response,\r\n feedback: this.responseReason,\r\n countersignerComment: formValue\r\n };\r\n const submitOutcome = (anoutcome = outcome): void => {\r\n this.submitting = false;\r\n this.validInputs = true;\r\n this.IndependentPrescriberService.submitCountersignatureOutcome(anoutcome).subscribe(() => {\r\n this.submitting = true;\r\n this.exit();\r\n }, () => {\r\n this.submitting = false;\r\n this.validInputs = false;\r\n });\r\n };\r\n\r\n if (this.response === CountersignatureOutcome.Refused) {\r\n this.validInputs = true;\r\n outcome['countersignerComment'] = '';\r\n submitOutcome(outcome);\r\n }\r\n\r\n if (this.response === CountersignatureOutcome.Approved ||\r\n this.response === CountersignatureOutcome.Rejected\r\n ) {\r\n (this.countersignForm.invalid) ? this.focusOnInvalidInputs() : submitOutcome();\r\n }\r\n }\r\n\r\n}","\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n

    \r\n {{application.applicantName}} has advised the GPhC that you are willing to provide professional reassurance and act as their mentor for a period of one month after the \r\n independent prescriber annotation is added to their public record.\r\n

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

    Please respond to this mentor request by checking one of the options below

    \r\n \r\n \r\n I confirm that I am willing to act as a mentor\r\n \r\n \r\n I will not be acting as a mentor\r\n \r\n \r\n This request has been sent to me in error\r\n \r\n\r\n \r\n

    \r\n I confirm that I have discussed this outcome with the named applicant.\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, Inject, ViewChild, ElementRef } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Registrant } from './model/Registrant';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { PreregService } from '../core/service/prereg.service';\r\nimport { RegApplication } from '../prereg/model/RegApplication';\r\nimport { CountersignatureOutcome } from '../prereg/model/CountersignatureOutcome';\r\nimport { LearningContractResponse } from '../shared/model/student/LearningContractResponse';\r\nimport { RegistrationService } from '../core/service/registration.service';\r\nimport { Student } from '../shared/model/student/Student';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n templateUrl: './learningContractResponse.component.html',\r\n styleUrls: ['countersign.scss']\r\n})\r\nexport class LearningContractResponseComponent implements OnInit {\r\n\r\n id: string;\r\n\r\n loading = false;\r\n\r\n submitClicked;\r\n submitting;\r\n response;\r\n responseReason;\r\n user;\r\n LearningContractResponse = LearningContractResponse;\r\n @ViewChild('responseReasonInput') responseReasonInput: ElementRef;\r\n studentData;\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private auth: AuthService,\r\n private regService: RegistrationService\r\n ) {\r\n this.id = this.route.snapshot.params['id'];\r\n }\r\n\r\n setFocus(response) {\r\n if (response === LearningContractResponse.Rejected) {\r\n setTimeout(() => { this.responseReasonInput.nativeElement.focus(); }, 1000);\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.loading = false;\r\n this.user = this.auth.user;\r\n this.regService.getLearningContract(this.id).subscribe(studentData => {\r\n this.studentData = studentData;\r\n });\r\n\r\n }\r\n\r\n print() {\r\n (window).print();\r\n }\r\n\r\n exit() {\r\n this.router.navigate(['/registration']);\r\n }\r\n\r\n submitOutcome() {\r\n this.submitClicked = true;\r\n // if (!this.response || (this.response === LearningContractResponse.Rejected && !this.responseReason)) {\r\n // this.setFocus(this.response);\r\n // // if it is rejected, we still want to send that data to the backend ?\r\n // return;\r\n // }\r\n\r\n const submitLearningContractResponse = () => {\r\n const payload = {\r\n formId: this.id,\r\n decision: this.response,\r\n feedback: this.responseReason\r\n };\r\n this.submitting = true;\r\n this.regService.submitLearningContractResponse(payload)\r\n .subscribe(() => {\r\n this.exit();\r\n }, error => {\r\n this.submitting = false;\r\n });\r\n };\r\n\r\n const setFocus = () => {\r\n this.setFocus(this.response);\r\n return;\r\n };\r\n\r\n (!this.response) ? setFocus() : submitLearningContractResponse();\r\n\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n

    Learning contract

    \r\n
    \r\n \r\n
    Print
    \r\n
    \r\n
    \r\n \r\n
    Back
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n This is an agreement between the designated supervisor(s) and trainee. It covers the key aspects of\r\n working together. It clarifies what is expected in preparation for, and during, the foundation training year. It\r\n should be discussed and signed by both parties.\r\n
    \r\n

    \r\n I, {{user}}, will act in line with the GPhC’s standards for pharmacy professionals. We make the\r\n following\r\n commitments\r\n to each other. We:\r\n

    \r\n
      \r\n
    1. \r\n will follow the GPhC foundation training requirements, as explained in the GPhC's\r\n foundation training\r\n manual, and understand the GPhC's expectations of a designated supervisor as explained in their guidance\r\n
    2. \r\n
    3. \r\n understand the interim learning outcomes required by the GPhC to complete the foundation training year\r\n and meet the criteria for\r\n registration as a pharmacist.\r\n \r\n\r\n
    4. \r\n
    5. \r\n will carry out GPhC formal progress reviews at weeks 13, 26 and 39, and at the end of training, and\r\n submit these to the GPhC when progress is assessed to be unsatisfactory\r\n
    6. \r\n
    7. \r\n will carry out regular progress reviews that are conducted in a professional manner, and are open\r\n and\r\n honest, to provide meaningful feedback to both trainee and designated supervisor. These reviews will be\r\n supportive\r\n and encourage learning\r\n
    8. \r\n
    9. \r\n will discuss and resolve any concerns at an early stage. If we cannot resolve a concern, or if the\r\n problem is outside the scope of our learning relationship, we will escalate as appropriate\r\n\r\n
    10. \r\n
    11. \r\n expect the training to be self-directed, with mutually agreed time dedicated to study and\r\n reflection on\r\n learning that will be documented in a portfolio for joint review\r\n
    12. \r\n
    13. \r\n will ensure that all practice is supervised appropriately, and is respectful of the skills and\r\n knowledge of\r\n all team members, whose feedback should also be considered\r\n
    14. \r\n
    15. \r\n will encourage a proactive approach to seeking answers and solving problems, with clearly defined\r\n boundaries related to the stage of learning to make sure patient safety is maintained\r\n
    16. \r\n
    17. \r\n understand the designated supervisor suitability policy and be aware that supervising can be revoked if this\r\n is not\r\n met\r\n
    18. \r\n
    19. \r\n will work to a training plan that is provided by the designated supervisor and agreed before training starts\r\n
    20. \r\n
    \r\n
    \r\n\r\n \r\n \r\n

    \r\n Name of Trainee: {{ (studentData.student.title ? studentData.student.title : ' ') + ' ' +\r\n studentData.student.forenames + ' ' + studentData.student.surname}}\r\n

    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Training site(s)StartsEndsAssociated designated supervisor
    {{ training.pharmacyName}}{{ training.startDate | utcDate }}{{ training.endDate | utcDate}}\r\n
      \r\n
    • {{ tutors.firstname + ' ' + tutors.lastname }}
    • \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n As part of the application for the foundation training year we will record your response. Your response and\r\n any comments you make will be shared with the student.\r\n
    \r\n \r\n I agree\r\n I DO NOT agree\r\n This application has\r\n been sent to me in error\r\n \r\n\r\n \r\n
    \r\n \r\n \r\n \r\n

    \r\n Please explain why you don’t support this application\r\n

    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    ","\r\n\r\nimport { Component } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { LetterType } from './model/LetterType';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n templateUrl: './letter.component.html'\r\n})\r\nexport class LetterComponent {\r\n\r\n LetterType = LetterType;\r\n letterType;\r\n constructor(private route: ActivatedRoute) {\r\n this.letterType = parseInt(route.snapshot.params['letterType'], 10);\r\n }\r\n\r\n\r\n\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n ","\r\n
    \r\n
    \r\n

    Assessment Results

    \r\n
    \r\n \r\n
    Print
    \r\n
    \r\n
    \r\n \r\n
    Back
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n

    Date of results : {{DateOfResults}}

    \r\n

    \r\n Your foundation trainee number : {{PreEntryID}}\r\n

    \r\n\r\n

    Dear {{ registrantName }}

    \r\n

    \r\n Registration assessment results for the sitting held on {{ DateOfAssessment }}\r\n

    \r\n\r\n

    \r\n We are pleased to tell you that you have passed the registration assessment at this attempt.\r\n

    \r\n\r\n

    \r\n Your results for the sitting are :\r\n

    \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
    Your assessment result :Pass
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Part 1
    Marks required to pass {{Part1PassMark}}
    Marks you achieved{{Part1CandidateMark}}
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Part 2
    Marks required to pass {{Part2PassMark}}
    Marks you achieved{{Part2CandidateMark}}
    \r\n
    \r\n

    \r\n For more information on how we award marks and set pass marks for the registration assessment please go to\r\n the\r\n Assuring the assessment page on the main GPhC website.\r\n

    \r\n\r\n

    \r\n Once you have finished your pre-registration training successfully and met all the other registration\r\n requirements, you\r\n will be eligible to apply for registration as a pharmacist.\r\n

    \r\n\r\n

    \r\n Once you are registered you will receive a “Notice of entry” letter via myGPhC confirming this. The letter\r\n will include\r\n your GPhC registration number. From the day you are registered, you will also be able to see your\r\n registration on the\r\n live copy of the GPhC’s register of pharmacists at pharmacyregulation.org.\r\n

    \r\n

    Until you have your registration number you must not work as a pharmacist or call yourself one.

    \r\n

    \r\n On behalf of the GPhC, we would like to wish you all the best for your future career.\r\n

    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, OnInit, Inject, Input } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { AuthService } from '../../../core/service/auth.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { Registrant } from '../../model/Registrant';\r\nimport { RegistrationService } from '../../../core/service/registration.service';\r\nimport { LetterType } from '../../model/LetterType';\r\nimport { AssessmentAttemptsLetterData, PartOutcome } from '../../model/AssessmentAttemptsLetterData';\r\n@Component({\r\n selector: 'app-assessment-attempt-pass-letter',\r\n moduleId: module.id,\r\n templateUrl: './assessmentAttemptPassLetter.component.html',\r\n styleUrls: ['../letter.scss']\r\n})\r\nexport class AssessmentAttemptPassLetterComponent implements OnInit {\r\n\r\n registrantStartDate: any;\r\n registrant: Registrant;\r\n assessmentApproveData: AssessmentAttemptsLetterData;\r\n registrantAddress: any;\r\n isPharmacist: boolean;\r\n isPharmacyTechnician: boolean;\r\n loading = false;\r\n failed = false;\r\n receipt;\r\n user;\r\n currentDate;\r\n\r\n DateOfResults;\r\n PreEntryID;\r\n DateOfAssessment;\r\n Part1Outcome;\r\n Part1PassMark;\r\n Part1CandidateMark;\r\n Part2Outcome;\r\n Part2PassMark;\r\n Part2CandidateMark;\r\n\r\n\r\n\r\n @Input() isRegistrant = false;\r\n registrantName: string;\r\n letterDate: any;\r\n CandidateNumber;\r\n id: string;\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n public auth: AuthService,\r\n private date: DatePipe,\r\n private service: RegistrationService,\r\n ) { this.id = this.route.snapshot.params['id']; }\r\n\r\n ngOnInit() {\r\n this.currentDate = new Date();\r\n\r\n this.registrantName = this.auth.user.title + ' ' + this.auth.user.surname;\r\n this.registrant = this.auth.user.registrant;\r\n this.registrantAddress = this.auth.user.address;\r\n\r\n this.service.getLetters().subscribe(letters => {\r\n\r\n const letter = letters.find(l => l.id === this.id);\r\n this.CandidateNumber = letter.data.CandidateNumber;\r\n this.DateOfResults = letter.data.DateOfResults;\r\n this.PreEntryID = letter.data.PreEntryID;\r\n this.DateOfAssessment = letter.data.DateOfAssessment;\r\n this.Part1Outcome = letter.data.Part1Outcome;\r\n this.Part1PassMark = letter.data.Part1PassMark;\r\n this.Part1CandidateMark = letter.data.Part1CandidateMark;\r\n this.Part2Outcome = letter.data.Part2Outcome;\r\n this.Part2PassMark = letter.data.Part2PassMark;\r\n this.Part2CandidateMark = letter.data.Part2CandidateMark;\r\n\r\n });\r\n if (this.auth.user.isPrereg) {\r\n this.registrant = this.auth.user.registrant;\r\n } else {\r\n this.registrant = this.auth.user.registrant;\r\n }\r\n }\r\n\r\n print() {\r\n (window).print();\r\n }\r\n\r\n exit() {\r\n if (this.auth.user.isPrereg) {\r\n this.router.navigate(['/account/notifications']);\r\n } else {\r\n this.router.navigate(['/home']);\r\n }\r\n\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n

    Assessment Results

    \r\n
    \r\n \r\n
    Print
    \r\n
    \r\n
    \r\n \r\n
    Back
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n

    \r\n Date of results : {{DateOfResults }}\r\n

    \r\n

    \r\n Your foundation trainee number : {{PreEntryID}}\r\n

    \r\n\r\n

    Dear {{ registrantName }}

    \r\n

    \r\n Registration assessment results for the sitting held on {{ DateOfAssessment }}\r\n

    \r\n

    \r\n We are sorry to tell you that you have been unsuccessful in this attempt at the registration assessment.\r\n

    \r\n\r\n

    \r\n Your results for the sitting are :\r\n

    \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
    Your assessment result :Fail
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Part 1
    Marks required to pass {{Part1PassMark}}
    Marks you achieved{{Part1CandidateMark}}
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Part 2
    Marks required to pass {{Part2PassMark}}
    Marks you achieved{{Part2CandidateMark}}
    \r\n
    \r\n

    \r\n To pass the assessment, you must pass part one and part two in the same sitting. For more information on how\r\n we award\r\n marks and set pass marks for the registration assessment please go to the\r\n Assuring the assessment page on the main GPhC website.\r\n

    \r\n\r\n

    \r\n You are permitted three attempts at the registration assessment. You must make these within the maximum time\r\n limit for\r\n completion of pharmacy education and training set out in the set out in\r\n the GPhC Criteria\r\n for registration as a pharmacist.\r\n

    \r\n

    \r\n Until you pass the registration assessment and meet all the registration requirements you are not eligible\r\n to apply for\r\n registration as a pharmacist, and you must not work as a pharmacist or call yourself one.\r\n

    \r\n\r\n

    \r\n If you want to re-sit the assessment, you will need to make sure that you meet the eligibility requirements\r\n to sit and\r\n submit another application.\r\n

    \r\n\r\n

    \r\n For information about your next steps including resitting or considering an appeal, see the \r\n Guidance for unsuccessful candidates in the registration assessment, which we hope you will find\r\n helpful.\r\n

    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, OnInit, Inject, Input } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { AuthService } from '../../../core/service/auth.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { AssessmentApproveLetterData } from '../../model/AssessmentApproveLetterData';\r\nimport { Registrant } from '../../model/Registrant';\r\nimport { RegistrationService } from '../../../core/service/registration.service';\r\nimport { LetterType } from '../../model/LetterType';\r\n@Component({\r\n selector: 'app-assessment-first-second-attempt-fail-letter',\r\n moduleId: module.id,\r\n templateUrl: './assessmentFirstAndSecondAttemptFailLetter.component.html',\r\n styleUrls: ['../letter.scss']\r\n})\r\nexport class AssessmentFirstAndSecondAttemptFailLetterComponent implements OnInit {\r\n\r\n registrantStartDate: any;\r\n registrant: Registrant;\r\n assessmentApproveData: AssessmentApproveLetterData;\r\n registrantAddress: any;\r\n isPharmacist: boolean;\r\n isPharmacyTechnician: boolean;\r\n loading = false;\r\n failed = false;\r\n receipt;\r\n user;\r\n currentDate;\r\n\r\n DateOfResults;\r\n PreEntryID;\r\n DateOfAssessment;\r\n Part1Outcome;\r\n Part1PassMark;\r\n Part1CandidateMark;\r\n Part2Outcome;\r\n Part2PassMark;\r\n Part2CandidateMark;\r\n\r\n\r\n @Input() isRegistrant = false;\r\n registrantName: string;\r\n letterDate: any;\r\n CandidateNumber: any;\r\n id: string;\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n public auth: AuthService,\r\n private date: DatePipe,\r\n private service: RegistrationService,\r\n ) { this.id = this.route.snapshot.params['id']; }\r\n\r\n ngOnInit() {\r\n this.currentDate = new Date();\r\n\r\n this.registrantName = this.auth.user.title + ' ' + this.auth.user.surname;\r\n this.registrant = this.auth.user.registrant;\r\n this.registrantAddress = this.auth.user.address;\r\n\r\n this.service.getLetters().subscribe(letters => {\r\n\r\n const letter = letters.find(l => l.id === this.id);\r\n this.CandidateNumber = letter.data.CandidateNumber;\r\n this.DateOfResults = letter.data.DateOfResults;\r\n this.PreEntryID = letter.data.PreEntryID;\r\n this.DateOfAssessment = letter.data.DateOfAssessment;\r\n this.Part1Outcome = letter.data.Part1Outcome;\r\n this.Part1PassMark = letter.data.Part1PassMark;\r\n this.Part1CandidateMark = letter.data.Part1CandidateMark;\r\n this.Part2Outcome = letter.data.Part2Outcome;\r\n this.Part2PassMark = letter.data.Part2PassMark;\r\n this.Part2CandidateMark = letter.data.Part2CandidateMark;\r\n\r\n });\r\n if (this.auth.user.isPrereg) {\r\n this.registrant = this.auth.user.registrant;\r\n } else {\r\n this.registrant = this.auth.user.registrant;\r\n\r\n }\r\n }\r\n\r\n print() {\r\n (window).print();\r\n }\r\n\r\n exit() {\r\n if (this.auth.user.isPrereg) {\r\n this.router.navigate(['/account/notifications']);\r\n } else {\r\n this.router.navigate(['/home']);\r\n }\r\n\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n

    Assessment Results

    \r\n
    \r\n \r\n
    Print
    \r\n
    \r\n
    \r\n \r\n
    Back
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n Date of results: {{ DateOfResults }}\r\n

    \r\n Your foundation trainee number : {{PreEntryID}}\r\n

    \r\n\r\n

    Dear {{ registrantName }}

    \r\n

    \r\n Registration assessment results for the sitting held on {{ DateOfAssessment }}\r\n

    \r\n

    \r\n We are sorry to tell you that you have been unsuccessful in this attempt at the registration assessment.\r\n

    \r\n\r\n

    \r\n Your results for the sitting are :\r\n

    \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
    Your assessment result :Fail
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
    Part 1
    Marks required to pass {{Part1PassMark}}
    Marks you achieved{{Part1CandidateMark}}
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
    Part 2
    Marks required to pass {{Part2PassMark}}
    Marks you achieved{{Part2CandidateMark}}
    \r\n
    \r\n

    \r\n To pass the assessment, you must pass part one and part two in the same sitting. For more information on how\r\n we award\r\n marks and set pass marks for the registration assessment please go to the\r\n Assuring the assessment page on the main GPhC website.\r\n

    \r\n\r\n

    \r\n Candidates are permitted three attempts at the registration assessment. \r\n As this is your third attempt, according to the assessment regulations, \r\n you are not eligible to sit the assessment again.\r\n

    \r\n \r\n

    \r\n You may wish to seek help from a specialist careers counsellor. They could advise you about career options\r\n which make\r\n use of your pharmacy degree, but do not need you to be registered as a pharmacist. A Citizens Advice Bureau\r\n should be\r\n able to give you the contact details of a careers counselling service in your area or you may also be able\r\n to find help\r\n from your university careers service. Unfortunately we are not able to help with this.\r\n

    \r\n\r\n

    \r\n For information about your next steps, including resitting or considering an appeal see the \r\n Guidance for unsuccessful candidates in the registration assessment, which we hope you will find\r\n helpful.\r\n

    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, OnInit, Inject, Input } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { AuthService } from '../../../core/service/auth.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { AssessmentApproveLetterData } from '../../model/AssessmentApproveLetterData';\r\nimport { Registrant } from '../../model/Registrant';\r\nimport { RegistrationService } from '../../../core/service/registration.service';\r\nimport { LetterType } from '../../model/LetterType';\r\n@Component({\r\n selector: 'app-assessment-third-attempt-fail-letter',\r\n moduleId: module.id,\r\n templateUrl: './assessmentThirdAttemptFailLetter.component.html',\r\n styleUrls: ['../letter.scss']\r\n})\r\nexport class AssessmentThirdAttemptFailLetterComponent implements OnInit {\r\n\r\n registrantStartDate: any;\r\n registrant: Registrant;\r\n assessmentApproveData: AssessmentApproveLetterData;\r\n registrantAddress: any;\r\n isPharmacist: boolean;\r\n isPharmacyTechnician: boolean;\r\n loading = false;\r\n failed = false;\r\n receipt;\r\n user;\r\n currentDate;\r\n\r\n DateOfResults;\r\n PreEntryID;\r\n DateOfAssessment;\r\n Part1Outcome;\r\n Part1PassMark;\r\n Part1CandidateMark;\r\n Part2Outcome;\r\n Part2PassMark;\r\n Part2CandidateMark;\r\n\r\n\r\n @Input() isRegistrant = false;\r\n registrantName: string;\r\n letterDate: any;\r\n CandidateNumber: any;\r\n id: string;\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n public auth: AuthService,\r\n private date: DatePipe,\r\n private service: RegistrationService,\r\n ) { this.id = this.route.snapshot.params['id']; }\r\n\r\n ngOnInit() {\r\n this.currentDate = new Date();\r\n\r\n this.registrantName = this.auth.user.title + ' ' + this.auth.user.surname;\r\n this.registrant = this.auth.user.registrant;\r\n this.registrantAddress = this.auth.user.address;\r\n\r\n this.service.getLetters().subscribe(letters => {\r\n\r\n const letter = letters.find(l => l.id === this.id);\r\n this.CandidateNumber = letter.data.CandidateNumber;\r\n this.DateOfResults = letter.data.DateOfResults;\r\n this.PreEntryID = letter.data.PreEntryID;\r\n this.DateOfAssessment = letter.data.DateOfAssessment;\r\n this.Part1Outcome = letter.data.Part1Outcome;\r\n this.Part1PassMark = letter.data.Part1PassMark;\r\n this.Part1CandidateMark = letter.data.Part1CandidateMark;\r\n this.Part2Outcome = letter.data.Part2Outcome;\r\n this.Part2PassMark = letter.data.Part2PassMark;\r\n this.Part2CandidateMark = letter.data.Part2CandidateMark;\r\n\r\n });\r\n if (this.auth.user.isPrereg) {\r\n this.registrant = this.auth.user.registrant;\r\n } else {\r\n this.registrant = this.auth.user.registrant;\r\n }\r\n }\r\n\r\n print() {\r\n (window).print();\r\n }\r\n\r\n exit() {\r\n if (this.auth.user.isPrereg) {\r\n this.router.navigate(['/account/notifications']);\r\n } else {\r\n this.router.navigate(['/home']);\r\n }\r\n\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n

    Registration assessment - Final entry notice

    \r\n
    \r\n \r\n
    Print
    \r\n
    \r\n
    \r\n \r\n
    Back
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n \r\n \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n

    \r\n GPhC foundation training number: {{ PreEntryID }}\r\n

    \r\n\r\n

    Dear {{ registrantName }}

    \r\n

    Confirmation of approval to sit the registration assessment\r\n

    \r\n\r\n

    \r\n This letter confirms that you are approved to sit the upcoming assessment. It sets out the steps\r\n you must take to arrange your assessment sitting, and key information about the assessment process. Please make sure you\r\n read it carefully and follow the instructions.\r\n

    \r\n\r\n

    What happens next?

    \r\n

    Your test centre place

    \r\n

    \r\n You will be allocated a place to sit at the closest available centre to you, based on the post code of the address we hold for you in your myGPhC account.\r\n

    \r\n\r\n

    \r\n You will be able to view details of your test centre place on the Scheduler system.\r\n

    \r\n\r\n

    \r\n You will have the opportunity to change test centre if you want to for a short time, subject to availability.\r\n

    \r\n\r\n

    Managing your test centre place

    \r\n

    \r\n You will receive a welcome email from Scheduler 48 hours before you will have access to Scheduler, \r\n the test centre portal. The email will confirm your account has been created and give you instructions \r\n on when you will be able to see your booking and how to change your test centre place, if you want to.\r\n

    \r\n\r\n

    \r\n Once you have access to your account, you will be able to change your test centre place if you want to, \r\n subject to availability. \r\n

    \r\n\r\n

    \r\n For more information on test centre places and how to change your booking, see the \r\n foundation trainee page\r\n where you can find the dedicated web page for the upcoming sitting. More information on key dates and timelines \r\n can also be found through the trainee page.\r\n

    \r\n\r\n

    More information about sitting the assessment

    \r\n\r\n

    \r\n Make sure you have read, and are aware of, all the information on the assessment webpage and, \r\n including key dates. You will be able to find more information on:\r\n

    \r\n\r\n
      \r\n
    • \r\n what to expect on the day of the assessment\r\n
    • \r\n
    • \r\n making the decision that you are ‘fit to sit’\r\n
    • \r\n
    • \r\n how you will receive your results\r\n
    • \r\n
    \r\n\r\n

    \r\n We strongly recommend you read the guide to sitting the assessment in the ‘On the day’ section of the webpage, \r\n as this provides you with the necessary information for before, during and after the assessment. \r\n

    \r\n

    \r\n If you have any questions which are not answered in this letter, or on the assessment webpage, please email\r\n \r\n regexam@pharmacyregulation.org.\r\n \r\n

    \r\n\r\n

    \r\n We would like to take this opportunity to wish you success with your registration assessment sitting.\r\n

    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, OnInit, Inject, Input } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { AssessmentApproveLetterData } from '../model/AssessmentApproveLetterData';\r\nimport { Registrant } from '../model/Registrant';\r\nimport { RegistrationService } from '../../core/service/registration.service';\r\nimport { LetterType } from '../model/LetterType';\r\n@Component({\r\n selector: 'app-assessment-approve-letter',\r\n moduleId: module.id,\r\n templateUrl: './assessmentApproveLetter.component.html',\r\n styleUrls: ['letter.scss']\r\n})\r\nexport class AssessmentApproveLetterComponent implements OnInit {\r\n\r\n registrantStartDate: any;\r\n registrant: Registrant;\r\n assessmentApproveData: AssessmentApproveLetterData;\r\n registrantAddress: any;\r\n isPharmacist: boolean;\r\n isPharmacyTechnician: boolean;\r\n loading = false;\r\n failed = false;\r\n receipt;\r\n user;\r\n currentDate;\r\n\r\n\r\n @Input() isRegistrant = false;\r\n registrantName: string;\r\n letterDate: any;\r\n submissionDeadline: any;\r\n PreEntryID: any;\r\n AssessmentDate: any;\r\n WebLink: any;\r\n Code: any;\r\n AssessmentName: any;\r\n id: string;\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n public auth: AuthService,\r\n private date: DatePipe,\r\n private service: RegistrationService,\r\n ) { this.id = this.route.snapshot.params['id']; }\r\n\r\n ngOnInit() {\r\n this.currentDate = new Date();\r\n\r\n this.registrantName = this.auth.user.forenames;\r\n this.registrant = this.auth.user.registrant;\r\n this.registrantAddress = this.auth.user.address;\r\n\r\n this.service.getLetters().subscribe(letters => {\r\n if (this.id === undefined) {\r\n this.PreEntryID = letters[0].data.PreEntryID;\r\n this.AssessmentName = letters[0].data.AssessmentName;\r\n\r\n } else {\r\n const letter = letters.find(l => l.id === this.id);\r\n this.PreEntryID = letter.data.PreEntryID;\r\n this.AssessmentName = letter.data.AssessmentName;\r\n }\r\n\r\n });\r\n if (this.auth.user.isPrereg) {\r\n this.registrant = this.auth.user.registrant;\r\n } else {\r\n this.registrant = this.auth.user.registrant;\r\n }\r\n }\r\n\r\n print() {\r\n (window).print();\r\n }\r\n\r\n exit() {\r\n if (this.auth.user.isPrereg) {\r\n this.router.navigate(['/prereg/home']);\r\n } else {\r\n this.router.navigate(['/home']);\r\n }\r\n\r\n }\r\n\r\n}\r\n","

    \r\n Yours sincerely,\r\n

    \r\n
    0\">\r\n \r\n \"Terry\r\n

    \r\n Terry Orford\r\n

    \r\n

    \r\n Head of Customer Services\r\n

    \r\n \r\n\r\n \r\n \"Duncan\r\n

    \r\n Duncan Rudkin\r\n

    \r\n

    \r\n Chief Executive and Registrar\r\n

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

    \r\n Customer Services Team\r\n

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

    \r\n Sarah Stein\r\n

    \r\n

    \r\n Head of Registration\r\n

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

    \r\n {{signature}}\r\n

    \r\n \r\n
    \r\n\r\n\r\n
    \r\n pharmacyregulation.org |  \r\n info@pharmacyregulation.org |  \r\n 020 3713 8000\r\n
    \r\n","import {\r\n Component, Input, Output, EventEmitter, Inject,\r\n ViewChildren, ContentChildren, AfterContentInit, ElementRef\r\n} from '@angular/core';\r\nimport { Registrant } from '../model/Registrant';\r\n\r\n\r\n@Component({\r\n selector: 'app-letter-footer',\r\n templateUrl: './letterFooter.component.html',\r\n styleUrls: ['./letterFooter.scss']\r\n})\r\nexport class LetterFooterComponent {\r\n @Input() signature;\r\n constructor() {\r\n }\r\n}\r\n","
    \r\n
    \r\n \"banner\r\n
    \r\n
    \r\n
    \r\n

    \r\n {{registrantName}}\r\n

    \r\n

    \r\n {{ registrantAddress.line1 }}\r\n

    \r\n

    \r\n {{ registrantAddress.line2 }}\r\n

    \r\n

    \r\n {{ registrantAddress.line3 }}\r\n

    \r\n

    \r\n {{ registrantAddress.town }}\r\n

    \r\n

    \r\n {{ registrantAddress.county }}\r\n

    \r\n

    \r\n {{ registrantAddress.postcode }}\r\n

    \r\n

    \r\n {{ registrantAddress.country }}\r\n

    \r\n

    \r\n {{ letterDate | date: 'd MMMM yyyy' }}\r\n

    \r\n
    \r\n
    \r\n\r\n\r\n
    ","import {\r\n Component, Input, Output, EventEmitter, Inject,\r\n ViewChildren, ContentChildren, AfterContentInit, ElementRef\r\n} from '@angular/core';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { Registrant } from '../model/Registrant';\r\n\r\n\r\n@Component({\r\n selector: 'app-letter-header',\r\n templateUrl: './letterHeader.component.html',\r\n styleUrls: ['./letterHeader.scss']\r\n})\r\nexport class LetterHeaderComponent {\r\n @Input() registrant;\r\n @Input() registrantAddress;\r\n @Input() letterDate;\r\n @Input() assessmentApproveTraineeAddress;\r\n @Input() isAssessmentApprove = false;\r\n registrantName: string;\r\n constructor(public auth: AuthService) {\r\n this.registrantName = this.auth.user.forenames + ' ' + (this.auth.user.middleName ? this.auth.user.middleName : '') + ' ' + this.auth.user.surname;\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Registrant } from '../../registration/model/Registrant';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { RegistrationService } from '../../core/service/registration.service';\r\nimport { LetterType } from '../model/LetterType';\r\n\r\n@Component({\r\n selector: 'app-nor-letter',\r\n moduleId: module.id,\r\n templateUrl: './nor.component.html',\r\n styleUrls: ['letter.scss']\r\n})\r\nexport class NorComponent implements OnInit {\r\n registrantStartDate: any;\r\n registrant: Registrant;\r\n registrantAddress: any;\r\n registrantType;\r\n\r\n loading = false;\r\n failed = false;\r\n letter;\r\n isRegistrant;\r\n letterDate;\r\n\r\n appealDate;\r\n id: string;\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private auth: AuthService,\r\n private service: RegistrationService\r\n ) { this.id = this.route.snapshot.params['id']; }\r\n\r\n ngOnInit() {\r\n this.registrant = this.auth.user.registrant;\r\n this.registrantType = this.registrant.type === 1 ? 'pharmacist' : 'pharmacy technician';\r\n this.isRegistrant = this.auth.user.isRegistrant;\r\n this.registrantAddress = this.auth.user.address;\r\n this.service.getLetters().subscribe(\r\n letters => {\r\n this.letter = letters.find(l => l.letterType === LetterType.NoticeOfRemoval);\r\n this.letterDate = this.letter.letterDate;\r\n const removalTicks = new Date(this.letter.data.RemovalDate).getTime() - (24 * 60 * 60 * 1000);\r\n this.appealDate = new Date(removalTicks);\r\n }\r\n );\r\n }\r\n\r\n\r\n print() {\r\n (window).print();\r\n }\r\n\r\n exit() {\r\n if (this.auth.user.isRegistrant) {\r\n this.router.navigate(['/registration']);\r\n } else {\r\n this.router.navigate(['/home']);\r\n }\r\n\r\n }\r\n\r\n}\r\n\r\n","\r\n
    \r\n
    \r\n

    Notice of removal

    \r\n
    \r\n \r\n
    Print
    \r\n
    \r\n
    \r\n \r\n
    Back
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n

    Notice of removal from the GPhC register for revalidation non-compliance

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

    \r\n On {{ letter?.data.NIRLetterSentDate | date: 'd MMMM yyyy' }}, we issued you with a notice of\r\n intention to remove your entry from the register.\r\n The notice explained that not submitting a complete revalidation record and not providing\r\n evidence of exceptional circumstances would mean that your registration is at risk.\r\n The notice also set out the options available to you, with a response date of\r\n {{ letter?.data.NIRResponseDate | date: 'd MMMM yyyy' }}.\r\n

    \r\n

    \r\n To date we have not received a response from you. You have not submitted your complete\r\n revalidation record or provided a written representation, explaining why you have been unable to\r\n submit your revalidation record or why your entry should not be removed from the register.\r\n

    \r\n

    \r\n \r\n I am writing to inform you that your entry will be removed from the register on\r\n {{ letter?.data.RemovalDate | date: 'd MMMM yyyy' }} for failure to comply with the\r\n revalidation\r\n framework. This means that you will no longer be able to practise as a {{ registrantType }}\r\n from\r\n this date.\r\n \r\n

    \r\n

    \r\n Under article 40 of the Pharmacy Order 2010, you have a right to appeal the decision to remove\r\n your entry from the GPhC register. If you want to do this, you must submit a completed ‘notice\r\n of appeal’ form by\r\n \r\n {{appealDate | date: 'd MMMM yyyy'}}.\r\n \r\n\r\n

    \r\n

    \r\n The form and guidance about how to complete it is available from the registration section of the\r\n GPhC website at www.pharmacyregulation.org/decisions-about-your-application-or-registration\r\n

    \r\n

    \r\n The process followed by the appeals committee is set out in the GPhC (Appeals Committee Rules)\r\n Order of Council 2010. The appeals committee has the power to award costs against any party to\r\n an appeal, so you may want to seek independent legal advice before lodging an appeal.\r\n

    \r\n

    \r\n Important: If you submit a notice of appeal in relation your removal, we may suspend your\r\n entry from the register until the final outcome of your appeal. This is set out in the GPhC\r\n (Continuing Professional Development and Consequential Amendments Rules) Order of Council 2011.\r\n Practising as a pharmacist or pharmacy technician while not on the register is a criminal\r\n offence. Make sure that you have appropriate staffing cover in place after your removal date if\r\n necessary, and that you notify your employer of your removal date, if you are not self-employed.\r\n You should also check your indemnity arrangements, as these may need to continue after your\r\n removal.\r\n

    \r\n \r\n

    \r\n You can apply to restore your entry to the register by completing an application for\r\n restoration, which you can find on our website. Please note you must submit the outstanding\r\n revalidation records with your application for restoration.\r\n

    \r\n

    \r\n If you have any queries or require any further information, please contact us by email at info@pharmacyregulation.org or on 020 3713 8000. \r\n

    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, OnInit, Inject, Input } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Registrant } from '../../registration/model/Registrant';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { Technician } from '../../technician/model/Technician';\r\nimport { RegistrantType } from '../model/RegistrantType';\r\n@Component({\r\n selector: 'app-noe-letter',\r\n moduleId: module.id,\r\n templateUrl: './noticeOfEntry.component.html',\r\n styleUrls: ['letter.scss']\r\n})\r\nexport class NoticeOfEntryComponent implements OnInit {\r\n registrantStartDate: any;\r\n registrant: Registrant | Technician;\r\n registrantAddress: any;\r\n isPharmacist: boolean;\r\n isPharmacyTechnician: boolean;\r\n loading = false;\r\n failed = false;\r\n receipt;\r\n user;\r\n\r\n\r\n @Input() isRegistrant = false;\r\n // @Input() isTechnician = false;\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n public auth: AuthService,\r\n private date: DatePipe\r\n ) { }\r\n\r\n ngOnInit() {\r\n if(this.auth.user.registrant.type){\r\n this.isPharmacist=this.auth.user.registrant.type === RegistrantType.Pharmacist;\r\n }\r\n \r\n this.registrantAddress = this.auth.user.address;\r\n if (this.auth.user.isPrereg) {\r\n this.registrant = this.auth.user.registrant;\r\n } else {\r\n // we know its a technician if not a pharmacist\r\n console.log({usr: this.auth.user});\r\n this.registrant = this.auth.user.registrant;\r\n\r\n }\r\n }\r\n\r\n print() {\r\n (window).print();\r\n }\r\n\r\n exit() {\r\n if (this.auth.user.isRegistrant) {\r\n this.router.navigate(['/registration']);\r\n } else {\r\n this.router.navigate(['/home']);\r\n }\r\n\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n

    Notice of entry

    \r\n
    \r\n \r\n
    Print
    \r\n
    \r\n
    \r\n \r\n
    Back
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n\r\n \r\n\r\n \r\n\r\n
    \r\n
    \r\n\r\n

    Notice of entry

    \r\n\r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    GPhC Registration Details
    Registration number:{{ registrant.registrationNumber }}
    Inital entry date: {{ registrant.joinedDate | date}}
    Expiry date:{{ registrant.expiryDate | date}}
    Renewal due date:{{ registrant.renewalDate | date}}
    \r\n\r\n

    \r\n I am pleased to confirm that your application has been successful and your name has been entered in part 1\r\n part 2 of the\r\n General Pharmaceutical Council register. Under the Pharmacy Order 2010 your entry in the register is valid\r\n for one calendar\r\n year from the date of entry, and you must renew your entry at least two months before it expires.\r\n

    \r\n\r\n

    \r\n All pharmacy professionals on our register must keep to the GPhC registration rules and the standards for\r\n pharmacy professionals,\r\n which help to make sure people using pharmacy services receive safe and effective care. This includes\r\n carrying regular professional\r\n development as set out in the GPhC revalidation framework. You can find out more about these requirements on\r\n our website,\r\n www.pharmacyregulation.org.\r\n

    \r\n

    \r\n I would like to take this opportunity to welcome you to the register.\r\n

    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Registrant } from '../../registration/model/Registrant';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { RegistrationService } from '../../core/service/registration.service';\r\nimport { LetterType } from '../model/LetterType';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-noir-letter',\r\n moduleId: module.id,\r\n templateUrl: './noticeOfIntendedRemoval.component.html',\r\n styleUrls: ['letter.scss']\r\n})\r\nexport class NoticeOfIntendedRemovalComponent implements OnInit {\r\n registrantStartDate: any;\r\n registrant: Registrant;\r\n registrantAddress: any;\r\n\r\n loading = false;\r\n failed = false;\r\n\r\n initialCallDate;\r\n firstReminderEmail;\r\n finalReminderEmail;\r\n letterDate;\r\n id: string;\r\n\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private auth: AuthService,\r\n private service: RegistrationService\r\n ) { this.id = this.route.snapshot.params['id']; }\r\n\r\n ngOnInit() {\r\n this.registrant = this.auth.user.registrant;\r\n this.registrantAddress = this.auth.user.address;\r\n\r\n this.service.getLetters().subscribe(letters => {\r\n const letter = letters.find(l => l.letterType === LetterType.NoticeOfIntentToRemove);\r\n this.letterDate = letter.letterDate;\r\n this.initialCallDate = letter.data.InitialCallDate;\r\n this.firstReminderEmail = letter.data.FirstReminderEmail;\r\n this.finalReminderEmail = letter.data.FinalReminderEmail;\r\n\r\n });\r\n }\r\n\r\n\r\n print() {\r\n (window).print();\r\n }\r\n\r\n exit() {\r\n if (this.auth.user.isRegistrant) {\r\n this.router.navigate(['/registration']);\r\n } else {\r\n this.router.navigate(['/home']);\r\n }\r\n\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n

    Notice of intention to remove

    \r\n
    \r\n \r\n
    Print
    \r\n
    \r\n
    \r\n \r\n
    Back
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n

    Notice of intended removal from the GPhC register

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

    \r\n I am writing to confirm that your myGPhC record shows you have failed to submit your complete revalidation\r\n record to the\r\n GPhC. Please be aware that this notice is not related to the renewal of your registration.\r\n

    \r\n

    \r\n We have previously reminded you that your registration is at risk if you do not submit a complete\r\n revalidation record,\r\n and do not provide evidence of exceptional circumstances which explain why you have not submitted a record.\r\n

    \r\n

    \r\n Under the GPhC (Continuing Professional Development and Consequential Amendments Rules) Order of\r\n Council 2011, we may take action that could lead to your removal from the register.\r\n

    \r\n\r\n

    \r\n If you want to stay on the register and continue to practise as a pharmacy professional, you have two\r\n options at this\r\n stage. You must either:\r\n

    \r\n
      \r\n
    1. \r\n submit your complete revalidation record via myGPhc, or\r\n
    2. \r\n
    3. \r\n write to us, setting out the reasons why your entry should not be removed from the register. You must\r\n include any\r\n relevant evidence of exceptional circumstances in support of your reasons. Address your written reasons to\r\n the\r\n registrar.\r\n
    4. \r\n
    \r\n\r\n

    \r\n We must receive your complete revalidation record, or your written reasons with supportive evidence, within\r\n 28 days of\r\n the date of this letter. If we do not, we may remove you from the register. Please note that this process is\r\n separate to\r\n the renewal of your registration. If you have not yet renewed your registration you may still be removed\r\n from the\r\n register for failure to renew, even if you now submit your revalidation record.\r\n

    \r\n

    \r\n If you choose to send us your written reasons and supportive evidence explaining why you were unable to\r\n submit your\r\n revalidation record, this information will be considered by the registrar, who will then decide whether or\r\n not you may\r\n continue to be registered.\r\n

    \r\n\r\n

    \r\n You also have the option of requesting that your reasons and evidence be considered by the Fitness to\r\n Practise Committee\r\n at a hearing. If you would prefer that a hearing takes place, you must notify the GPhC when you send in your\r\n written\r\n reasons. If you do not state clearly that you want a hearing to take place, the registrar will make the\r\n decision about\r\n your registration without a hearing taking place.\r\n

    \r\n\r\n

    \r\n Important: if you do not submit your written reasons and any relevant supportive evidence, you do\r\n not have the option of requesting\r\n a hearing. The registrar will make the decision about whether or not you may continue to be registered.\r\n

    \r\n\r\n

    \r\n If you request a hearing, the purpose of the hearing will be for the Fitness to Practise Committee to make\r\n ‘findings of\r\n fact’. The registrar will use these findings in making the final decision regarding your registration.\r\n

    \r\n\r\n

    \r\n For more information about what will happen at a hearing, see Rule 33 of The GPhC (Fitness to Practise and\r\n Disqualification etc. Rule) Order of Council 2010.\r\n

    \r\n\r\n

    \r\n This is your final reminder to take action. Your register entry may be removed if you do not respond to this\r\n request.\r\n

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

    \r\n If you have any questions, please contact our Customer Services Team by email at info@pharmacyregulation.org\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 { Router, ActivatedRoute } from '@angular/router';\r\nimport { Registrant } from '../../registration/model/Registrant';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { AccountService } from '../../account/service/account.service';\r\nimport { RegistrationService } from '../../core/service/registration.service';\r\nimport { LetterType } from '../model/LetterType';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-remediation-letter',\r\n moduleId: module.id,\r\n templateUrl: './noticeOfRemediation.component.html',\r\n styleUrls: ['letter.scss']\r\n})\r\nexport class NoticeOfRemediationComponent implements OnInit {\r\n\r\n registrant: Registrant;\r\n registrantAddress: any;\r\n\r\n loading = false;\r\n failed = false;\r\n submissionDeadline;\r\n letterDate;\r\n id: string;\r\n\r\n\r\n constructor(\r\n private router: Router,\r\n private service: RegistrationService,\r\n private route: ActivatedRoute,\r\n private auth: AuthService\r\n ) { this.id = this.route.snapshot.params['id']; }\r\n\r\n ngOnInit() {\r\n this.registrant = this.auth.user.registrant;\r\n this.registrantAddress = this.auth.user.address;\r\n this.service.getLetters().subscribe(letters => {\r\n\r\n const letter = letters.find(l => l.letterType === LetterType.Remediation);\r\n this.letterDate = letter.letterDate;\r\n this.submissionDeadline = letter.data.SubmissionDeadline;\r\n\r\n });\r\n\r\n }\r\n\r\n\r\n print() {\r\n (window).print();\r\n }\r\n\r\n exit() {\r\n if (this.auth.user.isRegistrant) {\r\n this.router.navigate(['/registration']);\r\n } else {\r\n this.router.navigate(['/home']);\r\n }\r\n\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n

    Notice of remediation

    \r\n
    \r\n \r\n
    Print
    \r\n
    \r\n
    \r\n \r\n
    Back
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n \r\n\r\n \r\n
    \r\n
    \r\n\r\n\r\n \r\n\r\n

    Notice of Remediation

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

    \r\n You were due to submit your revalidation records by {{submissionDeadline | date: 'd MMMM yyyy'}}. As you did not submit your revalidation\r\n records by this date, you are now in remediation. This means that you have six weeks from the date shown to submit your records\r\n or tell us why you cannot, before we take further action.\r\n

    \r\n\r\n What should I do next?\r\n \r\n

    \r\n You should submit your revalidation records to us through myGPhC as soon as possible.\r\n

    \r\n

    \r\n If you have a good reason why you are not able to submit some or all of your revalidation records, you should tell us. You can\r\n request an extension to your submission deadline, or to complete fewer entries covering the same period.\r\n

    \r\n

    \r\n To do this, log on to myGPhC and click on ‘Tell us why you can’t submit’ on the revalidation page. Fill in the form and\r\n submit it with supporting documents and we will consider your request.\r\n

    \r\n

    \r\n If you do submit records to us during the remediation period, your submission will automatically be selected for review.\r\n

    \r\n\r\n Why do you need my revalidation records?\r\n\r\n

    \r\n We have a statutory duty to make sure pharmacy professionals practise safely and effectively. Our revalidation requirements\r\n allow pharmacists and pharmacy technicians to show that they keep their knowledge and skills up to date in order to maintain\r\n and improve their practice.\r\n

    \r\n \r\n \r\n What if I don’t want to renew my registration?\r\n \r\n\r\n

    \r\n If you’re not intending to renew your registration, tell us that you no longer want to be registered by completing an \r\n Application for voluntary removal form. This helps us to keep the register information accurate and allows you to choose when you leave\r\n the register. There is no charge to leave the register.\r\n

    \r\n\r\n What happens if I don’t submit my records without good reason?\r\n\r\n

    \r\n If you do not submit your records by the end of the remediation period and do not provide a good reason why, we will take\r\n further action and begin the process to remove you from the register. This is called ‘administrative removal’.\r\n

    \r\n\r\n

    \r\n If you are removed from the register through this process and you later reapply to be registered, we will expect to receive\r\n and review your revalidation records as part of your application.\r\n

    \r\n\r\n

    \r\n If you have any question about what you must do each year to meet the revalidation requirement,\r\n read the revalidation framework.\r\n

    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    ","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Registrant } from '../model/Registrant';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { RegistrationService } from '../../core/service/registration.service';\r\nimport { LetterType } from '../model/LetterType';\r\n\r\n@Component({\r\n selector: 'app-renewal-card-letter',\r\n moduleId: module.id,\r\n templateUrl: './renewalCardLetter.component.html',\r\n styleUrls: ['letter.scss']\r\n})\r\nexport class RenewalCardLetterComponent implements OnInit {\r\n registrantStartDate: any;\r\n registrant: Registrant;\r\n registrantAddress: any;\r\n registrantType;\r\n\r\n loading = false;\r\n failed = false;\r\n @Input() letter;\r\n isRegistrant;\r\n\r\n appealDate;\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n public auth: AuthService,\r\n private service: RegistrationService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.registrant = this.auth.user.registrant;\r\n this.registrantType = this.registrant.type === 1 ? 'pharmacist' : 'pharmacy technician';\r\n this.isRegistrant = this.auth.user.isRegistrant;\r\n this.registrantAddress = this.auth.user.address;\r\n \r\n }\r\n\r\n\r\n print() {\r\n (window).print();\r\n }\r\n\r\n exit() {\r\n if (this.auth.user.isRegistrant) {\r\n this.router.navigate(['/registration']);\r\n } else {\r\n this.router.navigate(['/home']);\r\n }\r\n\r\n }\r\n\r\n}\r\n\r\n","
    \r\n\r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n\r\n

    Your registration as a {{registrantType}} is due for renewal\r\n

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

    \r\n Your registration as a {{registrantType}} will expire on {{ letter?.data.ExpiryDate | date: 'd MMMM yyyy' }}.\r\n If you want to continue to practise as a {{registrantType}} after this date, you must renew your registration\r\n at least two months before it is due to expire, by {{ letter?.data.RenewalDate | date: 'd MMMM yyyy' }}. This\r\n requirement is set out in the Pharmacy Order 2010.\r\n\r\n

    \r\n\r\n

    \r\n To renew your registration, you must log on to www.myGPhC.org and:\r\n

    \r\n
      \r\n
    • complete a set of declarations to confirm that you are fit to practise as a pharmacy professional
    • \r\n
    • pay a registration renewal fee of {{letter?.data.AnnualRenewalAmount | currency: 'GBP' : 'symbol' :\r\n '.2'}}.
    • \r\n
    • submit your revalidation records covering your previous 12-month period of registration
    • \r\n
    \r\n\r\n\r\n
    \r\n

    Your registration renewal

    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    When you need to renew by:{{ letter?.data.RenewalDate | date: 'd MMMM yyyy' }}
    Your registration number:{{registrant.registrationNumber}}
    Your renewal fee:{{letter?.data.AnnualRenewalAmount | currency: 'GBP' : 'symbol' : '.2'}}
    \r\n
    \r\n\r\n

    Ways to pay

    \r\n

    \r\n We recommend that you pay your renewal fee by debit card, as you can do this easily when you log on to myGPhC\r\n to make your declarations.\r\n You can also pay by Direct Debit, either once a year, or divide your renewal fee into four quarterly payments.\r\n If you want to pay by Direct Debit, you will need to set this up by\r\n {{ letter?.data.DDMandateDeadline | date:'d MMMM yyyy' }}. See\r\n www.pharmacyregulation.org/renew\r\n for more information on setting up a Direct Debit.\r\n

    \r\n\r\n

    If you do not renew by {{ letter?.data.RenewalDate | date: 'd MMMM yyyy' }}

    \r\n

    \r\n If you don’t renew your registration by the date above, we will take action to remove your entry from the\r\n register when your registration expires. You are not able to practise as a {{registrantType}} unless you are\r\n registered.\r\n

    \r\n\r\n

    Meeting the revalidation requirement

    \r\n

    You can find more about what you need to record and submit in the revalidation framework. The framework and\r\n other supporting materials are available on our website at www.pharmacyregulation.org/revalidation

    \r\n\r\n

    If you do not want to renew your registration

    \r\n

    If you’re not intending to renew your registration, tell us that you no longer want to be registered by\r\n completing an Application for voluntary removal form, available on our\r\n website. This helps us to keep the\r\n register information accurate and allows you to choose when you leave the register. There is no charge to\r\n leave\r\n the register.

    \r\n

    \r\n If you need more information about renewing your registration, please go to www.pharmacyregulation.org/renew or email our Customer Contact Centre at info@pharmacyregulation.org.\r\n

    \r\n\r\n

    \r\n I look forward to your renewing your registration with the General Pharmaceutical Council for the coming year,\r\n and to working together to promote the protection of patients and the public.\r\n

    \r\n\r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    ","
    \r\n\r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n\r\n

    Your registration as a {{registrantType}} is due for renewal\r\n

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

    \r\n Your registration as a {{registrantType}} will expire on {{ letter?.data.ExpiryDate | date: 'd MMMM yyyy' }}.\r\n If you want to continue to practise as a {{registrantType}} after this date, you must renew your registration\r\n at least two months before it is due to expire, by {{ letter?.data.RenewalDate | date: 'd MMMM yyyy' }}. This\r\n requirement is set out in the Pharmacy Order 2010.\r\n\r\n

    \r\n\r\n

    \r\n To renew your registration, you must log on to www.myGPhC.org and:\r\n

    \r\n
      \r\n
    • complete a set of declarations to confirm that you are fit to practise as a pharmacy professional
    • \r\n
    • submit your revalidation records covering your previous 12-month period of registration
    • \r\n
    \r\n\r\n

    Your declarations

    \r\n

    You must log on to www.myGPhC.org to make your declarations, by the date set out below. If you miss this\r\n deadline, your Direct Debit will not be collected and you will need to pay by card.

    \r\n\r\n

    Your payment

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

    Your registration renewal

    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
    When you need to renew by:{{ letter?.data.DDDeclarationDeadline | date: 'd MMMM yyyy' }}
    Your registration number:{{registrant.registrationNumber}}
    \r\n\r\n

    If you don’t make your declarations in time your direct debit will be cancelled and\r\n you will need to renew with a debit or credit card payment.

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

    Your Direct Debit payment schedule

    \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n
    Direct Debit dateRenewal fee to be taken
    {{item.Date | date: 'dd/MM/yyyy'}}{{item.Amount | currency: 'GBP' : 'symbol' : '.2'}}
    \r\n\r\n

    If you don’t make your declarations in time your direct debit will be cancelled and\r\n you will need to renew with a debit or credit card payment.

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

    Your current method of payment is Direct Debit. This means that your fee payment is already set up. See the\r\n payment schedule to see when your fee payment will be taken. This will happen automatically if you complete\r\n your renewal declarations by the date set out above.

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

    If you do not renew by {{ letter?.data.RenewalDate | date: 'd MMMM yyyy' }}

    \r\n

    \r\n If you don’t renew your registration by the date above, we will take action to remove your entry from the\r\n register when your registration expires. You are not able to practise as a {{registrantType}} unless you are\r\n registered.\r\n

    \r\n\r\n

    Meeting the revalidation requirement

    \r\n

    You can find more about what you need to record and submit in the revalidation framework. The framework and\r\n other supporting materials are available on our website at www.pharmacyregulation.org/revalidation

    \r\n\r\n

    If you do not want to renew your registration

    \r\n

    If you’re not intending to renew your registration, tell us that you no longer want to be registered by\r\n completing an Application for voluntary removal form, available on our\r\n website. This helps us to keep the\r\n register information accurate and allows you to choose when you leave the register. There is no charge to\r\n leave\r\n the register.

    \r\n

    \r\n If you need more information about renewing your registration, please go to www.pharmacyregulation.org/renew or email our Customer Contact Centre at info@pharmacyregulation.org.\r\n

    \r\n\r\n

    \r\n I look forward to your renewing your registration with the General Pharmaceutical Council for the coming year,\r\n and to working together to promote the protection of patients and the public.\r\n

    \r\n\r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    ","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Registrant } from '../model/Registrant';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { RegistrationService } from '../../core/service/registration.service';\r\nimport { LetterType } from '../model/LetterType';\r\n\r\n@Component({\r\n selector: 'app-renewal-dd-letter',\r\n moduleId: module.id,\r\n templateUrl: './renewalDDLetter.component.html',\r\n styleUrls: ['letter.scss']\r\n})\r\nexport class RenewalDDLetterComponent implements OnInit {\r\n registrantStartDate: any;\r\n registrant: Registrant;\r\n registrantAddress: any;\r\n registrantType;\r\n\r\n loading = false;\r\n failed = false;\r\n isRegistrant;\r\n\r\n @Input() letter;\r\n\r\n appealDate;\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n public auth: AuthService,\r\n private service: RegistrationService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.registrant = this.auth.user.registrant;\r\n this.registrantType = this.registrant.type === 1 ? 'pharmacist' : 'pharmacy technician';\r\n this.isRegistrant = this.auth.user.isRegistrant;\r\n this.registrantAddress = this.auth.user.address;\r\n \r\n }\r\n\r\n\r\n print() {\r\n (window).print();\r\n }\r\n\r\n exit() {\r\n if (this.auth.user.isRegistrant) {\r\n this.router.navigate(['/registration']);\r\n } else {\r\n this.router.navigate(['/home']);\r\n }\r\n\r\n }\r\n\r\n}\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Registrant } from '../model/Registrant';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { RegistrationService } from '../../core/service/registration.service';\r\nimport { PaymentMethod } from '../../payment/model/PaymentMethod';\r\n\r\n@Component({\r\n selector: 'app-renewal-letter',\r\n moduleId: module.id,\r\n templateUrl: './renewalLetter.component.html',\r\n styleUrls: ['letter.scss']\r\n})\r\nexport class RenewalLetterComponent implements OnInit {\r\n registrantStartDate: any;\r\n registrant: Registrant;\r\n registrantAddress: any;\r\n registrantType;\r\n\r\n loading = false;\r\n failed = false;\r\n letter;\r\n isRegistrant;\r\n PaymentMethod = PaymentMethod;\r\n paymentMethod: PaymentMethod;\r\n\r\n id;\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private auth: AuthService,\r\n private service: RegistrationService\r\n ) {\r\n this.id = route.snapshot.params['id'];\r\n }\r\n\r\n ngOnInit() {\r\n this.loading = true;\r\n this.registrant = this.auth.user.registrant;\r\n this.registrantType = this.registrant.type === 1 ? 'pharmacist' : 'pharmacy technician';\r\n // this.registrantType = 'pharmacist';\r\n this.isRegistrant = this.auth.user.isRegistrant;\r\n this.registrantAddress = this.auth.user.address;\r\n this.service.getLetters().subscribe(\r\n letters => {\r\n this.letter = letters.find(l => l.id === this.id);\r\n\r\n this.paymentMethod = this.letter.data.PaymentMethod;\r\n\r\n this.loading = false;\r\n \r\n }\r\n );\r\n }\r\n\r\n\r\n print() {\r\n (window).print();\r\n }\r\n\r\n exit() {\r\n if (this.auth.user.isRegistrant) {\r\n this.router.navigate(['/registration']);\r\n } else {\r\n this.router.navigate(['/home']);\r\n }\r\n\r\n }\r\n\r\n}\r\n\r\n","\r\n
    \r\n
    \r\n

    Renewal reminder

    \r\n
    \r\n \r\n
    Print
    \r\n
    \r\n
    \r\n \r\n
    Back
    \r\n
    \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 { Router, ActivatedRoute } from '@angular/router';\r\nimport { Registrant } from '../model/Registrant';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { RegistrationService } from '../../core/service/registration.service';\r\nimport { LetterType } from '../model/LetterType';\r\nimport { TrainingRecordLetterData } from '../model/TraningRecordLetterData';\r\nimport { Mock } from 'protractor/built/driverProviders';\r\n\r\n\r\n@Component({\r\n selector: 'app-training-record-letter',\r\n moduleId: module.id,\r\n templateUrl: './trainingRecord.component.html',\r\n styleUrls: ['letter.scss', './trainingRecord.scss']\r\n})\r\nexport class TrainingRecordComponent implements OnInit {\r\n registrantStartDate: any;\r\n registrant: Registrant = new Registrant(null);\r\n registrantAddress: any;\r\n registrantEmail : string;\r\n registrantType;\r\n\r\n loading = false;\r\n failed = false;\r\n \r\n isRegistrant;\r\n trainingRecordLetterData: TrainingRecordLetterData; \r\n trainingSites; \r\n preEntryNumber;\r\n letterDate;\r\n id: string;\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private auth: AuthService,\r\n private service: RegistrationService\r\n ) { this.id = this.route.snapshot.params['id']; }\r\n\r\n ngOnInit() {\r\n this.registrant.title = this.auth.user.title;\r\n this.registrant.forenames = this.auth.user.forenames + ' ' + (this.auth.user.middleName ? this.auth.user.middleName : '');\r\n this.registrant.surname = this.auth.user.surname;\r\n //this.registrantType = this.registrant.type === 1 ? 'pharmacist' : 'pharmacy technician';\r\n this.isRegistrant = this.auth.user.isRegistrant;\r\n this.registrantAddress = this.auth.user.address;\r\n this.registrantEmail = this.auth.user.contact.email;\r\n this.service.getLetters().subscribe(\r\n letters => {\r\n const letter = letters.find(l => l.letterType === LetterType.TrainingRecord);\r\n letter.data.TrainingSites.sort((site1, site2) => {\r\n return new Date(site1.StartDate).getTime() - new Date(site2.StartDate).getTime();\r\n });\r\n this.trainingSites = letter.data.TrainingSites;\r\n this.preEntryNumber = letter.data.PreEntryNumber;\r\n this.letterDate = letter.data.Date;\r\n }\r\n );\r\n }\r\n\r\n\r\n print() {\r\n (window).print();\r\n }\r\n\r\n exit() { \r\n this.router.navigate(['/account/notifications']);\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n

    Foundation training welcome letter

    \r\n
    \r\n \r\n
    Print
    \r\n
    \r\n
    \r\n \r\n
    Back
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n\r\n
    \r\n\r\n \r\n \r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n

    Foundation training welcome letter\r\n

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

    I am pleased to confirm that you are now approved to begin foundation training. You are eligible to\r\n start training from the date given in your training record.

    \r\n

    Foundation training lasts for at least 52 weeks. Your training provider will work with you to help\r\n you achieve the performance standards you need to become a registered pharmacist. As long as you meet the\r\n standards, and your designated supervisor confirms this through your progress reports (see below), you will be eligible to\r\n sit the registration assessment towards the end of your training.

    \r\n

    If you pass the assessment and gain the necessary practical experience (as confirmed by your designated supervisor through\r\n the final declaration), you will be eligible to apply to be registered as a pharmacist.

    \r\n

    This letter contains important information that you will need as you progress through your training, so\r\n please read it carefully.\r\n

    \r\n\r\n Your foundation training number\r\n

    \r\n Your foundation training number is: {{ preEntryNumber }}.\r\n

    \r\n

    \r\n Please make a careful note of it, as you will need to quote it if you phone or email us, and when you apply\r\n to sit the registration assessment.\r\n

    \r\n\r\n\r\n Your training record\r\n

    Your training record contains the details that we currently hold for you. Please check them carefully and\r\n email us within seven days if you think there is a mistake or if your circumstances change. If your details\r\n are incorrect, or if they change, this may affect whether you can sit the registration assessment.

    \r\n

    It is your responsibility to make sure your training provider has an up to date copy of your training\r\n record.

    \r\n

    Important: your online training record will not automatically update to reflect any changes you make\r\n to your training throughout the year. If there are changes to your training arrangements and you need an\r\n updated copy of your training record, please contact us.

    \r\n\r\n The foundation training manual\r\n

    The online foundation training manual sets out key information about your foundation training\r\n year. It is important that you read every section thoroughly and that you are familiar with all its\r\n contents.

    \r\n\r\n

    We update the manual from time to time during the training year, so the online version will have the most\r\n up-to-date information. You can download the entire manual as a PDF or just print the parts you feel you\r\n need.

    \r\n

    Your designated supervisor can also refer to the online foundation training manual, as well as specific guidance and\r\n resources for designated supervisors. Please also make sure you give your designated supervisor a copy of this letter.

    \r\n\r\n Progress reports\r\n

    Your progress reports are a vital record of your progress through the foundation training year. Your\r\n designated supervisor will need to complete and sign your reports each quarter (after 13, 26, and 39 weeks). They will need\r\n to confirm that your progress is at least ‘satisfactory’ at week 39 before you can sit the assessment.\r\n Please submit a copy of the week 39 progress report to us, as well as any signed as ‘unsatisfactory’.

    \r\n

    Please note that the assessment summary is a document purely for your own records. You do not need to\r\n submit a copy to us, unless we request it.

    \r\n\r\n Becoming a pharmacy professional\r\n

    It’s important to be proactive during your training, and make sure that you keep up to date with what is\r\n happening in your profession rather than just relying on information from us. This will help you to develop\r\n your knowledge and skills, and to prepare to start carrying out the revalidation activity you will need to\r\n complete if you become registered as a pharmacy professional.

    \r\n

    You can find out more about revalidation on our main website, including what you we need to carry out,\r\n record and submit each year of registration.

    \r\n\r\n Time limit to register\r\n

    To make sure that you have up-to-date knowledge and skills when you apply to register as a pharmacist,\r\n there is a time limit for completing your study and training to meet the registration criteria.

    \r\n

    You must successfully complete, within eight years of the date you began your MPharm degree, or within\r\n four years of the date you began your OSPAP postgraduate diploma:

    \r\n
      \r\n
    • a UK accredited MPharm degree or OSPAP qualification
    • \r\n
    • \r\n 52 weeks of foundation training in England, Scotland or Wales signed off as satisfactory by your\r\n designated supervisor\r\n
    • \r\n
    • the GPhC registration assessment with a pass result
    • \r\n
    • a registration application
    • \r\n
    \r\n

    Please see the criteria for registration as a pharmacist for more information.

    \r\n

    Important: if, during your training year, you have a change of circumstances that may affect how\r\n long it takes you to complete your foundation training you should tell us.

    \r\n\r\n Staying in touch with us during your training\r\n\r\n

    During the year we will contact you to give you useful information about your training, and to tell you\r\n about the arrangements for sitting the registration assessment. We will contact you by email, so make\r\n sure the email address you provided when you created your myGPhC account is correct. You can update\r\n your email at any time through your myGPhC account.

    \r\n

    You will find all the official GPhC forms that you may need to send to us throughout the year in the\r\n foundation training manual on our website.

    \r\n

    If you need to contact us, you can use the email form in the foundation training manual, or call the Customer Contact Centre\r\n on 020 3731 8000.

    \r\n

    If you need to send us any important documents by post, make sure you use recorded delivery or a service\r\n that allows you to track the correspondence and check that it has been delivered safely.

    \r\n

    You can also find out about any changes to foundation policy or processes by going to the GPhC\r\n website, or via Twitter, Facebook, or LinkedIn.

    \r\n\r\n Issues with your training\r\n

    \r\n During your training, you may meet situations that you do not expect. You should be able to resolve most of\r\n these with your designated supervisor, but sometimes you may need to contact us for advice.\r\n

    \r\n

    You can find answers to most questions either in the training manual or on our website- please check there\r\n first. If you do feel you need more information, you can contact us using the details above.

    \r\n

    I wish you the best of luck in your training, and I look forward to welcoming you onto our register next\r\n year.

    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \"General\r\n
    \r\n\r\n

    Foundation training record

    \r\n

    This training record confirms the training site details we had for you at the time your application was\r\n provisionally approved.

    \r\n

    \r\n If your training details changed after your application was provisionally approved these will not be reflected\r\n in this training record and an updated training record will be sent to you\r\n separately.\r\n

    \r\n

    \r\n You must check that the details below are correct. If there are any errors, please email us at\r\n foundation@pharmacyregulation.org as soon as possible. If your training record is not correct, this may affect\r\n whether you are eligible to sit the registration assessment or to register. We only recognise approved\r\n training as shown below.\r\n

    \r\n

    \r\n If your initial start date, shown below, is after Friday 2 August 2024, you cannot meet the eligibility criteria for\r\nthe summer assessment. This means that you will not be able to sit the summer 2025 registration assessment.\r\n

    \r\n

    Please provide a copy of this foundation training record to your employer(s) and keep a copy for you\r\n own records.

    \r\n

    Important: your online training record will not automatically update to reflect any changes you make\r\n to your training throughout the year. If there are changes to your training arrangements and you need an\r\n updated copy of your training record, please contact us.

    \r\n\r\n

    \r\n\r\n

    \r\n

    Trainee details

    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Name{{ registrant.forenames }} {{ registrant.surname }}
    Job titleFoundation Trainee
    Foundation training no{{ preEntryNumber }}
    Email address{{ registrantEmail }}
    \r\n
    \r\n\r\n

    Training details

    \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
    Training DatesTraining Site
    {{ trainingSite.StartDate | date:'dd MMMM yy' }} -\r\n {{ trainingSite.EndDate | date:'dd MMMM yy' }} \r\n {{ trainingSite.PharmacyName }}\r\n\r\n {{ trainingSite.AddressLine1 }}\r\n\r\n {{ trainingSite.AddressLine2 }}\r\n\r\n {{ trainingSite.AddressLine3 }}\r\n\r\n {{ trainingSite.Town }}\r\n\r\n {{ trainingSite.County }}\r\n\r\n {{ trainingSite.PostCode }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    ","\r\n
    \r\n
    \r\n

    Voluntary Removal

    \r\n
    \r\n \r\n
    Print
    \r\n
    \r\n
    \r\n \r\n
    Back
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n

    Dear {{ registrantName }},

    \r\n\r\n

    \r\n Thank you for your application to voluntarily remove your name from the \r\n General Pharmaceutical Council's register. I write to confirm that your name has been \r\n removed from the register.\r\n

    \r\n\r\n

    \r\n If you want to re-join the register within 12 months of your removal date, \r\n you can apply to restore your entry to the register, the application can be \r\n accessed when you open your myGPhC account.\r\n

    \r\n\r\n

    \r\n If in the future you want to re-join the register after 12 months has passed, \r\n you would need to apply to return to the register. You can find more information \r\n about restoring your register entry \r\n and about returning to the register on our website. \r\n

    \r\n\r\n

    \r\n Once you leave the register, you will still be able to access and update your myGPhC \r\n account for two years after your leaving date. After this time, your entire account \r\n (including any revalidation records) will be deleted. \r\n

    \r\n\r\n

    \r\n Should you have any queries please contact our \r\n customer services team on 0203 713 8000 or email info@pharmacyregulation.org.\r\n

    \r\n\r\n

    \r\n Thank you for your contribution to pharmacy profession during your time as a registered pharmacy professional. \r\n We wish you good luck in the future.\r\n

    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \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 { ActivatedRoute, Router } from '@angular/router';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { RegistrationService } from '../../core/service/registration.service';\r\nimport { ApplicationDetails } from '../model/ApplicationDetails';\r\n\r\n@Component({\r\n selector: 'app-vr-confirmation-letter',\r\n templateUrl: './vrConfirmationLetter.component.html',\r\n styleUrls: ['letter.scss']\r\n})\r\nexport class VrConfirmationLetterComponent implements OnInit {\r\n\r\n loading = false;\r\n failed = false;\r\n registrantName: string;\r\n isVRApplicationAvailable;\r\n\r\n constructor(public auth: AuthService,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private registrationService: RegistrationService) { }\r\n\r\n ngOnInit(): void {\r\n this.registrantName = this.auth.user.title + ' ' + this.auth.user.surname;\r\n this.registrationService.getAvailableForms().subscribe((details : ApplicationDetails) => { \r\n this.isVRApplicationAvailable = details.isVRAppAvailable;\r\n });\r\n }\r\n\r\n print() {\r\n (window).print();\r\n }\r\n\r\n exit() {\r\n if ( this.isVRApplicationAvailable ) {\r\n this.router.navigate(['/account/notifications']);\r\n } else {\r\n this.router.navigate(['/home']);\r\n }\r\n\r\n }\r\n}\r\n","export enum AnnotationType {\r\n None = 0,\r\n Independent,\r\n Supplementary,\r\n IndependentAndSupplementary\r\n}","export enum FormScope {\r\n Student = 0,\r\n Trainee = 1,\r\n TechnicianApplicant = 2,\r\n ProgressReport = 3,\r\n AssessmentRegistration = 4,\r\n FinalDeclaration = 5,\r\n IndependentPrescriber = 6\r\n}\r\n\r\n","export class IndependentPrescriberData {\r\n\r\n applicantName:string;\r\n formId:string;\r\n countersignatureId:string;\r\n\r\n constructor(data) {\r\n Object.assign(this, data);\r\n }\r\n }\r\n ","export enum LetterType {\r\n NoticeOfEntry = 1,\r\n Remediation = 2,\r\n NoticeOfIntentToRemove = 3,\r\n NoticeOfRemoval = 4,\r\n Renewal = 5,\r\n TrainingRecord = 6,\r\n TechnicianApplicantNoticeOfEntryLetter = 7,\r\n AssessmentAttemptApplicationApprovedLetter = 8,\r\n AssessmentAttemptResultPassOutcome = 9,\r\n AssessmentAttemptResult1Or2SittingFailOutcome = 10,\r\n AssessmentAttemptResult3SittingFailOutcome = 11,\r\n VoluntaryRemovalIntimationLetter = 12\r\n}\r\n","export class PremisesSearchParams {\r\n skip = 0;\r\n take = 20;\r\n searchBy: PremisesSearchBy = PremisesSearchBy.Number;\r\n postcode?: string;\r\n regNumber?: string;\r\n unregisteredPremiseName?: string;\r\n unregisteredPremisePostCode: string;\r\n}\r\n\r\nexport enum PremisesSearchBy {\r\n Number = 1,\r\n Postcode = 2,\r\n NotOnRegister = 3,\r\n \r\n}\r\n\r\nexport interface PremisesSearchResult {\r\n registrationNumber: string;\r\n forenames: string;\r\n surname: string;\r\n town: string;\r\n}\r\n","export class RegisterSearchParams {\r\n skip = 0;\r\n take = 20;\r\n searchBy: RegisterSearchBy = RegisterSearchBy.Number;\r\n firstName?: string;\r\n lastName?: string;\r\n regNumber?: string;\r\n applicationType?:string;\r\n}\r\n\r\nexport enum RegisterSearchBy {\r\n Number = 1,\r\n Name = 2\r\n}\r\n\r\nexport interface RegisterSearchResult {\r\n gphcId?: string;\r\n registrationNumber: string;\r\n forenames: string;\r\n surname: string;\r\n town: string;\r\n learningContractResponse;\r\n eligibleAsTutor;\r\n}\r\n","import { RegistrantType } from './RegistrantType';\r\nimport { RegistrantStatus } from './RegistrantStatus';\r\nimport { ApplicationStatus } from '../../prereg/model/ApplicationStatus';\r\nimport { RTREligibilityType } from './RTREligibilityType';\r\n\r\nexport class Registrant {\r\n registrationNumber: string;\r\n status: RegistrantStatus;\r\n type: RegistrantType;\r\n postalTown: string;\r\n prescriberStatuses: string;\r\n superIntendentPosition: { ownerName: string, startDate: string, endDate: string };\r\n superintendent = '';\r\n\r\n // for registrants who are both pharmacists and pharmacy technicians\r\n // this will be true when they sign into their pharmacy technician account\r\n // v1.0/registrant/revalidation will return null so should not be called\r\n exemptFromRevalidationSubmissions: boolean;\r\n\r\n title: string;\r\n forenames: string;\r\n surname: string;\r\n\r\n expiryDate: string;\r\n renewalDate: string;\r\n joinedDate: string;\r\n\r\n isRTRAppAvailable: RTREligibilityType;\r\n returnToRegisterFormStatus: ApplicationStatus;\r\n \r\n constructor(data) {\r\n Object.assign(this, data);\r\n\r\n if (this.superIntendentPosition && this.superIntendentPosition.ownerName) {\r\n this.superintendent = this.superIntendentPosition.ownerName;\r\n }\r\n\r\n }\r\n\r\n toString() {\r\n return this.title +\r\n ' ' + this.forenames +\r\n ' ' + this.surname;\r\n }\r\n\r\n\r\n}\r\n","export enum RegistrantStatus {\r\n // Student\r\n OSPAPClassList = 717750002,\r\n MPharmClassList = 717750003,\r\n MPharmClassListS = 717750013,\r\n\r\n // PreReg Trainee\r\n PreRegistrationTrainee = 717750000,\r\n PreRegistrationTraineeS = 717750014,\r\n ReadyForRegistration = 717750015,\r\n // Refused should be handled exactly as a PreRegistrationTrainee. Refused was\r\n // never handled in MyGPhC prior to ROS, but the requirements states that a\r\n // Refused user should have the same access to the system as a\r\n // PreRegistrationTrainee. This resulted in the bug:\r\n // https://mygphc.atlassian.net/browse/ROS-608\r\n // Stuart's spec for this change is in:\r\n // https://mygphc.atlassian.net/browse/ROS-611\r\n Refused = 981360002,\r\n\r\n Unknown = 0,\r\n OSPAPAssessment = 717750001,\r\n Registered = 717750006,\r\n Erased = 717750007,\r\n Suspended = 717750008,\r\n Terminated = 717750016,\r\n RemovedFailedToRenew = 717750009,\r\n RemovedCPDNonCompliance = 717750010,\r\n RemovedVoluntary = 717750011,\r\n Deleted = 717750012,\r\n TemporaryRegistration = 981360000,\r\n Applicant = 717750004,\r\n IneligibleToRegister = 717750005,\r\n // https://mygphc.atlassian.net/browse/RP2-105\r\n // Replaces RemovedCPDNonCompliance.\r\n RemovedRevalNonCompliance = 981360003\r\n}\r\n","export enum RegistrantType {\r\n Pharmacist = 1,\r\n PharmacyTechnician = 2\r\n}\r\n","\r\n\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { Registrant } from './model/Registrant';\r\nimport { RegistrantStatus } from './model/RegistrantStatus';\r\nimport { RegistrantType } from './model/RegistrantType';\r\n\r\n@Component({\r\n selector: 'app-registrant-badge',\r\n moduleId: module.id,\r\n templateUrl: './registrantBadge.component.html'\r\n})\r\nexport class RegistrantBadgeComponent implements OnInit {\r\n\r\n\r\n @Input() link;\r\n registrant: Registrant;\r\n RegistrantStatus = RegistrantStatus;\r\n RegistrantType = RegistrantType;\r\n\r\n constructor(private auth: AuthService) {\r\n }\r\n\r\n ngOnInit() {\r\n this.registrant = this.auth.user.registrant;\r\n }\r\n\r\n}\r\n","\r\n {{ registrant.toString() }}\r\n
    \r\n {{registrant.registrationNumber}}\r\n
    \r\n {{RegistrantStatus[registrant.status]}} \r\n
    \r\n\r\n","import { Component, OnInit, ErrorHandler } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { RevalidationService } from '../core/service/revalidation.service';\r\nimport { RevalidationLogic } from '../shared/service/revalidation/revalidationLogic.service';\r\nimport { RenewalService } from '../core/service/renewal.service';\r\nimport { Renewal } from '../renewal/model/Renewal';\r\nimport { Registrant } from './model/Registrant';\r\nimport { RegistrantStatus } from './model/RegistrantStatus';\r\nimport { RegistrantType } from './model/RegistrantType';\r\nimport { LogService } from '../core/service/log.service';\r\nimport { LayoutService } from '../core/service/layout.service';\r\nimport { User } from '../account/model/User';\r\nimport { ReturnToRegisterApplication } from './return-to-register/model/ReturnToRegister';\r\nimport { CaseSplitPipe } from '../shared/pipe/CaseSplit.pipe';\r\nimport { ApplicationStatus } from '../prereg/model/ApplicationStatus';\r\n\r\n\r\n@Component({\r\n selector: 'app-registrant-dashboard',\r\n moduleId: module.id,\r\n templateUrl: './registrantDashboard.component.html',\r\n styleUrls: ['../style/dashboard.scss'],\r\n providers: [\r\n RevalidationLogic\r\n ]\r\n})\r\nexport class RegistrantDashboardComponent implements OnInit {\r\n\r\n showNoticeOfEntry = false;\r\n registrant: Registrant;\r\n name: string;\r\n loading = false;\r\n loadingUser = false;\r\n loadingRenewal = false;\r\n loadingRevalidation = false;\r\n renewalError = false;\r\n revalidationError = false;\r\n renewal: Renewal;\r\n RegistrantStatus = RegistrantStatus;\r\n RegistrantType = RegistrantType;\r\n isApplicationOpen = true;\r\n ApplicationStatus = ApplicationStatus;\r\n application: ReturnToRegisterApplication;\r\n isApprovedPendingRestorationFee:boolean;\r\n applicationStatus: ApplicationStatus;\r\n status:any;\r\n constructor(private _router: Router, private auth: AuthService,\r\n private renewalService: RenewalService,\r\n private revalidationService: RevalidationService,\r\n public validator: RevalidationLogic,\r\n private log: LogService, private caseSplit: CaseSplitPipe,\r\n ) { }\r\n\r\n get isRTR(): boolean {\r\n // CR-356 : Second condition added to fullfill below all condition(s). RTR app/payment option(if eligible) will be displayed if this function returns false\r\n // 1. RTR app not available AND any RTR form status except ApprovedPendingRestorationFee, return true -> RTR app not displayed\r\n // 2. RTR app not available AND any RTR form status is ApprovedPendingRestorationFee, return false -> RTR app displayed (Fix for CR-356,RTR applicant who removal crossed 1 year and eligible for paying restoration fee)\r\n // 3. RTR app available AND any RTR form status except ApprovedPendingRestorationFee, return false -> RTR app displayed \r\n // 4. RTR app available AND any RTR form status is ApprovedPendingRestorationFee, return false -> RTR app displayed \r\n return this.auth.user.registrant.isRTRAppAvailable===0 && this.ApplicationStatus[this.registrant.returnToRegisterFormStatus] !='ApprovedPendingRestorationFee';\r\n }\r\n\r\n\r\n ngOnInit() {\r\n this.load();\r\n\r\n this.status = this.ApplicationStatus[this.registrant.returnToRegisterFormStatus] ?\r\n this.caseSplit.transform(this.ApplicationStatus[this.registrant.returnToRegisterFormStatus]) :\r\n this.caseSplit.transform(this.ApplicationStatus[ApplicationStatus.NotStarted]);\r\n }\r\n\r\n load() {\r\n\r\n this.registrant = this.auth.user.registrant;\r\n this.isApprovedPendingRestorationFee = this.registrant.returnToRegisterFormStatus === ApplicationStatus.ApprovedPendingRestorationFee;\r\n this.renewalService.applicationStatus$.subscribe( status => this.applicationStatus = status);\r\n this.loadingUser = false;\r\n if (this.isRTR) {\r\n this.loadRenewal();\r\n this.loadRevalidation();\r\n this.calculateIfNoticeOfEntry(this.registrant.joinedDate);\r\n }\r\n }\r\n\r\n get noPendingFee() {\r\n if(this.applicationStatus) {\r\n this.status = this.caseSplit.transform(this.ApplicationStatus[this.applicationStatus]);\r\n return this.applicationStatus !== ApplicationStatus.ApprovedPendingRestorationFee;\r\n }\r\n return this.registrant.returnToRegisterFormStatus !== ApplicationStatus.ApprovedPendingRestorationFee;\r\n }\r\n\r\n loadRenewal() {\r\n this.loadingRenewal = true;\r\n this.renewalService.getRenewal()\r\n .subscribe(renewal => {\r\n this.renewal = renewal;\r\n this.loadingRenewal = false;\r\n }, error => {\r\n this.loadingRenewal = false;\r\n this.renewalError = error;\r\n });\r\n }\r\n\r\n loadRevalidation() {\r\n if (this.registrant.exemptFromRevalidationSubmissions) {\r\n return;\r\n }\r\n this.loadingRevalidation = true;\r\n this.revalidationService.getLatestRevalidation().subscribe(revalidation => {\r\n this.revalidationService.getEntries(revalidation.id).subscribe(entries => {\r\n this.validator.load(entries, revalidation.expectations);\r\n this.loadingRevalidation = false;\r\n }, error => {\r\n this.loadingRevalidation = false;\r\n this.revalidationError = error;\r\n });\r\n }, error => {\r\n this.loadingRevalidation = false;\r\n this.revalidationError = error;\r\n });\r\n\r\n }\r\n\r\n loadReturToRegister() {\r\n return this.isApplicationOpen = this.registrant.isRTRAppAvailable>0;\r\n }\r\n\r\n get payRestorationFee() : boolean {\r\n return false;\r\n }\r\n\r\n get payRestorationAndRenewalFee() : boolean {\r\n return false;\r\n }\r\n\r\n calculateIfNoticeOfEntry(joinedDate) {\r\n // if the user is of registrationType === registered, then do this, for any other status\r\n // we cannot show notice of entry\r\n if (this.auth.user.registrationStatus === RegistrantStatus.Registered) {\r\n const releaseDate = new Date('2018-06-25');\r\n const joined = new Date(joinedDate.substring(0, this.registrant.joinedDate.length - 9));\r\n const cutOffDate = this.calcCutOffDate(joined);\r\n const dateToday = new Date();\r\n // if joinedDate AFTER release date && date today is !==cutOffDate\r\n if (joined > releaseDate) {\r\n if (dateToday !== cutOffDate) {\r\n this.showNoticeOfEntry = true;\r\n } else {\r\n this.showNoticeOfEntry = false;\r\n }\r\n }\r\n }\r\n\r\n }\r\n\r\n calcCutOffDate(joinedDate) {\r\n let cutOffNoticeOfEntry: any = (joinedDate.getFullYear() + 1)\r\n + '-' +\r\n (joinedDate.getMonth() + 1 < 10 ? '0' + (joinedDate.getMonth() + 1) : joinedDate.getMonth())\r\n + '-' +\r\n (joinedDate.getDate());\r\n cutOffNoticeOfEntry = new Date(cutOffNoticeOfEntry);\r\n return cutOffNoticeOfEntry;\r\n }\r\n\r\n\r\n\r\n}\r\n","\r\n
    \r\n

    Home

    \r\n

    \r\n A summary of your professional registration status\r\n

    \r\n

    \r\n You can view your previous registration details or apply for restoration of your registration by clicking on the icons below.\r\n

    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n\r\n\r\n
    \r\n \r\n
    \r\n\r\n \r\n Revalidation\r\n\r\n\r\n
    \r\n \r\n\r\n \r\n\r\n
    \r\n \r\n
    \r\n None marked completed\r\n In progress\r\n Ready to be submitted\r\n
    \r\n Due by {{ validator.expectations.submissionDeadline | utcDate }}\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n \r\n Renewal\r\n
    \r\n
    \r\n \r\n
    \r\n Due\r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n Not due\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n Complete\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n Notice of entry\r\n
    \r\n \r\n
    \r\n View or print\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n \r\n Application for restoration to the register\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n {{ status }} \r\n
    \r\n {{ registrant.toString() }}\r\n
    \r\n {{registrant.registrationNumber}}\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n\r\n\r\n \r\n
    \r\n \r\n
    \r\n {{ applicationClosedMessage }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n \r\n Restoration fee\r\n
    \r\n
    \r\n \r\n
    \r\n Make payment now\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n \r\n

    Error: {{ renewalError.statusText || (renewalError | json) }}

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

    Error

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

    Please file your revalidation under your pharmacist account.

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

    Submitted

    \r\n
    \r\n
    ","import { Component, Input, OnInit } from '@angular/core';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { Registrant } from './model/Registrant';\r\nimport { RegistrantStatus } from './model/RegistrantStatus';\r\nimport { RegistrantType } from './model/RegistrantType';\r\nimport { PreregService } from '../core/service/prereg.service';\r\nimport { CaseSplitPipe } from '../shared/pipe/CaseSplit.pipe';\r\nimport { LetterType } from './model/LetterType';\r\nimport { RegistrationService } from '../core/service/registration.service';\r\nimport { environment } from '../../environments/environment';\r\nimport { RTREligibilityType } from './model/RTREligibilityType';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n templateUrl: './registration.component.html',\r\n styleUrls: ['./registration.scss']\r\n})\r\nexport class RegistrationComponent implements OnInit {\r\n\r\n registrant: Registrant;\r\n RegistrantStatus = RegistrantStatus;\r\n registrantType;\r\n\r\n loadingCountersigs = false;\r\n countersigs;\r\n loadingLetters = false;\r\n letters = [];\r\n loadingLearningContracts = false;\r\n learningContracts = [];\r\n\r\n LetterType = LetterType;\r\n showNoticeOfEntry;\r\n isDev = false;\r\n isRTRApplicationAvailable : RTREligibilityType;\r\n renewalDate;\r\n expiryDate;\r\n annotation;\r\n constructor(private auth: AuthService, private preregService: PreregService,\r\n private caseSplit: CaseSplitPipe, private regService: RegistrationService) { }\r\n\r\n ngOnInit() {\r\n this.isDev = !!environment.dev;\r\n this.registrant = this.auth.user.registrant;\r\n this.expiryDate = this.registrant.expiryDate;\r\n this.renewalDate = this.registrant.renewalDate;\r\n this.annotation = this.registrant.prescriberStatuses;\r\n this.isRTRApplicationAvailable = this.registrant.isRTRAppAvailable;\r\n this.showNoticeOfEntry = this.auth.user.showNoticeOfEntry;\r\n this.registrantType = this.caseSplit.transform(RegistrantType[this.registrant.type]);\r\n this.loadingCountersigs = true;\r\n this.preregService.getCountersignatureRequests(this.registrant.registrationNumber).subscribe(s => {\r\n this.countersigs = s;\r\n this.loadingCountersigs = false;\r\n });\r\n\r\n this.loadLetters();\r\n this.loadLearningContracts();\r\n if (this.isRTRApplicationAvailable !== 0) {\r\n this.expiryDate = '';\r\n this.renewalDate = '';\r\n this.annotation = '';\r\n }\r\n\r\n }\r\n\r\n createLetters() {\r\n if (this.isDev) {\r\n this.regService.createLetters().subscribe(() => {\r\n this.loadLetters();\r\n });\r\n }\r\n }\r\n\r\n loadLetters() {\r\n\r\n this.loadingLetters = true;\r\n this.regService.getLetters().subscribe(letters => {\r\n this.loadingLetters = false;\r\n this.letters = letters;\r\n });\r\n\r\n }\r\n\r\n loadLearningContracts() {\r\n this.loadingLearningContracts = true;\r\n this.regService.getLearningContracts().subscribe(lc => {\r\n if (!lc) {\r\n this.loadingLearningContracts = false;\r\n } else {\r\n this.learningContracts = lc;\r\n this.loadingLearningContracts = false;\r\n }\r\n });\r\n }\r\n\r\n}","\r\n
    \r\n

    Registration

    \r\n

    Your registration details as they are shown on the public register\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n Registration details\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n\r\n \r\n Letters\r\n
    \r\n \r\n \r\n\r\n \r\n You don't have any letters\r\n \r\n\r\n \r\n\r\n
    \r\n
    \r\n\r\n \r\n Countersignature requests\r\n \r\n \r\n\r\n \r\n Learning contracts\r\n \r\n \r\n\r\n
    \r\n\r\n
    \r\n
    ","import { NgModule, ErrorHandler, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { DynamicModule } from '../dynamic/dynamic.module';\r\nimport { SharedModule } from '../shared/shared.module';\r\nimport { RouterModule } from '@angular/router';\r\nimport { AccountModule } from '../account/account.module';\r\nimport { RegistrantDashboardComponent } from './registrantDashboard.component';\r\nimport { CustomErrorHandler } from '../core/service/CustomErrorHandler';\r\nimport { RegistrationComponent } from './registration.component';\r\nimport { RegistrantBadgeComponent } from './registrantBadge.component';\r\nimport { CountersignComponent } from './countersign.component';\r\nimport { PreregModule } from '../prereg/prereg.module';\r\nimport { NoticeOfEntryComponent } from './letter/noticeOfEntry.component';\r\nimport { NoticeOfIntendedRemovalComponent } from './letter/noticeOfIntendedRemoval.component';\r\nimport { NorComponent } from './letter/nor.component';\r\nimport { NoticeOfRemediationComponent } from '../registration/letter/noticeOfRemediation.component';\r\nimport { LetterComponent } from './letter.component';\r\nimport { LetterFooterComponent } from './letter/letterFooter.component';\r\nimport { LetterHeaderComponent } from './letter/letterHeader.component';\r\nimport { LetterGuard } from '../guard/Letter.guard';\r\nimport { LearningContractResponseComponent } from './learningContractResponse.component';\r\nimport { TrainingRecordComponent } from './letter/trainingRecord.component';\r\nimport { RenewalLetterComponent } from './letter/renewalLetter.component';\r\nimport { RenewalCardLetterComponent } from './letter/renewalCardLetter.component';\r\nimport { RenewalDDLetterComponent } from './letter/renewalDDLetter.component';\r\nimport { TechnicianModule } from '../technician/technician.module';\r\nimport { AssessmentCountersignResponseComponent } from './assessment-report/assessmentCountersignResponse.component';\r\nimport { AssessmentApproveLetterComponent } from './letter/assessmentApproveLetter.component';\r\nimport { AssessmentAttemptPassLetterComponent } from './letter/assessment-results/assessmentAttemptPassLetter.component';\r\nimport { AssessmentThirdAttemptFailLetterComponent } from './letter/assessment-results/assessmentThirdAttemptFailLetter.component';\r\nimport { AssessmentFirstAndSecondAttemptFailLetterComponent } from './letter/assessment-results/assessmentFirstAndSecondAttemptFailLetter.component';\r\nimport { FinalDeclarationCountersignResponseComponent } from './final-declaration/finalDeclarationCountersignResponse.component';\r\nimport { IndependentPrescriberApplicationComponent } from './independent-precriber/independentPrescriberApplication.component';\r\nimport { EdiStepComponent } from './independent-precriber/steps/edi-step/edi-step.component';\r\nimport { DeclarationsStepComponent } from './independent-precriber/steps/declarations-step/declarations-step.component';\r\nimport { PaymentStepComponent } from './independent-precriber/steps/payment-step/payment-step.component';\r\nimport { QualificationStepComponent } from './independent-precriber/steps/qualification-step/qualification-step.component';\r\nimport { CounterSignatureStepComponent } from './independent-precriber/steps/counter-signature-step/counter-signature-step.component';\r\nimport { IndependentPrescriberMentorCountersigninComponent } from './independent-prescriber-mentor/independentPrescriberMentorCountersignin.component';\r\nimport { IndependentPrescriberFinalReviewComponent } from './independent-precriber/steps/final-review-step/independentPrescriberApplicationFinalReview.component';\r\nimport { ApplicationsDashboardComponent } from './applicationsDashboard.component';\r\nimport { VoluntaryRemovalComponent } from './voluntary-removal/voluntary-removal.component';\r\nimport { VrEdiStepComponent } from './voluntary-removal/steps/vr-edi-step/vr-edi-step.component';\r\nimport { VrFtpDeclarationStepComponent } from './voluntary-removal/steps/vr-ftp-declaration-step/vr-ftp-declaration-step.component';\r\nimport { VrApplicationDeclarationsStepComponent } from './voluntary-removal/steps/vr-application-declarations-step/vr-application-declarations-step.component';\r\nimport { VrApplicationReviewStepComponent } from './voluntary-removal/steps/vr-application-review-step/vr-application-review-step.component';\r\nimport { VrPaymentStepComponent } from './voluntary-removal/steps/vr-payment-step/vr-payment-step.component';\r\nimport { VrDateReasonForRemovalRequiredStepComponent } from './voluntary-removal/steps/vr-date-reason-for-removal-required-step/vr-date-reason-for-removal-required-step.component';\r\nimport { VrDeclarationSummaryComponent } from './voluntary-removal/steps/vr-ftp-declaration-step/vr-declaration-summary.component';\r\nimport { VrApplicationReviewComponent } from './voluntary-removal/steps/vr-application-review-step/vr-application-review.component';\r\nimport { RenewalModule } from '../renewal/renewal.module';\r\nimport { VrConfirmationLetterComponent } from './letter/vrConfirmationLetter.component';\r\nimport { CcpsComponent } from './ccps/ccps.component';\r\nimport { OverseasRegularDetailsComponent } from './ccps/steps/overseas-regular-details/overseas-regular-details.component';\r\nimport { InitialPharmacyQualificationDetailsComponent } from './ccps/steps/initial-pharmacy-qualification-details/initial-pharmacy-qualification-details.component';\r\nimport { FtpDeclarationsComponent } from './ccps/steps/ftp-declarations/ftp-declarations.component';\r\nimport { CcpsDeclarationsComponent } from './ccps/steps/ccps-declarations/ccps-declarations.component';\r\nimport { PaymentComponent } from './ccps/steps/payment/payment.component';\r\nimport { CcpsReviewComponent } from './ccps/steps/ccps-review/ccps-review.component';\r\nimport { CCPSEDIComponent } from './ccps/steps/ccps-edi/ccps-edi.component';\r\nimport { CcpsApplicationReviewComponent} from './ccps/steps/ccps-review/ccpsApplicationReview.component';\r\nimport { CCPSPersonalDetailsComponent } from './ccps/steps/ccps-personal-details/ccps-personal-details.component';\r\nimport { ReturnToRegisterComponent } from './return-to-register/return-to-register-application.component';\r\nimport { PersonalDetailsComponent } from './return-to-register/steps/personal-details/personal-details.component';\r\nimport { LetterOfGoodStandingComponent } from './return-to-register/steps/letter-of-good-standing/letter-of-good-standing.component';\r\nimport { RegistrationDetailsComponent } from './return-to-register/steps/registration-details/registration-details.component';\r\nimport { RevalidationRecordOutstandingComponent } from './return-to-register/steps/revalidation-record-outstanding/revalidation-record-outstanding.component';\r\nimport { EqualityDiversityComponent } from './return-to-register/steps/equality-diversity/equality-diversity.component';\r\nimport { ApplicationDeclarationsComponent } from './return-to-register/steps/application-declarations/application-declarations.component';\r\nimport { FtpDeclarationOneComponent } from './return-to-register/steps/ftp-declarations/ftp-declarations-one.component';\r\nimport { FtpDeclarationTwoComponent } from './return-to-register/steps/ftp-declarations/ftp-declarations-two.component';\r\nimport { RtrReviewStepComponent } from './return-to-register/steps/review/rtrReviewStep.component';\r\nimport { RtrApplicationReviewComponent } from './return-to-register/steps/review/rtrApplicationReview.component';\r\nimport { DeclarationSummaryComponent } from './return-to-register/steps/ftp-declarations/declarationSummary.component';\r\nimport { RtrPaymentStepComponent } from './return-to-register/steps/payment/rtr-payment-step.component';\r\nimport { RestorationFeePayment } from './restorationFeePayment.component';\r\nimport { GuidanceComponent } from './return-to-register/steps/guidance/guidance.component';\r\nimport { CCPSDeclarationSummaryComponent } from './ccps/steps/ftp-declarations/declarationSummary.component';\r\nimport { TrainingDetailsComponent } from './ccps/steps/initial-pharmacy-qualification-details/training-details/training-details.component';\r\nimport { CcpsGuidanceComponent } from './ccps/steps/ccps-guidance/ccps-guidance.component';\r\n\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n FormsModule,\r\n CommonModule,\r\n DynamicModule,\r\n SharedModule,\r\n RouterModule,\r\n AccountModule,\r\n PreregModule,\r\n TechnicianModule,\r\n ReactiveFormsModule,\r\n RenewalModule\r\n ],\r\n declarations: [\r\n RegistrantDashboardComponent,\r\n RegistrationComponent,\r\n RegistrantBadgeComponent,\r\n CountersignComponent,\r\n NoticeOfEntryComponent,\r\n NoticeOfIntendedRemovalComponent,\r\n NorComponent,\r\n NoticeOfRemediationComponent,\r\n LetterComponent,\r\n LetterFooterComponent,\r\n LetterHeaderComponent,\r\n LearningContractResponseComponent,\r\n TrainingRecordComponent,\r\n RenewalLetterComponent,\r\n RenewalCardLetterComponent,\r\n RenewalDDLetterComponent,\r\n AssessmentCountersignResponseComponent,\r\n AssessmentApproveLetterComponent,\r\n AssessmentAttemptPassLetterComponent,\r\n AssessmentFirstAndSecondAttemptFailLetterComponent,\r\n AssessmentThirdAttemptFailLetterComponent,\r\n FinalDeclarationCountersignResponseComponent,\r\n /*Independent precriber*/\r\n IndependentPrescriberApplicationComponent,\r\n QualificationStepComponent,\r\n EdiStepComponent,\r\n DeclarationsStepComponent,\r\n PaymentStepComponent,\r\n CounterSignatureStepComponent,\r\n IndependentPrescriberMentorCountersigninComponent,\r\n IndependentPrescriberFinalReviewComponent,\r\n ApplicationsDashboardComponent,\r\n //VR application steps\r\n VoluntaryRemovalComponent,\r\n VrEdiStepComponent,\r\n VrFtpDeclarationStepComponent,\r\n VrApplicationDeclarationsStepComponent,\r\n VrApplicationReviewStepComponent,\r\n VrPaymentStepComponent,\r\n VrDateReasonForRemovalRequiredStepComponent,\r\n VrDeclarationSummaryComponent,\r\n VrApplicationReviewComponent,\r\n VrConfirmationLetterComponent,\r\n //CCPS application\r\n CcpsComponent,\r\n OverseasRegularDetailsComponent,\r\n InitialPharmacyQualificationDetailsComponent,\r\n FtpDeclarationsComponent,\r\n CcpsDeclarationsComponent,\r\n PaymentComponent,\r\n CcpsReviewComponent,\r\n CcpsApplicationReviewComponent,\r\n CCPSEDIComponent,\r\n CCPSDeclarationSummaryComponent,\r\n CCPSPersonalDetailsComponent,\r\n CcpsGuidanceComponent,\r\n //return to register\r\n ReturnToRegisterComponent,\r\n PersonalDetailsComponent,\r\n LetterOfGoodStandingComponent,\r\n RegistrationDetailsComponent,\r\n RevalidationRecordOutstandingComponent,\r\n EqualityDiversityComponent,\r\n ApplicationDeclarationsComponent,\r\n FtpDeclarationOneComponent,\r\n FtpDeclarationTwoComponent,\r\n RtrReviewStepComponent,\r\n RtrApplicationReviewComponent,\r\n DeclarationSummaryComponent,\r\n RtrPaymentStepComponent,\r\n RestorationFeePayment,\r\n GuidanceComponent,\r\n TrainingDetailsComponent,\r\n\r\n ],\r\n exports: [\r\n RegistrantDashboardComponent,\r\n NoticeOfEntryComponent,\r\n NoticeOfIntendedRemovalComponent,\r\n NorComponent,\r\n NoticeOfRemediationComponent,\r\n RenewalLetterComponent,\r\n RenewalCardLetterComponent,\r\n RenewalDDLetterComponent,\r\n AssessmentCountersignResponseComponent,\r\n AssessmentApproveLetterComponent,\r\n AssessmentAttemptPassLetterComponent,\r\n AssessmentFirstAndSecondAttemptFailLetterComponent,\r\n AssessmentThirdAttemptFailLetterComponent,\r\n FinalDeclarationCountersignResponseComponent,\r\n ApplicationsDashboardComponent\r\n ],\r\n providers: [\r\n LetterGuard,\r\n { provide: ErrorHandler, useClass: CustomErrorHandler }\r\n ],\r\n schemas: [CUSTOM_ELEMENTS_SCHEMA]\r\n})\r\nexport class RegistrationModule { }\r\n","import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { RenewalService } from '../core/service/renewal.service';\r\nimport { ReturnToRegisterService } from '../core/service/returnToRegister.service';\r\nimport { CreditCard, creditCards } from '../renewal/model/CreditCard';\r\nimport { Router } from '@angular/router';\r\nimport { ApplicationStatus } from '../prereg/model/ApplicationStatus';\r\n\r\n@Component({\r\n templateUrl: './restorationFeePayment.component.html',\r\n styleUrls: ['./restorationFeePayment.scss']\r\n})\r\nexport class RestorationFeePayment implements OnInit {\r\n loading = false;\r\n fee;\r\n worldpayConfig;\r\n messages = [];\r\n serverErrors = [];\r\n cartId;\r\n selectedCard: CreditCard;\r\n creditCards = creditCards;\r\n title;\r\n isApplicationPendingProcessing;\r\n\r\n @ViewChild('worldpayForm') worldpayForm: ElementRef;\r\n\r\n constructor(private service: ReturnToRegisterService, private auth: AuthService,\r\n private renewalService: RenewalService, private _router: Router) {}\r\n\r\n ngOnInit() {\r\n this.title = this.payRestorationFee ? 'Restoration fee' : 'Restoration and renewal fee'; \r\n\r\n this.loading = true;\r\n this.service.getApplication(this.auth.user.registrationStatus).subscribe(application => { \r\n this.isApplicationPendingProcessing = application.form?.formStatus === ApplicationStatus.ApprovedPendingRestorationFee;\r\n if(!this.isApplicationPendingProcessing) {\r\n this.navigateToHome();\r\n this.loading = false;\r\n this.renewalService.applicationStatus$.next(application.form?.formStatus);\r\n } else {\r\n this.fee = application?.restorationToRegisterFeeAmount;\r\n this.renewalService.getWordpayConfig().subscribe(config => {\r\n this.worldpayConfig = config;\r\n this.loading = false;\r\n }); \r\n } \r\n });\r\n }\r\n\r\n navigateToHome() {\r\n setTimeout(()=> this._router.navigate([`/home`]), 10000);\r\n }\r\n\r\n get payRestorationFee() : boolean {\r\n return true; \r\n }\r\n \r\n get payRestorationAndRenewalFee() : boolean { \r\n return false;\r\n }\r\n\r\n next() {\r\n\r\n this.messages = [];\r\n this.serverErrors = [];\r\n const valid = !!this.selectedCard;\r\n if (!valid) {\r\n this.messages.push('You must select a card type to proceed to payment');\r\n return;\r\n }\r\n \r\n this.service.saveRestorationPayment().subscribe((result) => {\r\n this.cartId = JSON.stringify(result.paymentIdentifier);\r\n setTimeout(() => { \r\n this.worldpayForm.nativeElement.submit();\r\n }, 100);\r\n }, error => {\r\n this.serverErrors = error.validationErrors;\r\n });\r\n \r\n }\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 Application status has been changed. Now no payment is expected.\r\n

    \r\n

    \r\n
    \r\n Click here to return to homepage.\r\n
    \r\n
    In 10 seconds you will be redirected to home page automatically.\r\n

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

    Fees to be paid\r\n \"Worldpay\r\n \r\n

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

    \r\n {{title}}: {{fee | currency: 'GBP': 'symbol' :'.2'}}\r\n

    \r\n
    \r\n

    \r\n Now your application has been approved, you must pay the restoration fee of {{fee | currency: 'GBP': 'symbol' :'.2'}} before you\r\n can join the register.\r\n

    \r\n

    \r\n If you are returning to the register in the two months before the anniversary of your previous renewal deadline, your payment will include next years renewal fee.\r\n

    \r\n

    \r\n Important: do not practise as a pharmacy professional until your name appears on the online\r\n register. It is your responsibility to check this before you practice. Your re-entry payment receipt is not proof of\r\n your registration. Practising as a pharmacy professional while not on the register is breaking the law and you can be prosecuted.\r\n

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

    Please select your card type

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

    \r\n We can only accept payments made in pounds sterling (GBP). Payments are processed using worldpay, for more information please\r\n review their privacy policy.\r\n

    \r\n

    \r\n When you make a card payment, you may be redirected to your card provider’s site to enter another password before they authorise\r\n your payment. You can find out more about 3-D Secure authentication from your card provider.\r\n

    \r\n
    \r\n \r\n \r\n \r\n \"{{card.name}}\r\n
    {{card.name}}\r\n
    \r\n
    \r\n \r\n \r\n

    \r\n {{message}}\r\n

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

    \r\n {{ 'Server validation error: ' + error.errors.join(',') }}\r\n

    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n Proceed to payment\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n Saving\r\n
    \r\n
    \r\n Saving\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    ","import { Address } from \"../../../account/model/Address\";\r\n\r\ninterface ftpDeclarationType {\r\n questionName: string,\r\n isRegistered: boolean,\r\n isInvestigated: boolean,\r\n caseReferenceNo: string,\r\n investigationDate: string,\r\n titleUsed: string,\r\n employerName: string,\r\n howWhereUsedIt: string,\r\n titleUsedFrom: string,\r\n titleUsedUntil: string,\r\n employerAddress: Address\r\n}\r\n\r\nexport class ftpDeclarationObj implements ftpDeclarationType {\r\nquestionName = null;\r\nisRegistered = null;\r\nisInvestigated = null;\r\ncaseReferenceNo = null;\r\ninvestigationDate = null;\r\ntitleUsed = null;\r\nemployerName = null;\r\nhowWhereUsedIt = null;\r\ntitleUsedFrom = null;\r\ntitleUsedUntil = null;\r\nemployerAddress = null;\r\n\r\nconstructor(name: string) {\r\n this.questionName = name;\r\n}\r\n\r\nsetValuesIfNotRegistered(): void { \r\n this.isInvestigated = null;\r\n this.caseReferenceNo = null;\r\n this.investigationDate = null;\r\n this.titleUsed = null;\r\n this.employerName = null;\r\n this.howWhereUsedIt = null;\r\n this.titleUsedFrom = null;\r\n this.titleUsedUntil = null;\r\n this.employerAddress = null;\r\n}\r\n\r\nsetValuesIfInvestigated() : void{\r\n this.titleUsed = null;\r\n this.employerName = null;\r\n this.titleUsedFrom = null;\r\n this.titleUsedUntil = null;\r\n this.employerAddress = null;\r\n this.howWhereUsedIt = null;\r\n}\r\n\r\nsetValuesIfNotInvestigated() : void{\r\n this.caseReferenceNo = null;\r\n this.investigationDate = null;\r\n}\r\n}","import { Applicant } from '../../../account/model/Applicant';\r\nimport { ReturnToRegisterApplicationForm } from './ReturnToRegisterApplicationForm';\r\nimport { RegistrantStatus } from '../../model/RegistrantStatus';\r\nimport { Application } from '../../../prereg/model/Application';\r\nimport { ApplicationStatus } from '../../../prereg/model/ApplicationStatus';\r\nimport { RegistrantPersonalDetails } from './ReturnToRegisterDetails';\r\n\r\nexport class ReturnToRegisterApplication implements Application {\r\n trainee: Applicant;\r\n forms: ReturnToRegisterApplicationForm[];\r\n status: ApplicationStatus;\r\n activeForm: ReturnToRegisterApplicationForm;\r\n pastApplications: ReturnToRegisterApplicationForm[];\r\n form: ReturnToRegisterApplicationForm;\r\n personalDetails: RegistrantPersonalDetails;\r\n returnToRegisterApplicationFeeCode : string;\r\n returnToRegisterApplicationFeeAmount : number; \r\n restorationToRegisterFeeCode:string;\r\n restorationToRegisterFeeAmount:number; \r\n constructor(data, registrantStatus: RegistrantStatus) {\r\n Object.assign(this, data);\r\n this.activeForm = new ReturnToRegisterApplicationForm(this.form, registrantStatus);\r\n }\r\n}","\r\nimport { FormAnswer } from '../../../dynamic/model/FormAnswer';\r\nimport { FileUpload } from '../../../shared/model/FileUpload';\r\nimport { ReturnToRegisterStep } from './ReturnToRegisterStep';\r\nimport { RegistrantStatus } from '../../model/RegistrantStatus';\r\nimport { FormScope } from '../../model/FormScope';\r\nimport { ApplicationForm } from '../../../prereg/model/ApplicationForm';\r\nimport { ApplicationStatus } from '../../../prereg/model/ApplicationStatus';\r\nimport { ApplicationFormMode } from '../../../prereg/model/ApplicationFormMode';\r\nimport { ReturnToRegisterDetails } from './ReturnToRegisterDetails';\r\nimport { EqualityDiversity } from '../../../account/model/EqualityDiversity';\r\nimport { LetterOfGoodStanding } from '../../../prereg/model/LetterOfGoodStanding';\r\n\r\nexport class ReturnToRegisterApplicationForm implements ApplicationForm {\r\n\r\n isOverallDeclarationConfirmed: boolean;\r\n minStep: ReturnToRegisterStep;\r\n mode: ApplicationFormMode;\r\n isOverallDeclarationAcknowledged: boolean;\r\n // latest get endpoint changes\r\n isRestorationFeePaymentAvailable:boolean;\r\n id: string;\r\n formStatus: ApplicationStatus;\r\n step: ReturnToRegisterStep;\r\n scope: FormScope;\r\n returnToRegisterDetail: ReturnToRegisterDetails;\r\n equalityDiversity: EqualityDiversity;\r\n declarations: Array<{ dynamicFormId: string, answers: Array }>;\r\n attachments: Array = [];\r\n appDeclaration: { isQ1Confirmed: boolean, isQ2Confirmed: boolean, isQ3Confirmed: boolean };\r\n countersignatures: Array = [];\r\n letterOfGoodStanding: LetterOfGoodStanding;\r\n restorationDeclarations:any[];\r\n ftpDeclarations;\r\n\r\n get readonly() {\r\n return (\r\n this.formStatus === ApplicationStatus.Submitted ||\r\n this.formStatus === ApplicationStatus.PendingProcessing ||\r\n this.formStatus === ApplicationStatus.ApprovedPendingRestorationFee ||\r\n this.formStatus === ApplicationStatus.Approved ||\r\n this.formStatus === ApplicationStatus.RestorationFeePaidPendingApproval \r\n );\r\n }\r\n\r\n constructor(data, registrantStatus) {\r\n Object.assign(this, data);\r\n }\r\n}\r\n","import { Applicant } from '../../../account/model/Applicant';\r\nimport { ApplicationStatus } from '../../../prereg/model/ApplicationStatus';\r\nimport { AnnotationType } from '../../model/AnnotationType';\r\nimport { RegistrantType } from '../../model/RegistrantType';\r\n\r\nexport interface ReturnToRegisterDetails {\r\n confirmUserNameChange: boolean;\r\n title: { name: string, id: number };\r\n forenames: string;\r\n surname: string;\r\n middleName: string;\r\n oetCandidateNo: number;\r\n confirmAccessOETPortal: boolean;\r\n englishCertificateOption: EnglishQualificationType;\r\n hasConfirmedRevalidationSubmission: boolean;\r\n}\r\n\r\nexport interface RegistrationDetails {\r\n registrationNumber: number;\r\n registrationStatus: ApplicationStatus;\r\n independentPrescriberStatus: AnnotationType;\r\n voluntaryRemovalReason: string;\r\n registrationRoute: RegistrationRoute\r\n contactType: RegistrantType;\r\n isRequiredEnglishCertificate: boolean;\r\n isRequiredRevalidationSubmission: boolean;\r\n}\r\n\r\nexport interface RegistrantPersonalDetails {\r\n contactDetails: Applicant;\r\n registration: RegistrationDetails;\r\n}\r\n\r\nexport enum EnglishQualificationType {\r\n IELTS = 1,\r\n OET,\r\n EmployerReference\r\n}\r\n\r\nexport enum RegistrationRoute\r\n{\r\n UK = 717750000,\r\n UKPlusOverseas = 717750001,\r\n OSPAP = 717750002,\r\n EEA = 717750003,\r\n NorthernIreland = 717750004,\r\n Legacy = 717750005\r\n}","export enum ReturnToRegisterStep {\r\n Guidance = 1,\r\n PersonalDetails,\r\n RegistrationDetails, \r\n LetterOfGoodStanding,\r\n RevalidationRecordOutstanding,\r\n EDIDetails,\r\n FtpDeclarationsOne,\r\n FtpDeclarationsTwo,\r\n RegistrationJoinDeclarations,\r\n ApplicationDeclarations,\r\n Review,\r\n Payment\r\n}\r\nexport enum ReturnToRegisterStepWithoutRevalidationOutstanding {\r\n Guidance = 1,\r\n PersonalDetails,\r\n RegistrationDetails, \r\n LetterOfGoodStanding,\r\n EDIDetails,\r\n FtpDeclarationsOne,\r\n FtpDeclarationsTwo,\r\n RegistrationJoinDeclarations,\r\n ApplicationDeclarations,\r\n Review,\r\n Payment\r\n}\r\n","import { Component, OnInit, ViewChild, QueryList, ViewChildren, ChangeDetectorRef } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { FormStepperComponent } from '../../shared/formStepper/formStepper.component';\r\nimport { User } from '../../account/model/User';\r\nimport { CanComponentDeactivate } from '../../guard/CanDeactivate.guard';\r\nimport { FormStepperService } from '../../shared/formStepper/formStepper.service';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { LogService } from '../../core/service/log.service';\r\nimport { LayoutService } from '../../core/service/layout.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ReturnToRegisterApplication } from './model/ReturnToRegister';\r\nimport { ReturnToRegisterStep } from './model/ReturnToRegisterStep';\r\nimport { ConfirmDialogComponent } from '../../shared/confirmDialog.component';\r\nimport { FormStepSummary } from '../../shared/formStepper/FormStepSummary';\r\nimport { mergeMap } from 'rxjs/operators';\r\nimport { of as observableOf, from as observableFrom } from 'rxjs';\r\nimport { ReturnToRegisterService } from '../../core/service/returnToRegister.service';\r\nimport { FormStepComponent } from '../../shared/formStepper/formStep.component';\r\nimport { ApplicationStatus } from '../../prereg/model/ApplicationStatus';\r\n\r\n@Component({\r\n selector: 'app-return-to-register',\r\n moduleId: module.id,\r\n templateUrl: './return-to-register-application.component.html',\r\n styleUrls: ['../../prereg/application-form.scss'],\r\n providers: [FormStepperService]\r\n})\r\nexport class ReturnToRegisterComponent implements OnInit,\r\n CanComponentDeactivate {\r\n\r\n user: User;\r\n loading = false;\r\n ready = false;\r\n saving = false;\r\n loadingError = false;\r\n application: ReturnToRegisterApplication;\r\n maxStep;\r\n minStep;\r\n isApplicationOpen = true;\r\n applicationClosedMessage: string;\r\n ReturnToRegisterStep = ReturnToRegisterStep;\r\n showGuidanceWarning = false;\r\n revalidationRecordOutstanding = false;\r\n allSteps: FormStepComponent[];\r\n allStepSummary: any;\r\n stepsWithoutRevalOutstanding;\r\n menuWithoutRevalOutstanding;\r\n displayRevalRecordOutstandingStep;\r\n initialSteps;\r\n onLoad = true;\r\n\r\n @ViewChild(FormStepperComponent) formStepper;\r\n @ViewChildren(FormStepperComponent) formStepperComponents: QueryList;\r\n\r\n constructor(private router: Router, private auth: AuthService,\r\n private log: LogService,\r\n public layout: LayoutService,\r\n private dialog: MatDialog,\r\n public formStepperService: FormStepperService,\r\n private service: ReturnToRegisterService,\r\n private cd: ChangeDetectorRef\r\n ) { }\r\n\r\n ngAfterViewInit() {\r\n this.formStepperComponents.changes.subscribe((comps: QueryList) => {\r\n this.formStepper = comps.first;\r\n this.cloneSteps();\r\n this.cloneSummary();\r\n this.displayRevalidationRecordOutstanding(this.revalidationRecordOutstanding);\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.load();\r\n }\r\n\r\n canDeactivate() {\r\n if (\r\n !this.formStepper ||\r\n !this.formStepper.currentStep ||\r\n !this.formStepper.currentStep.dirty\r\n ) {\r\n return true;\r\n }\r\n return this.warnForDirty();\r\n }\r\n\r\n load() {\r\n this.user = this.auth.user;\r\n this.loading = true;\r\n this.loadingError = false;\r\n this.service\r\n .getApplication(this.auth.user.registrationStatus)\r\n .subscribe(\r\n application => {\r\n this.application = application;\r\n if (this.application.activeForm.step) {\r\n this.maxStep = this.application.activeForm.step;\r\n }\r\n if (this.application.activeForm.minStep) {\r\n this.minStep = this.application.activeForm.minStep;\r\n }\r\n\r\n this.revalidationRecordOutstanding = !!this.application.personalDetails.registration.isRequiredRevalidationSubmission;\r\n this.loading = false;\r\n this.ready = true;\r\n setTimeout(() => {\r\n this.showGuidanceWarning = this.formStepper && this.formStepper.currentStep === ReturnToRegisterStep.PersonalDetails;\r\n });\r\n },\r\n error => {\r\n this.loading = false;\r\n this.loadingError = true;\r\n }\r\n );\r\n }\r\n\r\n warnForDirty(): Observable {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n title: `Unsaved changes`,\r\n message: `

    Do you want to save your changes before exiting your application form?

    `\r\n }\r\n });\r\n return dialogRef.afterClosed().pipe(\r\n mergeMap(shouldSave => {\r\n if (shouldSave) {\r\n this.layout.setFullscreenSpinner(true);\r\n return observableFrom(\r\n this.save().then(\r\n () => {\r\n return true;\r\n },\r\n error => {\r\n // show error messages\r\n this.layout.setFullscreenSpinner(false);\r\n return false;\r\n }\r\n )\r\n );\r\n } else {\r\n return observableOf(true);\r\n }\r\n })\r\n );\r\n }\r\n\r\n save() {\r\n this.saving = true;\r\n\r\n this.application.activeForm.step = this.formStepperService.getFurthestStep();\r\n if (this.application.activeForm.isOverallDeclarationAcknowledged === null) {\r\n this.application.activeForm.isOverallDeclarationAcknowledged = false;\r\n }\r\n if (this.application.activeForm.formStatus === ApplicationStatus.NotStarted) {\r\n this.application.activeForm.formStatus = ApplicationStatus.InProgress;\r\n }\r\n\r\n if (this.application.activeForm.returnToRegisterDetail.confirmUserNameChange === null) {\r\n this.application.activeForm.returnToRegisterDetail.confirmUserNameChange = true;\r\n }\r\n\r\n this.formStepper.currentStep.populateForm();\r\n return new Promise((resolve, reject) => {\r\n const start = performance.now();\r\n const minExecution = 300;\r\n function respond(cb) {\r\n const end = performance.now();\r\n const duration = end - start;\r\n if (duration < minExecution) {\r\n setTimeout(() => {\r\n cb();\r\n }, Math.round(minExecution - duration));\r\n } else {\r\n cb();\r\n }\r\n }\r\n this.service.saveApplication(this.application).subscribe(() => {\r\n respond(() => {\r\n this.saving = false;\r\n resolve();\r\n });\r\n }, error => { \r\n respond(() => {\r\n this.saving = false;\r\n reject(error);\r\n });\r\n });\r\n });\r\n }\r\n\r\n goToStepId(stepId) {\r\n this.formStepper.goToStep(stepId);\r\n }\r\n\r\n goToStep(step: FormStepSummary) {\r\n if (step.disabled) {\r\n return;\r\n }\r\n this.formStepper.goToStep(step.stepId);\r\n }\r\n\r\n stepChanged(stepId) {\r\n setTimeout(() => {\r\n this.service.setStep(this.application.activeForm.id, stepId).subscribe();\r\n this.application.activeForm.step = stepId;\r\n }, 1000);\r\n }\r\n\r\n\r\n stepChange(): () => Promise {\r\n return function () {\r\n return new Promise((resolve, reject) => {\r\n if (\r\n this.formStepper.currentStep.dirty ||\r\n this.formStepper.currentStep.stepId\r\n ) {\r\n this.formStepper.serverErrors = [];\r\n return this.save().then(\r\n () => {\r\n resolve();\r\n },\r\n error => {\r\n this.formStepper.serverErrors = error.validationErrors;\r\n reject(error);\r\n }\r\n );\r\n } else {\r\n resolve();\r\n }\r\n });\r\n }.bind(this);\r\n }\r\n\r\n cloneSteps(): void {\r\n this.allSteps = this.formStepper?.steps.slice();\r\n }\r\n\r\n cloneSummary(): void {\r\n this.allStepSummary = this.formStepperService.summary?.slice();\r\n }\r\n\r\n displayRevalidationRecordOutstanding(display: boolean): void {\r\n if (this.onLoad) {\r\n this.cloneSteps();\r\n this.cloneSummary();\r\n this.onLoad = false;\r\n }\r\n\r\n if (this.formStepper) {\r\n if (this.allSteps && !this.stepsWithoutRevalOutstanding && !this.menuWithoutRevalOutstanding) {\r\n this.stepsWithoutRevalOutstanding = this.formStepper.steps.filter(step => !step.title.includes('RevalidationRecordOutstanding'));\r\n this.menuWithoutRevalOutstanding = this.formStepperService.summary.filter(step => !step.title.includes('RevalidationRecordOutstanding'));\r\n }\r\n this.displayRevalRecordOutstandingStep = display;\r\n\r\n if (this.displayRevalRecordOutstandingStep) {\r\n this.formStepper.steps = this.allSteps;\r\n this.formStepperService.summary = this.allStepSummary;\r\n } else {\r\n this.formStepper.steps = this.stepsWithoutRevalOutstanding;\r\n this.formStepperService.summary = this.menuWithoutRevalOutstanding;\r\n }\r\n this.updateStepId();\r\n this.cd.detectChanges();\r\n }\r\n }\r\n\r\n updateStepId(): void {\r\n if (this.formStepper) {\r\n if (this.formStepperService.updateStepsId(this.initialSteps, this.formStepper.steps)) {\r\n this.initialSteps = this.formStepper.steps;\r\n if(this.displayRevalRecordOutstandingStep === true) {\r\n this.formStepper.currentStep = this.formStepper.steps.find(s => s.stepId === this.maxStep);\r\n this.formStepperService.setCurrentStep(this.maxStep);\r\n this.formStepper.currentStep.load();\r\n } \r\n }\r\n }\r\n }\r\n}\r\n","
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n

    Application for restoration to the register

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

    \r\n An error occurred while attempting to load your application\r\n

    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n Application\r\n \r\n
    \r\n \r\n
    \r\n

    \r\n {{ applicationClosedMessage }}\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    ","import { AfterViewInit, Component, forwardRef, OnInit } from '@angular/core';\r\nimport { ReturnToRegisterService } from '../../../../core/service/returnToRegister.service';\r\nimport { FormValidationService } from '../../../../dynamic/service/formValidationService';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { ReturnToRegisterStep } from '../../model/ReturnToRegisterStep';\r\n\r\n@Component({\r\n selector: 'app-application-declarations',\r\n templateUrl: './application-declarations.component.html',\r\n styleUrls: ['./application-declarations.component.css'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => ApplicationDeclarationsComponent)\r\n },\r\n FormValidationService\r\n ]\r\n})\r\nexport class ApplicationDeclarationsComponent extends FormStepComponent\r\n implements OnInit, AfterViewInit {\r\n\r\n\r\n constructor(service: FormStepperService, private rtrService: ReturnToRegisterService) {\r\n super(service);\r\n }\r\n viewReady = false;\r\n saving = false;\r\n title = 'Application declarations';\r\n stepId = ReturnToRegisterStep.ApplicationDeclarations;\r\n showDetailsHelp = false;\r\n isNoToAllFtpDeclarations = false;\r\n isPartlyNotifiedYes = false;\r\n noticedByGphc = false;\r\n\r\n ngOnInit() {\r\n }\r\n\r\n update() {\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n load() {\r\n if (this.viewReady) {\r\n this.ready$.next(true);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.ready$.next(true);\r\n this.viewReady = true;\r\n });\r\n }\r\n\r\n validate() {\r\n const {\r\n isQ1Confirmed, isQ2Confirmed, isQ3Confirmed\r\n } = this.application.activeForm.appDeclaration;\r\n const isOverallDeclarationAcknowledged = this.application.activeForm.isOverallDeclarationAcknowledged;\r\n const valid = (isQ1Confirmed && isQ2Confirmed && isQ3Confirmed) || isOverallDeclarationAcknowledged;\r\n const messages = [];\r\n\r\n if (!isQ1Confirmed) {\r\n messages.push('You have not confirmed the 1st declaration');\r\n }\r\n if (!isQ2Confirmed) {\r\n messages.push('You have not confirmed the 2nd declaration');\r\n }\r\n if (!isQ3Confirmed) {\r\n messages.push('You have not confirmed the 3rd declaration');\r\n }\r\n if (!isOverallDeclarationAcknowledged) {\r\n messages.push('You have to complete over all declaration');\r\n }\r\n this.validity$.next({ valid: messages.length === 0, messages, touched: this.touched });\r\n }\r\n\r\n populateForm() { }\r\n\r\n}\r\n","\r\n
    \r\n

    \r\n
    \r\n Application declarations\r\n
    \r\n

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

    \r\n \r\n I am applying for registration in Part 1 or Part 2 of the register and that I intend to practise as a\r\n pharmacist or pharmacy technician in Great Britain, the Channel Islands or the Isle of Man, as set out\r\n in Article 20(3) of the Pharmacy Order 2010.\r\n \r\n \r\n

    \r\n

    \r\n Please select this checkbox\r\n

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

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

    \r\n \r\n Other than issues that I have declared in the fitness to practise section, I am not aware of any action\r\n that I have taken, or not taken, which would be likely to result in an allegation that my fitness to\r\n practise is impaired.\r\n \r\n \r\n

    \r\n

    \r\n Please select this checkbox\r\n

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

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

    \r\n \r\n The information that I have provided in this application, is complete,\r\n true and accurate. I understand that if I am found to have given false or misleading information in\r\n connection with my application to return to the register, this may be treated as misconduct, and could\r\n result in my removal from the register.\r\n \r\n \r\n

    \r\n

    \r\n Please select this checkbox\r\n

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

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

    \r\n I confirm that I fully understand the declarations I have made.\r\n

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

    I have read and understood the declarations

    \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    ","import { Component, forwardRef, OnInit } from '@angular/core';\r\nimport { Input } from 'postcss';\r\nimport { EqualityDiversity } from '../../../../account/model/EqualityDiversity';\r\nimport { EdiService } from '../../../../account/service/edi.service';\r\nimport { Tooltip } from '../../../../core/tooltip/Tooltip';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { ReturnToRegisterStep } from '../../model/ReturnToRegisterStep';\r\n``\r\n@Component({\r\n selector: 'app-equality-diversity',\r\n templateUrl: './equality-diversity.component.html',\r\n styleUrls: ['./equality-diversity.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => EqualityDiversityComponent)\r\n }\r\n ]\r\n})\r\nexport class EqualityDiversityComponent extends FormStepComponent implements OnInit {\r\n\r\n title = 'ED&I Details';\r\n stepId = ReturnToRegisterStep.EDIDetails;\r\n equalityDiversity: EqualityDiversity;\r\n\r\n constructor(public ediService: EdiService, service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n showDetailsHelp = false;\r\n prevDisabled = false;\r\n\r\n ngOnInit() {\r\n this.equalityDiversity = this.application.activeForm.equalityDiversity || {\r\n ethnicity: undefined,\r\n ethnicityOther: '',\r\n nationality: undefined,\r\n religion: undefined,\r\n religionOther: '',\r\n disabled: undefined,\r\n disabilityDetails: '',\r\n gender: undefined,\r\n sexualOrientation: undefined\r\n };\r\n }\r\n\r\n validate() {\r\n this.validity$.next(Object.assign(this.ediService.validate(this.equalityDiversity), { touched: this.touched }));\r\n }\r\n\r\n update($event) {\r\n const nationality = this.application.activeForm.equalityDiversity?.nationality;\r\n this.application.activeForm.equalityDiversity = Object.assign($event, { nationality });\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n load() {\r\n this.ediService.load().subscribe(() => {\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n populateForm() { }\r\n\r\n\r\n}\r\n","\r\n\r\n
    \r\n

    \r\n
    \r\n Equality and diversity\r\n
    \r\n \r\n

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

    \r\n At the GPhC, we are committed to promoting equality, valuing diversity and being inclusive in all our work\r\n as a health professions regulator, and to making sure we meet our equality duties.\r\n

    \r\n

    \r\n This equality monitoring form will provide us with information to check that this happens, as defined under\r\n the Equality Act 2010. We will use your answers to compile statistics and to facilitate research to support\r\n this work. We sometimes share anonymised data with third parties to help us carry out research into\r\n particular issues and will have a confidentiality agreement in place if this happens.\r\n

    \r\n

    \r\n It does not form part of the application process and will not be used in assessing applications. If you do not want to give us any information, click on ‘prefer\r\n not to say’ in response to each section.\r\n

    \r\n
    \r\n
    \r\n
    \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 { Input, Component, OnInit } from '@angular/core';\r\n\r\nimport { map } from 'rxjs/operators';\r\nimport { ReturnToRegisterService } from '../../../../../app/core/service/returnToRegister.service';\r\nimport { FormQuestion } from '../../../../../app/dynamic/model/FormQuestion';\r\nimport { FormValidationService } from '../../../../../app/dynamic/service/formValidationService';\r\nimport { FormValidator } from '../../../../../app/dynamic/service/FormValidator';\r\n\r\nimport { ReturnToRegisterApplication } from '../../model/ReturnToRegister';\r\nimport { ReturnToRegisterApplicationForm } from '../../model/ReturnToRegisterApplicationForm';\r\n\r\n@Component({\r\n selector: 'app-declaration-summary',\r\n templateUrl: './declarationSummary.component.html',\r\n providers: [\r\n FormValidationService,\r\n { provide: FormValidator, useExisting: FormValidationService }\r\n ],\r\n styleUrls: ['./declarationSummary.scss']\r\n}) export class DeclarationSummaryComponent implements OnInit {\r\n empty = false;\r\n form$ = this.validator.state$.pipe(map(forms => forms[0]));\r\n formIndex = 0;\r\n @Input() application: ReturnToRegisterApplication;\r\n @Input() formId;\r\n applicationForm: ReturnToRegisterApplicationForm;\r\n dynamicFormId;\r\n hasToDeclare: Array = [];\r\n constructor(\r\n private rtrService: ReturnToRegisterService,\r\n private validator: FormValidationService\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n this.setForm();\r\n this.load();\r\n }\r\n\r\n setForm() {\r\n if (this.formId) {\r\n this.applicationForm = this.application.pastApplications\r\n .find(pastApp => pastApp.id === this.formId);\r\n } else {\r\n this.applicationForm = this.application.activeForm;\r\n }\r\n }\r\n\r\n load() {\r\n this.rtrService.getDeclarationFormTemplates().subscribe(formTemplates => {\r\n const form = this.validator.addForm(formTemplates[0]);\r\n this.dynamicFormId = form.dynamicFormId;\r\n const saved = this.applicationForm.declarations.find(dec => dec.dynamicFormId === form.dynamicFormId);\r\n if (!saved) {\r\n this.empty = true;\r\n return;\r\n }\r\n this.validator.loadAnswers(form, saved.answers);\r\n this.hasToDeclare = form.questionGroups.reduce((acc, group) => {\r\n acc = acc.concat(group.questions.filter(q => this.validator.hasAnsweredYes(q)));\r\n return acc;\r\n }, []);\r\n });\r\n }\r\n}\r\n\r\n\r\n","
    \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n
    \r\n I have nothing to declare\r\n
    \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n Declarations not completed\r\n
    \r\n
    ","import { Component, OnInit, forwardRef, Input } from '@angular/core';\r\nimport { map } from 'rxjs/operators';\r\nimport { ReturnToRegisterService } from '../../../../core/service/returnToRegister.service';\r\nimport { FormValidationService } from '../../../../dynamic/service/formValidationService';\r\nimport { FormValidator } from '../../../../dynamic/service/FormValidator';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { ReturnToRegisterStep } from '../../model/ReturnToRegisterStep';\r\n\r\n@Component({\r\n selector: 'app-ftp-declarations-one',\r\n templateUrl: './ftp-declarations-one.component.html',\r\n styleUrls: ['./ftp-declarations-one.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => FtpDeclarationOneComponent)\r\n },\r\n FormValidationService,\r\n { provide: FormValidator, useExisting: FormValidationService } \r\n ]\r\n})\r\n\r\nexport class FtpDeclarationOneComponent extends FormStepComponent implements OnInit {\r\n\r\n stepId = ReturnToRegisterStep.FtpDeclarationsOne;\r\n title = 'Fitness to practise declarations (1)';\r\n form$ = this.validator.state$.pipe(map(forms => forms[0]));\r\n valid;\r\n formIndex: number;\r\n @Input('formIndex') set setFormIndex(value) {\r\n this.formIndex = parseInt(value, 10);\r\n }\r\n dynamicFormId;\r\n declarationHeading;\r\n \r\n constructor(private formStepperService: FormStepperService, private validator: FormValidationService,\r\n private rtrService: ReturnToRegisterService) {\r\n super(formStepperService);\r\n this.form$.subscribe(form => {\r\n if (form) {\r\n this.dirty = form.dirty;\r\n this.valid = !form.invalid && form.completed;\r\n }\r\n });\r\n }\r\n\r\n ngOnInit(): void { \r\n if (this.formIndex === 0) {\r\n this.title = 'Fitness to practise declarations (1)';\r\n this.stepId = ReturnToRegisterStep.FtpDeclarationsOne; \r\n }\r\n if (this.formIndex === 1) {\r\n this.title = 'Declarations on joining the register';\r\n this.stepId = ReturnToRegisterStep.RegistrationJoinDeclarations; \r\n }\r\n }\r\n\r\n beforeNext() {\r\n return this.populateForm();\r\n }\r\n\r\n beforePrev() {\r\n return this.populateForm();\r\n }\r\n \r\n populateForm() {\r\n this.application.activeForm.declarations = this.application.activeForm.declarations\r\n .filter(d => d.dynamicFormId !== this.dynamicFormId);\r\n this.application.activeForm.declarations.push(this.validator.getPayload()[0]);\r\n return true;\r\n }\r\n\r\n load(): void {\r\n this.rtrService.getDeclarationFormTemplates().subscribe(formTemplates => {\r\n const formTemplate = formTemplates[this.formIndex];\r\n const form = this.validator.addForm(formTemplate);\r\n this.dynamicFormId = form.dynamicFormId;\r\n if(this.application.activeForm.declarations && this.application.activeForm.declarations.length > 0) {\r\n const saved = this.application.activeForm.declarations.find(dec => dec.dynamicFormId === form.dynamicFormId);\r\n if (saved) {\r\n this.validator.loadAnswers(form, saved.answers);\r\n }\r\n } \r\n\r\n // strip off any legacy declaration forms\r\n const currentDynamicFormIds = formTemplates.map(template => template.dynamicFormId);\r\n this.application.activeForm.declarations = this.application.activeForm.declarations\r\n .filter(f => currentDynamicFormIds.indexOf(f.dynamicFormId) > -1 );\r\n\r\n this.validator.updateState();\r\n this.dirty = false;\r\n this.touched = false;\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n validate() { \r\n const messages = [];\r\n if (!this.valid) {\r\n messages.push('You must answer all the questions to continue');\r\n }\r\n this.validity$.next({ valid: this.valid, messages, touched: this.touched });\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
    ","import { Component, OnInit, forwardRef, Input } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { ReturnToRegisterStep } from '../../model/ReturnToRegisterStep';\r\nimport { ftpDeclarationObj } from '../../model/FtPDeclaration';\r\n\r\nconst QUESTION10 = 'Q10';\r\nconst QUESTION11 = 'Q11';\r\n\r\n@Component({\r\n selector: 'app-ftp-declarations-two',\r\n templateUrl: './ftp-declarations-two.component.html',\r\n styleUrls: ['./ftp-declarations-two.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => FtpDeclarationTwoComponent)\r\n } \r\n ]\r\n})\r\n\r\nexport class FtpDeclarationTwoComponent extends FormStepComponent implements OnInit {\r\n\r\n stepId = ReturnToRegisterStep.FtpDeclarationsTwo;\r\n title = 'Fitness to practise declarations (2)';\r\n declarationHeading = 'Fitness to practise declarations (2)'; \r\n question10 = new ftpDeclarationObj(QUESTION10);\r\n question11 = new ftpDeclarationObj(QUESTION11);\r\n valid; \r\n @Input() touched = false;\r\n\r\n constructor(private formStepperService: FormStepperService) {\r\n super(formStepperService);\r\n }\r\n\r\n ngOnInit(): void {\r\n if(this.application.activeForm.restorationDeclarations.length > 0) {\r\n let ftpDeclaration = this.application.activeForm.restorationDeclarations.find( dec => dec.questionName === QUESTION10);\r\n if(ftpDeclaration) Object.assign(this.question10, ftpDeclaration);\r\n ftpDeclaration = this.application.activeForm.restorationDeclarations.find( dec => dec.questionName === QUESTION11);\r\n if(ftpDeclaration) Object.assign(this.question11, ftpDeclaration); \r\n } else {\r\n this.application.activeForm.restorationDeclarations.push(this.question10, this.question11);\r\n }\r\n }\r\n\r\n populateForm() {\r\n this.updateDetails();\r\n }\r\n\r\n validate() { \r\n let messages = [];\r\n this.valid = true;\r\n\r\n if(this.question10.isRegistered === undefined || this.question10.isRegistered === null) {\r\n messages.push('Please let us know if you have worked as pharmacist or pharmacy technician');\r\n }\r\n\r\n if((this.question11.isRegistered === undefined || this.question11.isRegistered === null)) {\r\n messages.push('Please let us know if you have used the title ‘pharmacist’ or ‘pharmacy technician’ while not registered with the GPhC');\r\n }\r\n\r\n if(this.question10.isRegistered) {\r\n if((this.question10.isInvestigated === undefined || this.question10.isInvestigated === null)) {\r\n messages.push('Please let us know if your work as pharmacist or pharmacy technician is investigated by the GPhC'); \r\n } \r\n if(this.question10.isInvestigated === true) {\r\n if(!this.question10.caseReferenceNo || this.question10.caseReferenceNo === '') {\r\n messages.push('Please enter case reference number');\r\n }\r\n }\r\n if(this.question10.isInvestigated === false) {\r\n let errorMessages = [];\r\n if(!this.question10.titleUsed) {\r\n errorMessages.push(' your job title');\r\n } \r\n if(!this.question10.titleUsedFrom || !this.question10.titleUsedUntil) { \r\n errorMessages.push(' dates of your unregistered practise');\r\n } \r\n if(this.question10.titleUsedFrom && this.question10.titleUsedUntil && \r\n (new Date(this.question10.titleUsedFrom).setHours(0,0,0,0) > new Date(this.question10.titleUsedUntil).setHours(0,0,0,0))) {\r\n this.valid = false; \r\n }\r\n if(!this.question10.employerName || this.question10.employerName ==='') {\r\n errorMessages.push(' employer name');\r\n }\r\n if(!this.question10.employerAddress) {\r\n errorMessages.push(' employer address');\r\n }\r\n if(this.question10.employerAddress && !this.question10.employerAddress.homeNation) {\r\n messages.push('Please select country in which you are resident')\r\n }\r\n if(errorMessages.length > 0) {\r\n let message = 'Please enter'+ errorMessages.toString();\r\n messages.push(message);\r\n } \r\n }\r\n }\r\n\r\n if(this.question11.isRegistered) {\r\n if((this.question11.isInvestigated === undefined || this.question11.isInvestigated === null)) {\r\n messages.push('Please let us know if the title used had been investigated by the GPhC'); \r\n }\r\n if(this.question11.isInvestigated) {\r\n if(!this.question11.caseReferenceNo || this.question11.caseReferenceNo === '') {\r\n messages.push('Please enter case reference number');\r\n }\r\n }\r\n if(this.question11.isInvestigated === false) {\r\n let errorMessages = [];\r\n if(!this.question11.titleUsed || this.question11.titleUsed === '') {\r\n errorMessages.push(' the title you used');\r\n }\r\n if(!this.question11.titleUsedFrom || !this.question11.titleUsedUntil) { \r\n errorMessages.push(' dates of your title use');\r\n } \r\n if(this.question11.titleUsedFrom && this.question11.titleUsedUntil && \r\n (new Date(this.question11.titleUsedFrom).setHours(0,0,0,0) > new Date(this.question11.titleUsedUntil).setHours(0,0,0,0))) {\r\n this.valid = false; \r\n }\r\n if(!this.question11.howWhereUsedIt || this.question11.howWhereUsedIt === '') {\r\n errorMessages.push(' how or where you used the title');\r\n } else if(this.question11.howWhereUsedIt.trim().length > 0 &&\r\n this.question11.howWhereUsedIt.length > 5000){\r\n this.valid = false;\r\n }\r\n if(errorMessages.length > 0) {\r\n let message = 'Please enter'+ errorMessages.toString();\r\n messages.push(message);\r\n }\r\n }\r\n }\r\n\r\n this.valid = this.valid && !messages.length;\r\n\r\n this.validity$.next({ valid: this.valid, messages , touched: this.touched });\r\n }\r\n\r\n updateDetails() { \r\n if(this.question10.isRegistered === false) {\r\n this.question10.setValuesIfNotRegistered();\r\n }\r\n\r\n if(this.question11.isRegistered === false) {\r\n this.question11.setValuesIfNotRegistered();\r\n }\r\n\r\n if(this.question10.isRegistered === true && this.question10.isInvestigated === true) {\r\n this.question10.setValuesIfInvestigated();\r\n }\r\n if(this.question10.isRegistered === true && this.question10.isInvestigated === false) {\r\n this.question10.setValuesIfNotInvestigated();\r\n }\r\n if(this.question11.isRegistered === true && this.question11.isInvestigated === true) {\r\n this.question11.setValuesIfInvestigated();\r\n }\r\n if(this.question11.isRegistered === true && this.question11.isInvestigated === false) {\r\n this.question11.setValuesIfNotInvestigated();\r\n }\r\n this.application.activeForm.restorationDeclarations.splice(0,this.application.activeForm.restorationDeclarations.length );\r\n this.application.activeForm.restorationDeclarations.push(\r\n JSON.parse(JSON.stringify(this.question10)), \r\n JSON.parse(JSON.stringify(this.question11)));\r\n }\r\n\r\n onAnswerChange(val) { }\r\n\r\n dateChange() { }\r\n\r\n propagate() {\r\n this.validate(); \r\n }\r\n\r\n onDateRangeChange(dates) {\r\n this.setStartEndDate(this.question10, dates);\r\n }\r\n\r\n onDatesChange(dates) {\r\n this.setStartEndDate(this.question11, dates);\r\n }\r\n\r\n setStartEndDate(dateObject, selectedDates) {\r\n dateObject.titleUsedFrom = selectedDates.from;\r\n dateObject.titleUsedUntil = selectedDates.to;\r\n this.validate();\r\n }\r\n\r\n update(){\r\n this.validate();\r\n }\r\n}\r\n","\r\n

    {{ declarationHeading }}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n Yes\r\n No\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n Yes\r\n No\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    \r\n Please give us the case reference number and the month and year when you declared this. \r\n We will use this information to find your case and assess if it affects your current \r\n fitness to practise. We may contact you for more information.\r\n

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

    \r\n Please give us the details of your unregistered practice. \r\n We will use this information to investigate the incident and \r\n assess your current fitness to practise. We may contact you or \r\n your employer for more information.\r\n

    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n Yes\r\n No\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n Yes\r\n No\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n

    \r\n Please give us the case reference number and the month and year when you declared this. \r\n We will use this information to find your case and assess if it affects your current fitness \r\n to practise. We may contact you for more information.\r\n

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

    \r\n Please give us the details of your unregistered practice. \r\n We will use this information to investigate the incident and \r\n assess your current fitness to practise. We may contact you or \r\n your employer for more information.\r\n

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

    5000 \">\r\n You can only enter a maximum of 5000 characters in this field\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, forwardRef } from '@angular/core';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { ReturnToRegisterApplication } from '../../model/ReturnToRegister';\r\nimport { ReturnToRegisterStep } from '../../model/ReturnToRegisterStep';\r\n\r\n@Component({\r\n selector: 'app-guidance',\r\n templateUrl: './guidance.component.html',\r\n styleUrls: ['./guidance.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => GuidanceComponent)\r\n } \r\n ]\r\n})\r\nexport class GuidanceComponent extends FormStepComponent {\r\n title = 'Guidance for this application';\r\n application : ReturnToRegisterApplication;\r\n stepId = ReturnToRegisterStep.Guidance;\r\n fee = '114';\r\n\r\n constructor(private formStepperService: FormStepperService) { \r\n super(formStepperService);\r\n }\r\n\r\n populateForm() {}\r\n\r\n validate() {\r\n this.validity$.next({ valid: true, messages : [] , touched: false });\r\n }\r\n}\r\n","\r\n

    {{title}}

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

    \r\n Use this application to apply to return to the register. \r\n It will be available to submit for 12 months from the date you were last registered.\r\n

    \r\n\r\n

    \r\n After this time, you will need to complete a return to practise application, \r\n which you can find on the main GPhC website.\r\n

    \r\n \r\n

    \r\n You must pay two fees as part of the application. The first is an application fee, \r\n the amount depends on the way you left the register and if you are a pharmacist or \r\n pharmacy technician. You can see the amounts in the tables below. \r\n

    \r\n\r\n

    \r\n The application fee covers the processing of your application and is non-refundable, \r\n even if your application is not successful.\r\n

    \r\n\r\n

    \r\n The second is the restoration fee which covers your registration until you reach the next \r\n anniversary of your previous renewal deadline. Then you will need to pay for your next year's \r\n registration as normal.\r\n

    \r\n\r\n

    \r\n If you are returning to the register in the two months before the anniversary of your previous \r\n renewal deadline, you will also need to pay the renewal fee for the following year at the same \r\n time as the restoration fee.\r\n

    \r\n\r\n

    \r\n

    Fees for restoring your registration as a pharmacist

    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Restoring your register entry, following:Application fee (£)Total (including {{fee | currency: 'GBP': 'symbol' :'.0'}} re-entry fee)
    Voluntary removal, within one month of the
    removal date
    {{ '429' | currency: 'GBP': 'symbol' :'.0'}}{{ '543' | currency: 'GBP': 'symbol' :'.0'}}
    Voluntary removal one month or more after the
    removal date
    {{ '155' | currency: 'GBP': 'symbol' :'.0'}}{{ '269' | currency: 'GBP': 'symbol' :'.0'}}
    Removal for failure to renew{{ '429' | currency: 'GBP': 'symbol' :'.0'}}{{ '543' | currency: 'GBP': 'symbol' :'.0'}}
    Removal for failure to meet revalidation requirements{{ '616' | currency: 'GBP': 'symbol' :'.0'}}{{ '730' | currency: 'GBP': 'symbol' :'.0'}}
    \r\n\r\n

    \r\n

    Fees for restoring your registration as a pharmacy technician

    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Restoring your register entry, following:Application fee (£)Total (including {{fee | currency: 'GBP': 'symbol' :'.0'}} re-entry fee)
    Voluntary removal, within one month of the
    removal date
    {{ '217' | currency: 'GBP': 'symbol' :'.0'}}{{ '331' | currency: 'GBP': 'symbol' :'.0'}}
    Voluntary removal one month or more after the
    removal date
    {{ '13' | currency: 'GBP': 'symbol' :'.0'}}{{ '127' | currency: 'GBP': 'symbol' :'.0'}}
    Removal for failure to renew{{ '217' | currency: 'GBP': 'symbol' :'.0'}}{{ '331' | currency: 'GBP': 'symbol' :'.0'}}
    Removal for failure to meet revalidation requirements{{ '324' | currency: 'GBP': 'symbol' :'.0'}}{{ '438' | currency: 'GBP': 'symbol' :'.0'}}
    \r\n
    \r\n
    \r\n
    ","import { Component, forwardRef, OnInit } from '@angular/core';\r\nimport { FormControl, Validators } from '@angular/forms';\r\nimport { debounceTime } from 'rxjs/operators';\r\nimport { Applicant } from '../../../../account/model/Applicant';\r\nimport { Tooltip } from '../../../../core/tooltip/Tooltip';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { ReturnToRegisterStep } from '../../model/ReturnToRegisterStep';\r\n\r\n@Component({\r\n selector: 'app-letter-of-good-standing',\r\n templateUrl: './letter-of-good-standing.component.html',\r\n styleUrls: ['./letter-of-good-standing.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => LetterOfGoodStandingComponent)\r\n }\r\n ]\r\n})\r\nexport class LetterOfGoodStandingComponent extends FormStepComponent implements OnInit {\r\n showDetailsHelp = false;\r\n applicant: Applicant;\r\n stepId = ReturnToRegisterStep.LetterOfGoodStanding;\r\n title = 'Letter of good standing';\r\n hasRegistered:boolean\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n\r\n model = {\r\n hasRegistered: new FormControl(undefined, {\r\n validators: Validators.required\r\n }),\r\n regulatoryBody: new FormControl(undefined),\r\n registrationNumber: new FormControl(undefined),\r\n requested: new FormControl(undefined)\r\n };\r\n\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n ngOnInit() {\r\n this.hasRegistered=this.application.activeForm.letterOfGoodStanding.hasRegistered;\r\n if(this.hasRegistered)\r\n {\r\n this.model.regulatoryBody.setValue(\r\n this.checkFormForNullVals(this.application.activeForm.letterOfGoodStanding?.regulatoryBody)\r\n );\r\n this.model.registrationNumber.setValue(\r\n this.checkFormForNullVals(this.application.activeForm.letterOfGoodStanding?.registrationNumber)\r\n );\r\n this.model.requested.setValue(\r\n this.checkFormForNullVals(this.application.activeForm.letterOfGoodStanding?.isRequested)\r\n );\r\n }\r\n this.model.hasRegistered.valueChanges\r\n .pipe(debounceTime(50))\r\n .subscribe(value => {\r\n this.makeDirty();\r\n if (value === false) {\r\n this.hasRegistered=false;\r\n this.model.regulatoryBody.clearValidators();\r\n this.model.registrationNumber.clearValidators();\r\n this.model.requested.clearValidators();\r\n this.model.regulatoryBody.setValue(null);\r\n this.model.registrationNumber.setValue(null);\r\n this.model.requested.setValue(null);\r\n } else if (value === true) {\r\n this.hasRegistered=true;\r\n this.model.regulatoryBody.setValidators(Validators.required);\r\n this.model.registrationNumber.setValidators(Validators.required);\r\n this.model.requested.setValidators(Validators.required);\r\n this.model.regulatoryBody.setValue(\r\n this.checkFormForNullVals(this.application.form.letterOfGoodStanding?.regulatoryBody)\r\n );\r\n this.model.registrationNumber.setValue(\r\n this.checkFormForNullVals(this.application.form.letterOfGoodStanding?.registrationNumber)\r\n );\r\n this.model.requested.setValue(\r\n this.checkFormForNullVals(this.application.form.letterOfGoodStanding?.isRequested)\r\n );\r\n }\r\n this.model.regulatoryBody.updateValueAndValidity();\r\n this.model.registrationNumber.updateValueAndValidity();\r\n this.model.requested.updateValueAndValidity();\r\n this.validate();\r\n });\r\n this.model.regulatoryBody.valueChanges\r\n .pipe(debounceTime(50))\r\n .subscribe(value => {\r\n this.makeDirty();\r\n this.validate();\r\n });\r\n this.model.registrationNumber.valueChanges\r\n .pipe(debounceTime(50))\r\n .subscribe(value => {\r\n this.makeDirty();\r\n this.validate();\r\n });\r\n this.model.requested.valueChanges\r\n .pipe(debounceTime(50))\r\n .subscribe(value => {\r\n this.makeDirty();\r\n this.validate();\r\n });\r\n this.applicant = this.application.trainee;\r\n\r\n }\r\n\r\n private checkFormForNullVals(val) {\r\n return val !== null ? val : '';\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n if (!this.model.hasRegistered.disabled && !this.model.hasRegistered.valid) {\r\n messages.push('You must answer the question to continue');\r\n }\r\n if (!this.model.regulatoryBody.valid) {\r\n messages.push('Please enter the name of the regulatory body');\r\n }\r\n if (!this.model.registrationNumber.valid) {\r\n messages.push('Please enter the registration number');\r\n }\r\n if (!this.model.requested.valid) {\r\n messages.push('Please state whether or not letter of good standing has been requested');\r\n }\r\n this.validity$.next({ valid: !messages.length, messages, touched: this.touched });\r\n\r\n }\r\n\r\n\r\n populateForm() {\r\n this.application.activeForm.letterOfGoodStanding = {\r\n hasRegistered: this.model.hasRegistered.value,\r\n isRequested: this.model.requested.value,\r\n registrationNumber: this.model.registrationNumber.value,\r\n regulatoryBody: this.model.regulatoryBody.value\r\n };\r\n }\r\n\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 If you have been registered in the last five years, or are currently registered with:\r\n

    \r\n
      \r\n
    • another health regulatory body in Great Britain
    • \r\n
    • any health regulatory body outside of Great Britain
    • \r\n
    \r\n

    \r\n You must provide details of your registration and a valid 'letter of good standing' from this organisation.\r\n

    \r\n

    \r\n This is so that we can verify that you are fit to practise as a pharmacy professional. We may contact the\r\n regulatory\r\n body for more information.\r\n

    \r\n

    \r\n Letters of good standing are only valid for six months from the date they are issued.\r\n

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

    \r\n Have you been registered with any other healthcare regulatory body in the last five years?

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n Yes\r\n No\r\n \r\n \r\n \r\n

    \r\n This is mandatory\r\n

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

    \r\n Please provide details of the health regulatory body and your registration with them.\r\n

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

    \r\n This is mandatory\r\n

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

    \r\n This is mandatory\r\n

    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n Yes\r\n No\r\n \r\n \r\n

    \r\n This is mandatory\r\n

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

    \r\n If you have been registered with any other health regulatory bodies, your application will not be complete\r\n until we receive a letter of good standing\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, forwardRef, ElementRef, ViewChild, Renderer2, OnInit, Input } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { creditCards, CreditCard } from '../../../../renewal/model/CreditCard';\r\nimport { RenewalService } from '../../../../core/service/renewal.service';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { ReturnToRegisterStep } from '../../model/ReturnToRegisterStep';\r\nimport { ReturnToRegisterApplication } from '../../model/ReturnToRegister';\r\nimport { ReturnToRegisterService } from '../../../../../app/core/service/returnToRegister.service';\r\nimport { CollectionMethod } from '../../../../../app/payment/model/CollectionMethod';\r\n\r\n\r\n@Component({\r\n selector: 'app-rtr-payment-step',\r\n templateUrl: './rtr-payment-step.component.html',\r\n styleUrls: ['./rtr-payment-step.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => RtrPaymentStepComponent)\r\n }\r\n ]\r\n}) export class RtrPaymentStepComponent extends FormStepComponent implements OnInit{\r\n\r\n title = 'Payment';\r\n stepId = ReturnToRegisterStep.Payment;\r\n fee;\r\n cartId;\r\n selectedCard: CreditCard;\r\n creditCards = creditCards;\r\n worldpayConfig;\r\n @ViewChild('worldpayForm', { static: false }) worldpayForm: ElementRef;\r\n application: ReturnToRegisterApplication;\r\n outStandingPaymentDetails = [];\r\n collectionMethod = CollectionMethod;\r\n\r\n\r\n constructor(private renewalService: RenewalService,\r\n stepper: FormStepperService, private rtrService: ReturnToRegisterService) {\r\n super(stepper);\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.fee=this.application.returnToRegisterApplicationFeeAmount;\r\n }\r\n\r\n load() {\r\n //this.fee = this.application.pendingFee;\r\n this.renewalService.getWordpayConfig().subscribe(config => {\r\n this.worldpayConfig = config;\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n let isDateValid = true;\r\n\r\n if(!isDateValid) {\r\n messages.push(\"The date of removal from the register must be greater than today's date, please select a valid date.\");\r\n }\r\n const valid = !!this.selectedCard && isDateValid;\r\n if (!valid) {\r\n messages.push('You must select a card type to proceed to payment');\r\n }\r\n\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n beforeNext() {\r\n this.rtrService.saveApplicationPayment().subscribe((result) => {\r\n this.cartId = JSON.stringify(result.paymentIdentifier);\r\n setTimeout(() => {\r\n this.worldpayForm.nativeElement.submit();\r\n }, 100);\r\n },(error)=>{\r\n console.log(error.messages)\r\n });\r\n return false;\r\n }\r\n\r\n populateForm() { }\r\n\r\n}\r\n","//rtr payment html\r\n\r\n \r\n

    \r\n Application fee\r\n \"Worldpay\r\n

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

    Fees to be paid

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

    \r\n Return to register application fee: {{fee | currency: 'GBP': 'symbol' :'.2'}}\r\n

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

    \r\n This fee covers the processing of your application and is non-refundable.\r\n

    \r\n

    \r\n You will receive an update on the status of your application within 28 days of making payment. \r\n You must wait until you receive confirmation that you have been returned to the register before practising.\r\n

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

    Please select your card type

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

    \r\n We can only accept payments made in pounds sterling (GBP). Payments are processed using worldpay, for more\r\n information please\r\n review their\r\n privacy policy.\r\n

    \r\n

    \r\n When you make a card payment, you may be redirected to your card provider’s site to enter another password\r\n before they authorise\r\n your payment. You can find out more about 3-D Secure authentication from your card provider.\r\n

    \r\n
    \r\n \r\n \r\n \r\n \"{{card.name}}\r\n
    {{card.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
    ","import { AfterViewInit, Component, ElementRef, EventEmitter, forwardRef, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { ReturnToRegisterStep } from '../../model/ReturnToRegisterStep';\r\nimport { Tooltip } from '../../../../core/tooltip/Tooltip';\r\nimport { Applicant } from '../../../../account/model/Applicant';\r\nimport { ContactEditComponent } from '../../../../account/contactEdit.component';\r\nimport { AuthService } from '../../../../core/service/auth.service';\r\nimport { SupportingDocumentsService } from '../../../../shared/supportingDocuments/supportingDocuments.service';\r\nimport { UploadType } from '../../../../shared/model/UploadType';\r\nimport { FileUpload } from '../../../../shared/model/FileUpload';\r\nimport { AttachmentType } from '../../../../shared/model/AttachmentType';\r\nimport utils from '../../../../shared/service/utils';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { NgForm, FormControl } from '@angular/forms';\r\nimport { Observable } from 'rxjs';\r\nimport { AccountService } from '../../../../account/service/account.service';\r\nimport { map, startWith } from 'rxjs/operators';\r\nimport { ReturnToRegisterDetails } from '../../model/ReturnToRegisterDetails';\r\n\r\n@Component({\r\n selector: 'app-personal-details',\r\n templateUrl: './personal-details.component.html',\r\n styleUrls: ['./personal-details.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => PersonalDetailsComponent)\r\n },\r\n SupportingDocumentsService,\r\n ]\r\n})\r\nexport class PersonalDetailsComponent extends FormStepComponent implements OnInit, AfterViewInit {\r\n title = 'Personal details';\r\n @Input() stepId = ReturnToRegisterStep.PersonalDetails;\r\n @Input() readonly = false;\r\n @Input() touched = false;\r\n viewReady = false;\r\n showDetailsHelp = false;\r\n showContactHelp = false;\r\n applicant;\r\n contactValid;\r\n hasNewName;\r\n hasTitle;\r\n hasNationality;\r\n selection;\r\n registrantFullName;\r\n user;\r\n @Input() application;\r\n @ViewChild('form') form: NgForm;\r\n @Output() navigate = new EventEmitter();\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n uploadType = UploadType.ReturnToRegisterSupportingDocuments;\r\n sessionId = utils.guid();\r\n attachments: { [key: number]: Array } = {};\r\n AttachmentType = AttachmentType;\r\n registrantDetails: ReturnToRegisterDetails;\r\n deleteUrl;\r\n registrant: Applicant;\r\n officialDocumentForNameChange;\r\n registeredDocTypes = [];\r\n docTypes = 2;\r\n titleError:boolean=false\r\n salutations: Array<{ key: string; value: number }> = [];\r\n titleName;\r\n @ViewChild('salutationInput') salutationRef: ElementRef;\r\n salutation: FormControl = new FormControl();\r\n filteredSalutations: Observable;\r\n constructor(service: FormStepperService, private auth: AuthService, private docService: SupportingDocumentsService,\r\n private dialog: MatDialog, private accountService: AccountService) {\r\n super(service);\r\n }\r\n\r\n\r\n @ViewChild('contact') contact: ContactEditComponent;\r\n ngOnInit() {\r\n this.user = this.auth.user;\r\n this.applicant = this.application;\r\n this.registrantDetails = this.applicant.activeForm.returnToRegisterDetail;\r\n console.log(this.registrantDetails);\r\n if (this.user) {\r\n this.registrantFullName = [this.user.title,this.user.forenames, this.user.middleName, this.user.surname].filter(Boolean).join(' ');\r\n }\r\n if (this.application.activeForm.attachments.length > 0) {\r\n let attachment = this.application.activeForm.attachments.find( attachement => attachement.type === AttachmentType.OfficialDocummentConfirmingNameChange); \r\n if(attachment) {\r\n this.attachments[AttachmentType.OfficialDocummentConfirmingNameChange] = [attachment];\r\n }\r\n } \r\n if(this.registrantDetails.title && this.registrantDetails.title.name) {\r\n this.salutation.setValue(this.registrantDetails.title.name);\r\n this.titleName = this.registrantDetails.title.name;\r\n }\r\n this.loadSalutations();\r\n }\r\n load() {\r\n if (this.viewReady) {\r\n this.ready$.next(true);\r\n }\r\n }\r\n loadSalutations() {\r\n this.accountService.getSalutations().subscribe(data => {\r\n for (const key in data) {\r\n this.salutations.push({ key, value: data[key] });\r\n }\r\n this.filteredSalutations = this.salutation.valueChanges\r\n .pipe(\r\n startWith(''),\r\n map(val => this.filter(val))\r\n );\r\n\r\n this.salutation.valueChanges.subscribe(value => {\r\n if (!value) {\r\n return false;\r\n } else {\r\n const selected = this.salutations.filter(item => item.key.toLowerCase() === value.toLowerCase());\r\n\r\n let newValue = { name: value, id: 981360000 };\r\n if (selected.length) {\r\n newValue = { name: selected[0].key, id: selected[0].value };\r\n }\r\n if (newValue.name !== this.registrantDetails.title.name) {\r\n this.registrantDetails.title = newValue;\r\n this.propagateChange(this.registrantDetails);\r\n }\r\n }\r\n });\r\n });\r\n\r\n }\r\n filter(val: string): { key: string; value: number }[] {\r\n return this.salutations.filter(option =>\r\n option.key.toLowerCase().indexOf(val.toLowerCase()) === 0);\r\n }\r\n\r\n propagateChange = (model: any) => { };\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.ready$.next(true);\r\n this.viewReady = true;\r\n });\r\n }\r\n\r\n update() {\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n onRegistered(type: AttachmentType) {\r\n this.registeredDocTypes.push(type);\r\n if (this.registeredDocTypes.length === this.docTypes) {\r\n setTimeout(() => {\r\n this.viewReady = true;\r\n this.ready$.next(true);\r\n });\r\n }\r\n }\r\n\r\n\r\n onUploaded($event) {\r\n this.attachments[$event.type] = $event.uploads;\r\n $event.uploads.forEach(upload => upload.type = $event.type);\r\n this.updateApplication();\r\n }\r\n\r\n get getIndexOfDocummentConfirmingNameChange() {\r\n let index = -1;\r\n if(this.application.activeForm.attachments && this.application.activeForm.attachments.length > 0) {\r\n index = this.application.activeForm.attachments.findIndex(item => item.type === AttachmentType.OfficialDocummentConfirmingNameChange);\r\n } \r\n return index;\r\n }\r\n\r\n updateApplication() { \r\n let index = this.getIndexOfDocummentConfirmingNameChange;\r\n if(index >= 0) {\r\n this.application.activeForm.attachments.splice(index,1);\r\n }\r\n if(this.attachments[AttachmentType.OfficialDocummentConfirmingNameChange].length > 0) {\r\n this.application.activeForm.attachments.push(this.attachments[AttachmentType.OfficialDocummentConfirmingNameChange][0]);\r\n }\r\n this.validate();\r\n this.makeDirty();\r\n }\r\n\r\n onTitleChange(event) {\r\n let selected, value;\r\n this.titleError=false;\r\n if(event.target.value && event.target.value.trim().length > 0) {\r\n selected = this.salutations.filter(item =>item.key.toLowerCase() == event.target.value.toLowerCase()); \r\n selected.length > 0 ? value = { name: selected[0].key, id: selected[0].value } : this.titleError=true;\r\n } else {\r\n value = { name: '', id: '' };\r\n } \r\n this.registrantDetails.title = value;\r\n this.propagate();\r\n }\r\n\r\n updateAttachment() {\r\n if(this.registrantDetails.confirmUserNameChange) {\r\n if(this.getIndexOfDocummentConfirmingNameChange >= 0) {\r\n this.attachments = [];\r\n this.application.activeForm.attachments.splice(this.getIndexOfDocummentConfirmingNameChange,1);\r\n }\r\n }\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n const confirmNameChange = this.registrantDetails.confirmUserNameChange;\r\n this.hasTitle = !!this.registrantDetails.title && !!this.registrantDetails.title.name && !!this.registrantDetails.title.name.trim().length;\r\n this.hasNewName = !!this.registrantDetails.forenames && !!this.registrantDetails.surname;\r\n \r\n if(confirmNameChange === null || confirmNameChange === undefined) {\r\n messages.push('Please confirm the name you wish to register with');\r\n }\r\n\r\n if (confirmNameChange === false) {\r\n\r\n if (this.hasTitle === null || this.hasTitle === false) {\r\n messages.push('You haven\\'t entered a title');\r\n }\r\n if (this.hasNewName === null || this.hasNewName === false ) {\r\n messages.push('You haven\\'t entered changed name');\r\n }\r\n \r\n if (this.docService.validate().length) {\r\n messages.push(this.docService.validate());\r\n } else {\r\n if(this.registrantDetails.confirmUserNameChange === false && this.getIndexOfDocummentConfirmingNameChange < 0) {\r\n messages.push(\"You haven't uploaded your image of official document confirming name change\");\r\n }\r\n }\r\n }\r\n\r\n this.validity$.next({ valid: messages.length==0, messages, touched: this.touched });\r\n }\r\n\r\n propagate() {\r\n this.validate();\r\n }\r\n populateForm() {\r\n this.updateAttachment();\r\n }\r\n}\r\n","\r\n
    \r\n

    \r\n
    \r\n Your details\r\n
    \r\n

    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n \r\n\r\n
    \r\n \r\n Yes\r\n No\r\n \r\n\r\n \r\n

    \r\n This is mandatory\r\n

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

    \r\n Enter your name in the boxes below how you would like it to appear on the register. \r\n You must provide evidence of your official name change, by uploading a copy of an official document \r\n which confirms the change in your name for example, a marriage certificate, civil partnership certificate,\r\n deed poll, decree absolute, or final order.

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n {{ option.key }}\r\n \r\n \r\n \r\n \r\n \r\n

    \r\n This is mandatory\r\n

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

    \r\n Please select a valid 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 This is mandatory\r\n

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

    \r\n This is mandatory\r\n

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

    \r\n This is mandatory\r\n

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

    \r\n
    \r\n Contact details\r\n
    \r\n

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

    \r\n If your contact details are incorrect, update them in the 'Account' tab.\r\n

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

    \r\n
    \r\n Home address\r\n
    \r\n

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

    \r\n If your address details are incorrect, update them in the 'Account' tab.\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, forwardRef, Input, OnInit, ViewChild, ChangeDetectorRef } from '@angular/core';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { ReturnToRegisterStep } from '../../../../registration/return-to-register/model/ReturnToRegisterStep';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { UploadType } from '../../../../shared/model/UploadType';\r\nimport { AttachmentType } from '../../../../shared/model/AttachmentType';\r\nimport utils from '../../../../shared/service/utils';\r\nimport { ReturnToRegisterApplication } from '../../model/ReturnToRegister';\r\nimport { EnglishQualificationType, RegistrationDetails, RegistrationRoute, ReturnToRegisterDetails } from '../../model/ReturnToRegisterDetails';\r\nimport { RegistrantStatus } from '../../../model/RegistrantStatus';\r\nimport { AnnotationType } from '../../../../registration/model/AnnotationType';\r\nimport { FileUploadComponent } from '../../../../shared/fileUpload.component';\r\n\r\n\r\n@Component({\r\n selector: 'app-registration-details',\r\n templateUrl: './registration-details.component.html',\r\n styleUrls: ['./registration-details.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => RegistrationDetailsComponent)\r\n } \r\n ]\r\n})\r\nexport class RegistrationDetailsComponent extends FormStepComponent implements OnInit {\r\n title = 'Details of previous registration';\r\n @Input() application : ReturnToRegisterApplication;\r\n @Input() touched = false;\r\n stepId = ReturnToRegisterStep.RegistrationDetails;\r\n @ViewChild('ielts') ieltsFileUpload : FileUploadComponent;\r\n @ViewChild('employerRef') employerRefFileUpload : FileUploadComponent;\r\n @ViewChild(FileUploadComponent) fileUploadComponent;\r\n details: RegistrationDetails;\r\n returnToRegisterDetails: ReturnToRegisterDetails;\r\n attachments = [];\r\n IELTSAttachment = [];\r\n employerRefAttachment = []; \r\n registrationStatus;\r\n isEnglishCertificateRequired = true;\r\n englishQualificationType;\r\n qualificationTypes = [\r\n {name: 'IELTS certificate', val: EnglishQualificationType.IELTS},\r\n {name: 'OET candidate number', val:EnglishQualificationType.OET},\r\n {name: 'Employer reference', val:EnglishQualificationType.EmployerReference}\r\n ];\r\n previousAnnotation;\r\n registrationRoute;\r\n deleteUrl = 'v1.0/pharmacistform/attachment';\r\n attachmentType = AttachmentType;\r\n type: AttachmentType;\r\n uploadType = UploadType.ReturnToRegisterSupportingDocuments;\r\n sessionId = utils.guid();\r\n valid = true;\r\n deleteUrl1;\r\n deleteUrl2;\r\n\r\n constructor(private formStepperService: FormStepperService,\r\n private cd: ChangeDetectorRef) { \r\n super(formStepperService);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.details = this.application.personalDetails.registration;\r\n this.returnToRegisterDetails = this.application.form.returnToRegisterDetail;\r\n if(this.details) {\r\n this.registrationStatus = this.details.registrationStatus ? RegistrantStatus[this.details.registrationStatus] : '-'; \r\n this.registrationRoute = this.details.registrationRoute ? RegistrationRoute[this.details.registrationRoute] : '-' ;\r\n this.setAnnotation(); \r\n this.isEnglishCertificateRequired = !!this.details.isRequiredEnglishCertificate;\r\n }\r\n if(this.returnToRegisterDetails) {\r\n this.englishQualificationType = this.returnToRegisterDetails.englishCertificateOption;\r\n }\r\n this.attachments = this.application.form.attachments ? this.application.form.attachments : [];\r\n this.getAttachment(); \r\n }\r\n\r\n setAnnotation() {\r\n if(this.details.independentPrescriberStatus) {\r\n if(this.details.independentPrescriberStatus === AnnotationType.IndependentAndSupplementary || \r\n this.details.independentPrescriberStatus === AnnotationType.Independent) {\r\n this.previousAnnotation = 'Independent prescriber'\r\n }\r\n if(this.details.independentPrescriberStatus === AnnotationType.Supplementary) {\r\n this.previousAnnotation = 'Supplementary prescriber'\r\n }\r\n }\r\n else {\r\n this.previousAnnotation = '-';\r\n }\r\n }\r\n\r\n getAttachment() { \r\n if(this.application.form && this.application.form.attachments) {\r\n if(this.returnToRegisterDetails.englishCertificateOption && \r\n !this.isEnglishCertificationTypeOET) {\r\n this.attachments.forEach((item, index) => {\r\n if(item.type === AttachmentType.IELTSCertificate) {\r\n this.deleteUrl1 = item.deleteUrl;\r\n this.IELTSAttachment.push(item); \r\n }\r\n if(item.type === AttachmentType.EmployerReferenceForEnglishCertificate) {\r\n this.deleteUrl2 = item.deleteUrl;\r\n this.employerRefAttachment.push(item); \r\n } \r\n });\r\n }\r\n }\r\n }\r\n\r\n onLangQualTypeChange(val) {\r\n this.application.form.returnToRegisterDetail.englishCertificateOption = val; \r\n this.propagate(); \r\n }\r\n\r\n get isEnglishCertificationTypeOET() {\r\n return this.englishQualificationType === EnglishQualificationType.OET;\r\n }\r\n\r\n get isEnglishCertificationTypeIELTS() {\r\n return this.englishQualificationType === EnglishQualificationType.IELTS;\r\n }\r\n\r\n get isEnglishCertificationTypeReference() {\r\n return this.englishQualificationType === EnglishQualificationType.EmployerReference;\r\n }\r\n\r\n get getIELTSCertificate() {\r\n return this.IELTSAttachment[0] ? this.IELTSAttachment[0] : null;\r\n }\r\n\r\n get getEmployerRefDoc() {\r\n return this.employerRefAttachment[0] ? this.employerRefAttachment[0] : null;\r\n }\r\n\r\n populateForm() {\r\n this.updateAttachments(); \r\n }\r\n\r\n updateAttachments() {\r\n let index, type, doc;\r\n if(this.isEnglishCertificationTypeOET) {\r\n return;\r\n }\r\n if(this.isEnglishCertificationTypeIELTS) { \r\n type = AttachmentType.IELTSCertificate;\r\n doc = this.getIELTSCertificate;\r\n }\r\n if(this.isEnglishCertificationTypeReference) { \r\n type = AttachmentType.EmployerReferenceForEnglishCertificate; \r\n doc = this.getEmployerRefDoc; \r\n }\r\n index = this.attachments.findIndex(item => item.type === AttachmentType.IELTSCertificate);\r\n if( index >= 0) {\r\n this.attachments.splice(index, 1);\r\n }\r\n index = this.attachments.findIndex(item => item.type === AttachmentType.EmployerReferenceForEnglishCertificate);\r\n if( index >= 0) {\r\n this.attachments.splice(index, 1);\r\n }\r\n if(doc) {\r\n this.attachments.push(doc);\r\n } \r\n }\r\n\r\n validate() {\r\n let messages = [];\r\n\r\n if(this.isEnglishCertificateRequired) {\r\n if(this.englishQualificationType) {\r\n if(this.englishQualificationType === EnglishQualificationType.OET) {\r\n if(!this.returnToRegisterDetails.oetCandidateNo) {\r\n messages.push('Please enter OET candidate number');\r\n }\r\n if(!this.returnToRegisterDetails.confirmAccessOETPortal) {\r\n messages.push('Please select the checkbox');\r\n }\r\n }\r\n\r\n if(this.englishQualificationType !== EnglishQualificationType.OET) {\r\n if((this.englishQualificationType === EnglishQualificationType.IELTS && (!this.IELTSAttachment || this.IELTSAttachment.length === 0)) ||\r\n (this.englishQualificationType === EnglishQualificationType.EmployerReference && (!this.employerRefAttachment || this.employerRefAttachment.length === 0)) ){\r\n messages.push('Please upload a document as evidence of your English language competency');\r\n }\r\n }\r\n } else {\r\n messages.push('Please select from either: IELTS certification, OET candidate number or Employer reference'); \r\n }\r\n } \r\n this.valid = messages.length === 0;\r\n this.validity$.next({ valid: this.valid, messages , touched: this.touched });\r\n }\r\n\r\n getDocIndex(arr, type): number {\r\n let index = arr.findIndex(item => item.type);\r\n return index;\r\n }\r\n\r\n onDocUpload(val) {\r\n this.IELTSAttachment.splice(0, this.IELTSAttachment.length);\r\n this.employerRefAttachment.splice(0, this.employerRefAttachment.length);\r\n if(!val || val.length === 0) {\r\n return;\r\n }\r\n if(this.isEnglishCertificationTypeIELTS) { \r\n this.IELTSAttachment.push(val[0]);\r\n this.IELTSAttachment[0].type = AttachmentType.IELTSCertificate;\r\n this.deleteUrl1 = this.IELTSAttachment[0].deleteUrl; \r\n }\r\n if(this.isEnglishCertificationTypeReference) { \r\n this.employerRefAttachment.push(val[0]);\r\n this.employerRefAttachment[0].type = AttachmentType.EmployerReferenceForEnglishCertificate; \r\n this.deleteUrl2 = this.employerRefAttachment[0].deleteUrl;\r\n }\r\n this.application.form.returnToRegisterDetail.oetCandidateNo = null;\r\n this.application.form.returnToRegisterDetail.confirmAccessOETPortal = null; \r\n this.cd.detectChanges();\r\n this.validate();\r\n }\r\n\r\n onDocDelete(val) {\r\n if(this.isEnglishCertificationTypeIELTS) {\r\n this.IELTSAttachment.splice(0, this.IELTSAttachment.length);\r\n }\r\n if(this.isEnglishCertificationTypeReference) {\r\n this.employerRefAttachment.splice(0, this.employerRefAttachment.length);\r\n } \r\n }\r\n\r\n onOETNumberChange(event) {\r\n if(event.target.value && event.target.value.trim().length > 0) {\r\n this.IELTSAttachment.splice(0, this.IELTSAttachment.length);\r\n this.employerRefAttachment.splice(0, this.employerRefAttachment.length);\r\n }\r\n }\r\n\r\n propagate() { \r\n this.validate();\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 \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n

    English language qualification

    \r\n
    \r\n We need to check that the pharmacy professionals returning or joining the register have sufficient English language competence to practise safely and effectively. \r\n If you first joined the register before 1 November 2016, or have not provided evidence before, you will need to include it with this application. \r\n You can find out more about this requirement on our website.\r\n\r\n

    \r\n You can provide evidence by:\r\n \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n {{type.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 I confirm that I have given the General Pharmaceutical Council access to my \r\n English language test results in the OET website.\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, forwardRef, Input, OnInit } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { ReturnToRegisterApplication } from '../../model/ReturnToRegister';\r\nimport { ReturnToRegisterStep } from '../../model/ReturnToRegisterStep';\r\n\r\n\r\n@Component({\r\n selector: 'app-revalidation-record-outstanding',\r\n templateUrl: './revalidation-record-outstanding.component.html',\r\n styleUrls: ['./revalidation-record-outstanding.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => RevalidationRecordOutstandingComponent)\r\n } \r\n ]\r\n})\r\nexport class RevalidationRecordOutstandingComponent extends FormStepComponent implements OnInit {\r\n\r\n stepId = ReturnToRegisterStep.RevalidationRecordOutstanding;\r\n title = 'Revalidation record outstanding';\r\n @Input() application : ReturnToRegisterApplication;\r\n hasAcknowledged;\r\n returnToRegisterDetail;\r\n\r\n constructor(private formStepperService: FormStepperService) {\r\n super(formStepperService);\r\n }\r\n\r\n ngOnInit(): void {\r\n if(this.application.activeForm) {\r\n this.returnToRegisterDetail = this.application.activeForm.returnToRegisterDetail;\r\n } \r\n }\r\n\r\n populateForm() {\r\n \r\n }\r\n\r\n validate() {\r\n let valid, messages = [];\r\n \r\n if(!this.returnToRegisterDetail.hasConfirmedRevalidationSubmission) {\r\n messages.push('Please select the checkbox');\r\n }\r\n valid = messages.length === 0;\r\n\r\n this.validity$.next({ valid: valid, messages , touched: this.touched });\r\n }\r\n\r\n}\r\n","\r\n

    {{title}}

    \r\n

    \r\n Our records show that you did not submit a full revalidation record for your last registration year. \r\n You will need to complete and submit your revalidation record within 28 days of the date that you submit \r\n this application for restoration, otherwise we will not process this application.\r\n
    \r\n To complete your revalidation please click on the ‘Revalidation’ tab and follow the instructions \r\n shown after you have submitted this application. \r\n If you have a valid reason for not submitting a full revalidation record for your restoration, please \r\n contact us. \r\n

    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n I acknowledge that I have read and understood that I must submit a full \r\n revalidation record before my application can be processed, or that I have \r\n recently contacted the GPhC about my revalidation record.\r\n \r\n
    \r\n
    \r\n
    \r\n
    ","import { Input, Component, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport { RegistrantStatus } from '../../../../registration/model/RegistrantStatus';\r\nimport { ReturnToRegisterService } from '../../../../core/service/returnToRegister.service';\r\nimport { ReturnToRegisterApplication } from '../../model/ReturnToRegister';\r\nimport { EnglishQualificationType, RegistrationRoute } from '../../model/ReturnToRegisterDetails';\r\nimport { ReturnToRegisterStep, ReturnToRegisterStepWithoutRevalidationOutstanding } from '../../model/ReturnToRegisterStep';\r\n\r\n@Component({\r\n selector: 'app-rtr-application-review',\r\n templateUrl: './rtrApplicationReview.component.html',\r\n styleUrls: ['./rtrApplicationReview.scss']\r\n}) export class RtrApplicationReviewComponent implements OnInit {\r\n\r\n applicant;\r\n @Input() application: ReturnToRegisterApplication;\r\n @Input() readonly = false;\r\n @Input() showEdi = true;\r\n @Input() formId;\r\n @Input() pastApplication = false;\r\n rtrApplicationStep ;\r\n registrantFullName: string;\r\n \r\n registration;\r\n contactType;\r\n independentPrescriberStatus;\r\n isRequiredEnglishCertificate=false\r\n isRequiredRevalidationSubmission=false\r\n registrationNumber;\r\n registrationRoute;\r\n registrationStatus;\r\n voluntaryRemovalReason;\r\n \r\n letterOfGoodStanding\r\n registrationNumberwithTheOrganisation\r\n hasRegistered=false\r\n isRequested=false\r\n regulatoryBody=\"\"\r\n\r\n q8Title=\"Question 8\";\r\n q9Title=\"Question 9\";\r\n \r\n englishCertificateOption;\r\n \r\n constructor(private rtrService: ReturnToRegisterService) {\r\n \r\n }\r\n\r\n @Output() navigate = new EventEmitter();\r\n ngOnInit() {\r\n this.applicant = this.application.personalDetails;\r\n this.registration=this.application.personalDetails.registration;\r\n this.letterOfGoodStanding=this.application.activeForm.letterOfGoodStanding\r\n\r\n if(this.registration){\r\n this.registrationNumber = this.registration.registrationNumber; \r\n this.registrationRoute = RegistrationRoute[this.registration.registrationRoute] || \"-\";\r\n this.registrationStatus =RegistrantStatus[this.registration.registrationStatus] || \"-\";\r\n this.voluntaryRemovalReason =this.registration.voluntaryRemovalReason || \"-\";\r\n }\r\n\r\n if(this.letterOfGoodStanding){\r\n this.hasRegistered=this.letterOfGoodStanding.hasRegistered\r\n this.isRequested=this.letterOfGoodStanding.isRequested\r\n this.regulatoryBody=this.letterOfGoodStanding.regulatoryBody\r\n this.registrationNumberwithTheOrganisation= this.letterOfGoodStanding.registrationNumber\r\n }\r\n\r\n this.rtrApplicationStep=this.application.personalDetails.registration.isRequiredRevalidationSubmission ? ReturnToRegisterStep : ReturnToRegisterStepWithoutRevalidationOutstanding;\r\n\r\n if (this.applicant) {\r\n this.registrantFullName = [this.applicant?.title?.name,this.applicant.forenames, this.applicant.middleName, this.applicant.surname].filter(Boolean).join(' ');\r\n }\r\n \r\n this.englishCertificateOption=EnglishQualificationType[this.application.activeForm?.returnToRegisterDetail?.englishCertificateOption] ||\"-\";\r\n \r\n \r\n }\r\n\r\n get isRouteEEA(): boolean {\r\n return this.registration.registrationRoute === RegistrationRoute.EEA;\r\n }\r\n\r\n\r\n goToStep(stepId) { \r\n this.navigate.emit(stepId);\r\n }\r\n}\r\n","
    \r\n
    \r\n

    \r\n
    Personal details
    \r\n \r\n \r\n

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

    \r\n
    Contact details
    \r\n \r\n \r\n

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

    \r\n
    Home address
    \r\n \r\n

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

    \r\n
    Changing your registered name
    \r\n \r\n \r\n

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    Yes
    \r\n
    No
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n

    \r\n
    Details of previous registration
    \r\n \r\n \r\n

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

    \r\n
    Equality and diversity
    \r\n \r\n \r\n

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

    \r\n
    Outstanding revalidation record
    \r\n \r\n \r\n

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

    \r\n
    Letter of good standing
    \r\n \r\n \r\n

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    No\r\n
    \r\n
    Yes
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n

    \r\n
    Fitness to practise declarations (1)
    \r\n \r\n \r\n

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

    \r\n
    Fitness to practise declarations (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
    No
    \r\n
    Yes
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    No
    \r\n
    Yes
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    \r\n
    Declarations on joining the register
    \r\n \r\n \r\n

    \r\n
    \r\n
    \r\n I have read and understand the declarations on joining the register\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    \r\n
    Application Declarations
    \r\n \r\n \r\n

    \r\n
    \r\n
    \r\n I have read and understand the application declaration\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    \r\n
    Supporting documents
    \r\n \r\n

    \r\n \r\n \r\n
    \r\n
    ","import { Input, Component, forwardRef, OnInit, EventEmitter, Output, AfterViewInit } from '@angular/core';\r\nimport { ReturnToRegisterService } from '../../../../core/service/returnToRegister.service';\r\nimport { FormStepComponent } from '../../../..//shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../..//shared/formStepper/formStepper.service';\r\nimport { ReturnToRegisterApplication } from '../../model/ReturnToRegister';\r\nimport { ReturnToRegisterStep } from '../../model/ReturnToRegisterStep';\r\n\r\n\r\n@Component({\r\n selector: 'app-rtr-review-step',\r\n templateUrl: './rtrReviewStep.component.html',\r\n styleUrls: ['./rtrReviewStep.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => RtrReviewStepComponent)\r\n }\r\n ]\r\n}) export class RtrReviewStepComponent extends FormStepComponent implements OnInit,AfterViewInit {\r\n title;\r\n @Input() stepId = ReturnToRegisterStep.Review; \r\n applicant:ReturnToRegisterApplication;\r\n returnToRegisterStep = ReturnToRegisterStep;\r\n @Input() readonly = false;\r\n //placements: Array;\r\n\r\n constructor(service: FormStepperService, private rtrService: ReturnToRegisterService) {\r\n super(service);\r\n }\r\n\r\n @Output() navigate = new EventEmitter();\r\n\r\n ngOnInit() { \r\n this.title = this.readonly ? 'Final review' : 'Review';\r\n }\r\n\r\n validate() {\r\n this.validity$.next({ valid: true, messages: [], touched: this.touched });\r\n }\r\n\r\n goToStep(stepId) {\r\n this.navigate.emit(stepId);\r\n }\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.ready$.next(true);\r\n //this.viewReady = true;\r\n });\r\n }\r\n\r\n\r\n load() {\r\n this.ready$.next(true);\r\n }\r\n\r\n populateForm() { }\r\n\r\n}\r\n","\r\n

    Review your application

    \r\n\r\n\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 { Application } from '../../../prereg/model/Application';\r\nimport { ApplicationStatus } from '../../../prereg/model/ApplicationStatus';\r\nimport { ApplicationForm } from '../../../prereg/model/ApplicationForm';\r\nimport { Applicant } from '../../../account/model/Applicant';\r\nimport { RegistrantStatus } from '../../model/RegistrantStatus';\r\nimport { Input } from '@angular/core';\r\nimport { VoluntaryRemovalApplicationForm } from './VoluntaryRemovalApplicationForm';\r\nimport { CollectionMethod } from '../../../payment/model/CollectionMethod';\r\n\r\nexport class VoluntaryRemovalApplication implements Application {\r\n trainee: Applicant;\r\n\r\n forms: Array = [];\r\n status: ApplicationStatus;\r\n activeForm: VoluntaryRemovalApplicationForm;\r\n pastApplications: Array;\r\n form: VoluntaryRemovalApplicationForm;\r\n pendingFee: number;\r\n outstandingPayments: Array<{paymentDescription: string, collectionMethod: CollectionMethod,\r\n paymentDate: Date, paymentAmount: number }>;\r\n\r\n constructor(data, registrantStatus: RegistrantStatus) {\r\n Object.assign(this, data);\r\n this.activeForm = new VoluntaryRemovalApplicationForm(this.form, registrantStatus);\r\n }\r\n}\r\n","import { ApplicationForm } from '../../../technician/model/ApplicationForm';\r\nimport { EqualityDiversity } from '../../../account/model/EqualityDiversity';\r\nimport { ApplicationFormMode } from '../../../technician/model/ApplicationFormMode';\r\nimport { ApplicationStatus } from '../../../technician/model/ApplicationStatus';\r\nimport { VoluntaryRemovalApplicationStep } from './VoluntaryRemovalApplicationStep';\r\nimport { FormAnswer } from '../../../dynamic/model/FormAnswer';\r\nimport { FileUpload } from '../../../shared/model/FileUpload';\r\nimport { RegistrantStatus } from '../../model/RegistrantStatus';\r\nimport { VoluntaryRemovalDetails } from './VoluntaryRemovalDetails';\r\n\r\nexport class VoluntaryRemovalApplicationForm implements ApplicationForm {\r\n id: string;\r\n formStatus: ApplicationStatus;\r\n declarations: Array<{ dynamicFormId: string, answers: Array }>;\r\n attachments: Array = [];\r\n isOverallDeclarationConfirmed: boolean;\r\n step: VoluntaryRemovalApplicationStep;\r\n minStep: VoluntaryRemovalApplicationStep;\r\n mode: ApplicationFormMode;\r\n\r\n equalityDiversity: EqualityDiversity;\r\n\r\n applicationFees: number;\r\n feeDescription: string;\r\n collectionMethod: string;\r\n dueDate: Date;\r\n amount: number;\r\n outStandingFee: number;\r\n ftpDeclarations: Array<{ dynamicFormId: string, answers: Array }>;\r\n appDeclaration: { isQ1Confirmed: boolean, isQ2Confirmed: boolean };\r\n\r\n voluntaryRemovalDetails: VoluntaryRemovalDetails;\r\n\r\n constructor(data, registrantStatus: RegistrantStatus) {\r\n if (data) {\r\n Object.assign(this, data);\r\n }\r\n }\r\n\r\n clearApplicationDeclarations() {\r\n let obj = Object.keys(this.appDeclaration).forEach((i) => this.appDeclaration[i] = null);\r\n return obj;\r\n }\r\n\r\n}\r\n\r\n\r\n","export enum VoluntaryRemovalApplicationStep {\r\n DateReasonForRemovalRequired = 1,\r\n FtPDeclarations,\r\n Declarations,\r\n EDIDetails,\r\n Review,\r\n Payment,\r\n Submission\r\n}","import { AfterViewInit, Component, forwardRef, Input, OnDestroy, OnInit, ViewChild } from '@angular/core';\r\nimport { FormValidationService } from '../../../../dynamic/service/formValidationService';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { VoluntaryRemovalApplication } from '../../model/VoluntaryRemovalApplication';\r\nimport { VoluntaryRemovalApplicationStep } from '../../model/VoluntaryRemovalApplicationStep';\r\nimport { VrFtpDeclarationStepComponent } from '../vr-ftp-declaration-step/vr-ftp-declaration-step.component';\r\nimport { VoluntaryRemovalService } from '../../../../core/service/voluntaryRemoval.service';\r\nimport { Observable, Subject, Subscription } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n@Component({\r\n selector: 'app-vr-application-declarations-step',\r\n templateUrl: './vr-application-declarations-step.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => VrApplicationDeclarationsStepComponent)\r\n },\r\n FormValidationService, VrFtpDeclarationStepComponent\r\n ]\r\n})\r\nexport class VrApplicationDeclarationsStepComponent extends FormStepComponent\r\nimplements OnInit, AfterViewInit, OnDestroy {\r\n\r\n\r\nconstructor(service: FormStepperService, private vrService: VoluntaryRemovalService) {\r\n super(service);\r\n this.getFtpAnswers();\r\n}\r\nviewReady = false;\r\n\r\n@Input() application: VoluntaryRemovalApplication;\r\n\r\nsaving = false;\r\ntitle = 'Application declarations';\r\nstepId = VoluntaryRemovalApplicationStep.Declarations;\r\nshowDetailsHelp = false;\r\nisNoToAllFtpDeclarations = false;\r\nisPartlyNotifiedYes = false;\r\nnoticedByGphc = false;\r\ndata;\r\npublic subscription: Subscription;\r\n@ViewChild(VrFtpDeclarationStepComponent) ftp: VrFtpDeclarationStepComponent;\r\nngOnInit() {\r\n this.vrService.sendFtpDeclarationAnswers(this.application.activeForm.appDeclaration.isQ2Confirmed);\r\n }\r\n\r\ngetFtpAnswers() {\r\n this.subscription = this.vrService.data$.subscribe(response => {\r\n this.data = response;\r\n if (this.data === true ) {\r\n this.noticedByGphc = false;\r\n this.application.activeForm.clearApplicationDeclarations();\r\n this.isNoToAllFtpDeclarations = false;\r\n this.isPartlyNotifiedYes = true;\r\n } else if ( this.data === false) {\r\n this.isPartlyNotifiedYes = false;\r\n this.noticedByGphc = true;\r\n this.isNoToAllFtpDeclarations = false;\r\n this.application.activeForm.clearApplicationDeclarations();\r\n } else if (this.data === null) {\r\n this.isPartlyNotifiedYes = false;\r\n this.noticedByGphc = false;\r\n this.isNoToAllFtpDeclarations = true;\r\n this.application.activeForm.clearApplicationDeclarations();\r\n }\r\n });\r\n}\r\n\r\nupdate() {\r\n this.makeDirty();\r\n this.validate();\r\n}\r\n\r\nload() {\r\n if (this.viewReady) {\r\n this.ready$.next(true);\r\n }\r\n}\r\n\r\nngAfterViewInit() {\r\n setTimeout(() => {\r\n this.ready$.next(true);\r\n this.viewReady = true;\r\n });\r\n}\r\n\r\nvalidate() {\r\n const {\r\n isQ1Confirmed, isQ2Confirmed\r\n } = this.application.activeForm.appDeclaration;\r\n\r\n const valid = isQ1Confirmed && isQ2Confirmed;\r\n const messages = [];\r\n\r\n if (!isQ1Confirmed) {\r\n messages.push('You have not confirmed the 1st declaration');\r\n }\r\n if (!isQ2Confirmed) {\r\n messages.push('You have not confirmed the 2nd declaration');\r\n }\r\n if (!valid) {\r\n messages.push('You have to complete this section first');\r\n }\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n}\r\n\r\npopulateForm() { }\r\n\r\nngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n}\r\n}\r\n","\r\n
    \r\n

    \r\n
    \r\n Application declarations\r\n
    \r\n \r\n

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

    \r\n We will use this information to assess if any concerns about your fitness to practise mean that it would\r\n not be in the public interest to remove your entry from the public register. Further information can be found on our website.\r\n

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

    \r\n \r\n I declare that I am applying for voluntary removal from the register. The information I have\r\n provided for this application is complete, true and accurate.\r\n \r\n \r\n

    \r\n

    \r\n Please select this checkbox\r\n

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

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

    \r\n \r\n I have answered 'no' to all of the declarations of fitness to practise and I am not aware of any\r\n action that I taken, or have not taken, which would be likely to result in an allegation that my\r\n fitness to practise is impaired.\r\n \r\n \r\n

    \r\n

    \r\n Please select this checkbox\r\n

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

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

    \r\n \r\n I have answered 'yes' to one or more of the declarations of fitness to practise and have previously\r\n notified the GPhC or RPS of this by filling in a something to declare form. I am not aware of any\r\n action that I have taken, or have not taken, which would be likely to result in an allegation that\r\n my fitness to practise is impaired. If it is relevant to my application, I request that the\r\n registrar considers my application for voluntary removal from the register in accordance with Rule\r\n 14(6)(b) of the GPhC Registration Rules 2010.\r\n \r\n \r\n

    \r\n

    \r\n Please select this checkbox\r\n

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

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

    \r\n \r\n I have answered 'yes' to one or more of the declarations of fitness to practise and am aware that I\r\n must provide more information about this to the GPhC, by submitting a something to declare form\r\n within seven days of submitting this application. I am not aware of any action that I have taken, or\r\n have not taken, which would be likely to result in an allegation that my fitness to practise is\r\n impaired. If it is relevant to my application, I request that the registrar considers my application\r\n for voluntary removal from the register in accordance with Rule 14(6)(b) of the GPhC Registration\r\n Rules 2010.\r\n \r\n \r\n

    \r\n

    \r\n Please select this checkbox\r\n

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

    \r\n
    \r\n\r\n
    ","import { Component, EventEmitter, forwardRef, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { LayoutService } from '../../../../core/service/layout.service';\r\nimport { VoluntaryRemovalService } from '../../../../core/service/voluntaryRemoval.service';\r\nimport { ApplicationStatus } from '../../../../technician/model/ApplicationStatus';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { VoluntaryRemovalApplicationStep } from '../../model/VoluntaryRemovalApplicationStep';\r\nimport { ConfirmDialogComponent } from '../../../../shared/confirmDialog.component';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { FormStepperComponent } from '../../../../shared/formStepper/formStepper.component';\r\nimport { VoluntaryRemovalDetails } from '../../model/VoluntaryRemovalDetails';\r\nimport { VoluntaryRemovalApplication } from '../../model/VoluntaryRemovalApplication';\r\n\r\n@Component({\r\n selector: 'app-vr-application-review-step',\r\n templateUrl: './vr-application-review-step.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => VrApplicationReviewStepComponent)\r\n }\r\n ]\r\n})\r\nexport class VrApplicationReviewStepComponent extends FormStepComponent implements OnInit {\r\n @Input() stepTitle;\r\n @Input() readonly = false;\r\n @Input() SIdetails: {\r\n endDate: string;\r\n ownerName: string;\r\n ownerNumber: string;\r\n startDate: string;\r\n }\r\n\r\n title = 'Application review';\r\n stepId = VoluntaryRemovalApplicationStep.Review;\r\n VoluntaryRemovalApplicationStep = VoluntaryRemovalApplicationStep;\r\n submitting;\r\n serverErrors;\r\n @ViewChild(FormStepperComponent) formStepper;\r\n application: VoluntaryRemovalApplication;\r\n voluntaryRemovalDetails: VoluntaryRemovalDetails;\r\n constructor(formStpperService: FormStepperService, private vrService: VoluntaryRemovalService,\r\n private router: Router, private layout: LayoutService, private dialog: MatDialog) {\r\n super(formStpperService);\r\n }\r\n\r\n @Output() navigate = new EventEmitter();\r\n ngOnInit(): void {\r\n this.voluntaryRemovalDetails = this.application.activeForm.voluntaryRemovalDetails;\r\n }\r\n\r\n validate() {\r\n let isDateValid = true;\r\n let messages = [];\r\n\r\n if(this.voluntaryRemovalDetails && this.voluntaryRemovalDetails.dateOfRegistryRemoval) {\r\n if(new Date(this.voluntaryRemovalDetails.dateOfRegistryRemoval).setHours(0,0,0,0) <= new Date().setHours(0,0,0,0)) {\r\n isDateValid = false;\r\n }\r\n }\r\n\r\n if(!isDateValid) {\r\n messages.push(\"The date of removal from the register must be greater than today's date, please select a valid date.\");\r\n }\r\n\r\n this.validity$.next({ valid: isDateValid, messages: messages, touched: this.touched });\r\n }\r\n\r\n populateForm() {}\r\n\r\n goToStep(stepId) {\r\n this.navigate.emit(stepId);\r\n }\r\n\r\n load() {\r\n this.ready$.next(true);\r\n }\r\n\r\n beforeNext() {\r\n if (!this.vrService.isPaymentPending) {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n disableClose: false,\r\n data: {\r\n title: `Form submission confirmation`,\r\n confirmText: 'Yes',\r\n cancelText: 'No',\r\n message: `

    \r\n Are you sure you want to submit voluntary removal application?\r\n

    \r\n `,\r\n confirmProgressReport: false\r\n }\r\n });\r\n dialogRef.afterClosed().subscribe(confirmed => {\r\n if (confirmed) {\r\n this.submit();\r\n }\r\n });\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n}\r\n submit() {\r\n const payload = {\r\n formId: this.application.activeForm.id\r\n };\r\n this.submitting = true;\r\n this.vrService.submitVoluntaryApplicationWithoutDues(payload).subscribe(() => {\r\n this.application.activeForm.formStatus = ApplicationStatus.Submitted;\r\n delete this.vrService.application;\r\n this.layout.setOverlay(false);\r\n this.router.navigate(['/application']).then(() => {\r\n window.location.reload();\r\n });\r\n }, error => {\r\n this.layout.setOverlay(false);\r\n this.serverErrors = error.validationErrors;\r\n this.submitting = false;\r\n });\r\n return false;\r\n }\r\n}\r\n\r\n","\r\n

    Review your application

    \r\n \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 } from '@angular/core';\r\nimport { VoluntaryRemovalApplicationStep } from '../../model/VoluntaryRemovalApplicationStep';\r\n\r\n@Component({\r\n selector: 'app-vr-application-review',\r\n templateUrl: './vr-application-review.component.html',\r\n styleUrls: ['./vr-application-review.component.scss']\r\n})\r\nexport class VrApplicationReviewComponent implements OnInit {\r\n @Input() stepTitle;\r\n @Input() application;\r\n @Input() readonly = false;\r\n @Input() formId;\r\n @Input() SIdetails: {\r\n endDate: string;\r\n ownerName: string;\r\n ownerNumber: string;\r\n startDate: string;\r\n }\r\n\r\n @Output() navigate = new EventEmitter();\r\n\r\n voluntaryRemovalDetails;\r\n VoluntaryRemovalApplicationStep = VoluntaryRemovalApplicationStep; \r\n \r\n ngOnInit(): void {\r\n // this.stepTitle = this.SIdetails ? 'Date removal required, Superintendent (SI) & Reason for removal': \r\n // 'Date removal required & Reason for removal';\r\n this.stepTitle = this.stepTitle ? this.stepTitle :'Removal details';\r\n if(this.application && this.application.activeForm && this.application.activeForm.voluntaryRemovalDetails) {\r\n this.voluntaryRemovalDetails = this.application.activeForm.voluntaryRemovalDetails;\r\n }\r\n }\r\n\r\n constructor() {}\r\n\r\n goToStep(stepId) {\r\n this.navigate.emit(stepId);\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n

    \r\n
    {{stepTitle}}
    \r\n \r\n \r\n

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

    Superintendent

    \r\n\r\n

    You are shown as the superintendent for the pharmacy organisation below. Please make sure\r\n you have advised the owner of the organistaion that you have requested removal from the register, so that\r\n they can make arrangements for a new superintendent.\r\n \r\n
    \r\n You will not be permitted to act as a superintendent after the date \r\n of your removal. The owner will need to nominate a new superintendent and give us their details to continue\r\n to operate legally.\r\n

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

    \r\n
    FtP declarations
    \r\n \r\n \r\n

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

    \r\n
    Application declarations
    \r\n \r\n \r\n

    \r\n
    \r\n
    \r\n I have read and understand the declarations.\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n

    \r\n
    Equality and diversity
    \r\n \r\n \r\n

    \r\n \r\n
    \r\n
    ","import { Component, EventEmitter, forwardRef, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { ApplicationStatus } from '../../../../technician/model/ApplicationStatus';\r\nimport { AuthService } from '../../../../core/service/auth.service';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { VoluntaryRemovalApplication } from '../../model/VoluntaryRemovalApplication';\r\nimport { VoluntaryRemovalApplicationStep } from '../../model/VoluntaryRemovalApplicationStep';\r\nimport { VoluntaryRemovalDetails } from '../../model/VoluntaryRemovalDetails';\r\nimport { VoluntaryRemovalService } from '../../../../core/service/voluntaryRemoval.service';\r\n\r\n@Component({\r\n selector: 'app-vr-date-reason-for-removal-required-step',\r\n templateUrl: './vr-date-reason-for-removal-required-step.component.html',\r\n styleUrls: ['./vr-date-reason-for-removal-required-step.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => VrDateReasonForRemovalRequiredStepComponent)\r\n }\r\n ]\r\n})\r\nexport class VrDateReasonForRemovalRequiredStepComponent extends FormStepComponent implements OnInit {\r\n\r\n @Input() application: VoluntaryRemovalApplication;\r\n @ViewChild('form') form: NgForm;\r\n title;\r\n @Input() SIdetails: {\r\n endDate: string;\r\n ownerName: string;\r\n ownerNumber: string;\r\n startDate: string;\r\n }\r\n @Input() set stepTitle(value: string) {\r\n this.title = value;\r\n };\r\n stepId = VoluntaryRemovalApplicationStep.DateReasonForRemovalRequired;\r\n valid; \r\n minDate = new Date(new Date().setDate(new Date().getDate() + 1));\r\n expiryDate: string;\r\n voluntaryRemovalDetails: VoluntaryRemovalDetails;\r\n @Output() isPendingFeeZero = new EventEmitter(); \r\n\r\n reasons: string[] = [\r\n 'Retirement',\r\n 'Moving abroad',\r\n 'Career break',\r\n 'Health',\r\n 'Maternity/Paternity/Parental leave',\r\n 'Personal',\r\n 'Profession change',\r\n 'Revalidation',\r\n 'Other',\r\n 'Prefer not to say'\r\n ];\r\n\r\n constructor(formStpperService: FormStepperService, private auth: AuthService,\r\n private vrService: VoluntaryRemovalService) { \r\n super(formStpperService);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.expiryDate = this.auth.user.registrant.expiryDate;\r\n this.voluntaryRemovalDetails = this.application.activeForm.voluntaryRemovalDetails;\r\n if(this.voluntaryRemovalDetails) {\r\n this.voluntaryRemovalDetails.dateOfRegistryRemoval = this.voluntaryRemovalDetails.dateOfRegistryRemoval ?\r\n this.voluntaryRemovalDetails.dateOfRegistryRemoval : this.expiryDate;\r\n }\r\n\r\n if(this.application.activeForm.formStatus === ApplicationStatus.NotStarted) {\r\n this.application.activeForm.formStatus = ApplicationStatus.InProgress;\r\n }\r\n }\r\n\r\n validate() {\r\n let messages = [];\r\n let isDateValid = true;\r\n if(this.voluntaryRemovalDetails.dateOfRegistryRemoval && (new Date(this.voluntaryRemovalDetails.dateOfRegistryRemoval).setHours(0,0,0,0) <= new Date().setHours(0,0,0,0))) {\r\n isDateValid = false;\r\n }\r\n\r\n this.valid = !!this.voluntaryRemovalDetails.dateOfRegistryRemoval && isDateValid &&\r\n !!this.voluntaryRemovalDetails.reasonForRemoval;\r\n\r\n if(this.voluntaryRemovalDetails.reasonForRemovalDetails && this.voluntaryRemovalDetails.reasonForRemovalDetails.length > 2000) {\r\n this.valid = false\r\n }\r\n\r\n if(!isDateValid) {\r\n messages.push('Please enter a valid date');\r\n }\r\n if(!this.voluntaryRemovalDetails.dateOfRegistryRemoval) {\r\n messages.push('Please provide the date you would like to be removed from the register ');\r\n }\r\n if(!this.voluntaryRemovalDetails.reasonForRemoval) {\r\n messages.push('Please provide the reason you would like to be removed from the register ');\r\n }\r\n this.validity$.next({ valid: this.valid, messages , touched: this.touched });\r\n }\r\n\r\n dateChange() {\r\n this.isPendingFeeZero.emit(this.vrService.isOutstandingPaymentZero(this.expiryDate, this.voluntaryRemovalDetails.dateOfRegistryRemoval, this.application.pendingFee)); \r\n this.validate();\r\n }\r\n\r\n onReasonChange() {\r\n this.voluntaryRemovalDetails.reasonForRemovalDetails = '';\r\n this.validate();\r\n }\r\n\r\n populateForm() {}\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 \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n

    This information will not be used in assessing this or any future applications. \r\n It will help us to understand why pharmacy professionals chose to leave the register. Please select \r\n 'prefer not to say' if you do not want to give a reason.\r\n

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

    2000 \">\r\n You can only enter a maximum of 2000 characters in this field\r\n

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

    Superintendent

    \r\n \r\n\r\n \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \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, forwardRef, Input, OnInit } from '@angular/core';\r\nimport { EdiService } from '../../../../account/service/edi.service';\r\nimport { EqualityDiversity } from '../../../../account/model/EqualityDiversity';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { Tooltip } from '../../../../core/tooltip/Tooltip';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { VoluntaryRemovalApplicationStep } from '../../model/VoluntaryRemovalApplicationStep';\r\nimport { VoluntaryRemovalApplication } from '../../model/VoluntaryRemovalApplication';\r\n\r\n@Component({\r\n selector: 'app-vr-edi-step',\r\n templateUrl: './vr-edi-step.component.html',\r\n styleUrls: ['./vr-edi-step.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => VrEdiStepComponent)\r\n }\r\n ]\r\n})\r\nexport class VrEdiStepComponent extends FormStepComponent implements OnInit {\r\n title = 'ED&I Details';\r\n stepId = VoluntaryRemovalApplicationStep.EDIDetails;\r\n equalityDiversity: EqualityDiversity;\r\n \r\n constructor(public ediService: EdiService, service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n showDetailsHelp = false;\r\n prevDisabled = false;\r\n\r\n ngOnInit() {\r\n this.equalityDiversity = this.application.activeForm.equalityDiversity || {\r\n ethnicity: undefined,\r\n ethnicityOther: '',\r\n nationality: undefined,\r\n religion: undefined,\r\n religionOther: '',\r\n disabled: undefined,\r\n disabilityDetails: '',\r\n gender: undefined,\r\n sexualOrientation: undefined\r\n };\r\n }\r\n\r\n validate() {\r\n this.validity$.next(Object.assign(this.ediService.validate(this.equalityDiversity), { touched: this.touched }));\r\n }\r\n\r\n update($event) {\r\n const nationality = this.application.activeForm.equalityDiversity?.nationality;\r\n this.application.activeForm.equalityDiversity = Object.assign($event, { nationality });\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n load() {\r\n this.ediService.load().subscribe(() => {\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n populateForm() { }\r\n\r\n}\r\n","\r\n\r\n
    \r\n

    \r\n
    \r\n Equality and diversity\r\n
    \r\n \r\n

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

    \r\n At the GPhC, we are committed to promoting equality, valuing diversity and being inclusive in all our work\r\n as a health professions regulator, and to making sure we meet our equality duties.\r\n

    \r\n

    \r\n This equality monitoring form will provide us with information to check that this happens, as defined under\r\n the Equality Act 2010. We will use your answers to compile statistics and to facilitate research to support\r\n this work. We sometimes share anonymised data with third parties to help us carry out research into\r\n particular issues and will have a confidentiality agreement in place if this happens.\r\n

    \r\n

    \r\n It does not form part of the application process and will not be used in assessing applications. If you do not want to give us any information, click on ‘prefer\r\n not to say’ in response to each section.\r\n

    \r\n
    \r\n
    \r\n
    \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 { Input, Component, OnInit } from '@angular/core';\r\nimport { map } from 'rxjs/operators';\r\nimport { VoluntaryRemovalService } from '../../../../core/service/voluntaryRemoval.service';\r\nimport { FormQuestion } from '../../../../dynamic/model/FormQuestion';\r\nimport { FormValidationService } from '../../../../dynamic/service/formValidationService';\r\nimport { FormValidator } from '../../../../dynamic/service/FormValidator';\r\nimport { VoluntaryRemovalApplication } from '../../model/VoluntaryRemovalApplication';\r\nimport { VoluntaryRemovalApplicationForm } from '../../model/VoluntaryRemovalApplicationForm';\r\n\r\n@Component({\r\n selector: 'app-vr-declaration-summary',\r\n templateUrl: './vr-declaration-summary.component.html',\r\n providers: [\r\n FormValidationService,\r\n { provide: FormValidator, useExisting: FormValidationService }\r\n ],\r\n styleUrls: ['./vr-declaration-summary.scss']\r\n}) export class VrDeclarationSummaryComponent implements OnInit {\r\n empty = false;\r\n form$ = this.validator.state$.pipe(map(forms => forms[0]));\r\n formIndex: number;\r\n @Input('formIndex') set setFormIndex(value) {\r\n this.formIndex = parseInt(value, 10);\r\n }\r\n @Input() application: VoluntaryRemovalApplication;\r\n @Input() formId;\r\n applicationForm: VoluntaryRemovalApplicationForm;\r\n dynamicFormId;\r\n hasToDeclare: Array = [];\r\n constructor(\r\n private vrService: VoluntaryRemovalService,\r\n private validator: FormValidationService\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n this.setForm();\r\n this.load();\r\n }\r\n\r\n setForm() {\r\n if (this.formId) {\r\n this.applicationForm = this.application.pastApplications\r\n .find(pastApp => pastApp.id === this.formId);\r\n } else {\r\n this.applicationForm = this.application.activeForm;\r\n }\r\n }\r\n\r\n load() {\r\n this.vrService.getDeclarationFormTemplates().subscribe(formTemplates => {\r\n const formTemplate = formTemplates[this.formIndex];\r\n const form = this.validator.addForm(formTemplate);\r\n this.dynamicFormId = form.dynamicFormId;\r\n const saved = this.applicationForm.ftpDeclarations.find(dec => dec.dynamicFormId === form.dynamicFormId);\r\n if (!saved) {\r\n this.empty = true;\r\n return;\r\n }\r\n this.validator.loadAnswers(form, saved.answers);\r\n this.hasToDeclare = form.questionGroups.reduce((acc, group) => {\r\n acc = acc.concat(group.questions.filter(q => this.validator.hasToDeclare(q)));\r\n return acc;\r\n }, []);\r\n });\r\n }\r\n}\r\n\r\n\r\n","
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n I have nothing to declare\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n Declarations not completed\r\n
    \r\n
    ","import { Input, Component, forwardRef, OnInit, Output, EventEmitter, AfterViewInit, ChangeDetectionStrategy } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { FormValidator } from '../../../../dynamic/service/FormValidator';\r\nimport { FormValidationService } from '../../../../dynamic/service/formValidationService';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { map, tap } from 'rxjs/operators';\r\nimport { VoluntaryRemovalService } from '../../../../core/service/voluntaryRemoval.service';\r\nimport { VoluntaryRemovalApplicationStep } from '../../model/VoluntaryRemovalApplicationStep';\r\nimport { FormQuestion } from '../../../../dynamic/model/FormQuestion';\r\nimport { Form } from '../../../../dynamic/model/Form';\r\nimport { FormTemplate } from '../../../../dynamic/model/FormTemplate';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { FormType } from '../../../../dynamic/model/FormType';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-vr-ftp-declaration-step',\r\n templateUrl: './vr-ftp-declaration-step.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => VrFtpDeclarationStepComponent)\r\n },\r\n FormValidationService,\r\n { provide: FormValidator, useExisting: FormValidationService }\r\n ],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n}) export class VrFtpDeclarationStepComponent extends FormStepComponent implements OnInit {\r\n declarationHeading;\r\n form$ = this.validator.state$.pipe(map(forms => forms[0]));\r\n formIndex: number;\r\n form: Form;\r\n formTemplate: FormTemplate;\r\n formType:FormType;\r\n saved: any;\r\n getFtpAnswers: void;\r\n isFtpQ1DeclareYes: any;\r\n @Input() question: FormQuestion;\r\n @Input('formIndex') set setFormIndex(value) {\r\n this.formIndex = parseInt(value, 10);\r\n }\r\n title;\r\n stepId;\r\n dynamicFormId;\r\n valid;\r\n isDeclareYes: Array = [];\r\n isPartlyNo = [];\r\n @Output() navigate = new EventEmitter();\r\n hasDeclareYes: Array = [];\r\n currentDynamicFormIds;\r\n \r\n constructor(private vrService: VoluntaryRemovalService, private validator: FormValidationService,\r\n service: FormStepperService, private dialog: MatDialog) {\r\n super(service);\r\n this.form$.subscribe(form => {\r\n if (form) {\r\n this.dirty = form.dirty;\r\n this.valid = !form.invalid && form.completed;\r\n}\r\n });\r\n }\r\n\r\n beforeNext() {\r\n return this.populateForm();\r\n }\r\n\r\n beforePrev() {\r\n return this.populateForm();\r\n }\r\n\r\n\r\n populateForm() {\r\n this.application.activeForm.ftpDeclarations = this.application.activeForm.ftpDeclarations\r\n .filter(d => d.dynamicFormId !== this.dynamicFormId);\r\n\r\n this.application.activeForm.ftpDeclarations.push(this.validator.getPayload()[0]);\r\n\r\n return true;\r\n }\r\n\r\n sendFtpAnsers(ftpAnsers) {\r\n this.vrService.sendFtpDeclarationAnswers(ftpAnsers);\r\n }\r\n\r\n ngOnInit() {\r\n this.title = 'Ftp declarations';\r\n if (this.formIndex === 0) {\r\n this.stepId = VoluntaryRemovalApplicationStep.FtPDeclarations;\r\n this.declarationHeading = 'Voluntary removal: declaration of fitness to practise';\r\n }\r\n \r\n }\r\n\r\n getFtpUpdatedAnswers() {\r\n if (this.isPartlyNo.length > 0 ) {\r\n return this.sendFtpAnsers(true);\r\n } else if ( this.isDeclareYes.length > 0) {\r\n return this.sendFtpAnsers(false);\r\n } else if (this.isDeclareYes.length === 0 && this.isPartlyNo.length === 0) {\r\n return this.sendFtpAnsers(null);\r\n }\r\n }\r\n\r\n\r\nvalidate() {\r\n const messages = [];\r\n \r\n this.getFtpUpdatedAnswers();\r\n if (!this.valid) {\r\n messages.push('You must answer all the questions to continue');\r\n }\r\n this.validity$.next({ valid: this.valid, messages, touched: this.touched });\r\n}\r\n\r\n\r\n load() {\r\n this.vrService.getDeclarationFormTemplates().subscribe(formTemplates => {\r\n this.formTemplate = formTemplates[this.formIndex];\r\n this.form = this.validator.addForm(this.formTemplate);\r\n this.dynamicFormId = this.form.dynamicFormId;\r\n this.formType = formTemplates[this.formIndex].type;\r\n this.saved = this.application.activeForm.ftpDeclarations.find(dec => dec.dynamicFormId === this.form.dynamicFormId);\r\n if (this.saved) {\r\n this.validator.loadAnswers(this.form, this.saved.answers);\r\n }\r\n this.isPartlyNo = this.form.questionGroups.reduce((acc, group) => {\r\n acc = acc.concat(group.questions.filter(q => this.validator.hasToDeclare(q)));\r\n return acc;\r\n }, []);\r\n \r\n this.isDeclareYes = this.form.questionGroups.reduce((acc, group) => {\r\n acc = acc.concat(group.questions.filter(q => this.validator.hasAnsweredYes(q)));\r\n return acc;\r\n }, []);\r\n\r\n\r\n this.currentDynamicFormIds = formTemplates.map(template => template.dynamicFormId);\r\n this.application.activeForm.ftpDeclarations = this.application.activeForm.ftpDeclarations\r\n .filter(f => this.currentDynamicFormIds.indexOf(f.dynamicFormId) > -1);\r\n\r\n this.validator.updateState();\r\n this.dirty = false;\r\n this.touched = false;\r\n this.ready$.next(true);\r\n\r\n });\r\n }\r\n}\r\n\r\n\r\n","\r\n

    {{ declarationHeading }}

    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    ","import { Component, forwardRef, ElementRef, ViewChild, Renderer2, OnInit, Input } from '@angular/core';\r\nimport { FormStepComponent } from '../../../../shared/formStepper/formStep.component';\r\nimport { creditCards, CreditCard } from '../../../../renewal/model/CreditCard';\r\nimport { RenewalService } from '../../../../core/service/renewal.service';\r\nimport { FormStepperService } from '../../../../shared/formStepper/formStepper.service';\r\nimport { VoluntaryRemovalApplicationStep } from '../../model/VoluntaryRemovalApplicationStep';\r\nimport { VoluntaryRemovalService } from '../../../../core/service/voluntaryRemoval.service';\r\nimport { VoluntaryRemovalApplication } from '../../model/VoluntaryRemovalApplication';\r\nimport { CollectionMethod } from '../../../../payment/model/CollectionMethod';\r\nimport { VoluntaryRemovalDetails } from '../../model/VoluntaryRemovalDetails';\r\n\r\n@Component({\r\n selector: 'app-vr-payment-step',\r\n templateUrl: './vr-payment-step.component.html',\r\n styleUrls: ['./vr-payment-step.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => VrPaymentStepComponent)\r\n }\r\n ]\r\n}) export class VrPaymentStepComponent extends FormStepComponent implements OnInit{\r\n\r\n title = 'Payment';\r\n stepId = VoluntaryRemovalApplicationStep.Payment;\r\n fee;\r\n cartId;\r\n selectedCard: CreditCard;\r\n creditCards = creditCards;\r\n worldpayConfig;\r\n @ViewChild('worldpayForm', { static: false }) worldpayForm: ElementRef;\r\n application: VoluntaryRemovalApplication;\r\n outStandingPaymentDetails = [];\r\n collectionMethod = CollectionMethod;\r\n voluntaryRemovalDetails: VoluntaryRemovalDetails;\r\n\r\n constructor(private renewalService: RenewalService,\r\n private renderer: Renderer2, stepper: FormStepperService, private vrService: VoluntaryRemovalService) {\r\n super(stepper);\r\n }\r\n\r\n ngOnInit() {\r\n this.outStandingPaymentDetails = this.application.outstandingPayments;\r\n this.voluntaryRemovalDetails = this.application.activeForm.voluntaryRemovalDetails;\r\n }\r\n\r\n load() {\r\n this.fee = this.application.pendingFee;\r\n this.renewalService.getWordpayConfig().subscribe(config => {\r\n this.worldpayConfig = config;\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n let isDateValid = true;\r\n\r\n if(this.voluntaryRemovalDetails && this.voluntaryRemovalDetails.dateOfRegistryRemoval) {\r\n if(new Date(this.voluntaryRemovalDetails.dateOfRegistryRemoval).setHours(0,0,0,0) <= new Date().setHours(0,0,0,0)) {\r\n isDateValid = false;\r\n }\r\n }\r\n\r\n if(!isDateValid) {\r\n messages.push(\"The date of removal from the register must be greater than today's date, please select a valid date.\");\r\n }\r\n\r\n const valid = !!this.selectedCard && isDateValid;\r\n if (!valid) {\r\n messages.push('You must select a card type to proceed to payment');\r\n }\r\n\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n beforeNext() {\r\n this.vrService.saveApplicationPayment().subscribe((result) => {\r\n this.cartId = JSON.stringify(result.paymentIdentifier);\r\n setTimeout(() => {\r\n this.worldpayForm.nativeElement.submit();\r\n }, 100);\r\n });\r\n return false;\r\n }\r\n\r\n populateForm() { }\r\n\r\n}\r\n","

    vr-payment-step works!

    \r\n\r\n

    \r\n Annual renewal fee\r\n \"Worldpay

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

    \r\n If you pay your annual fee by Quarterly Direct Debit and you still have an outstanding balance to pay for the current renewal year you are required to pay the \r\n total renewal annual fee before you can request voluntary removal from the register.\r\n

    \r\n

    \r\n Our records show that the following quarterly payments are still outstanding. On the next page you will be able to pay the total\r\n outstanding. If you dont think that this is correct please contact us\r\n

    \r\n

    \r\n After you had paid the outstanding renewal fee please remember to cancel the direct debit mandate with your bank.\r\n

    \r\n \r\n
    \r\n \r\n\r\n \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Payment fee description Collection method Payment due date Amount
    {{item.paymentDescription}} {{collectionMethod[item.collectionMethod] | caseSplit}} {{item.paymentDate | utcDate}} {{item.paymentAmount}}
    \r\n
    \r\n\r\n \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n

    Please select your card type

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

    \r\n We can only accept payments made in pounds sterling (GBP). Payments are processed using worldpay, for more information please\r\n review their\r\n privacy policy.\r\n

    \r\n

    \r\n When you make a card payment, you may be redirected to your card provider’s site to enter another password before they authorise\r\n your payment. You can find out more about 3-D Secure authentication from your card provider.\r\n

    \r\n
    \r\n \r\n \r\n \r\n \"{{card.name}}\r\n
    {{card.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
    ","import { AfterViewInit, ChangeDetectorRef, Component, OnInit, QueryList, ViewChildren } from '@angular/core';\r\nimport { FormStepSummary } from '../../shared/formStepper/FormStepSummary';\r\nimport { LayoutService } from '../../core/service/layout.service';\r\nimport { FormStepperComponent } from '../../shared/formStepper/formStepper.component';\r\nimport { FormStepperService } from '../../shared/formStepper/formStepper.service';\r\nimport { User } from '../../account/model/User';\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { VoluntaryRemovalService } from '../../core/service/voluntaryRemoval.service';\r\nimport { VoluntaryRemovalApplication } from './model/VoluntaryRemovalApplication';\r\nimport { ApplicationStatus } from '../../technician/model/ApplicationStatus';\r\nimport { FormStepComponent } from '../../shared/formStepper/formStep.component';\r\nimport { VoluntaryRemovalDetails } from './model/VoluntaryRemovalDetails';\r\nimport { VoluntaryRemovalApplicationStep } from './model/VoluntaryRemovalApplicationStep';\r\n\r\n@Component({\r\n selector: 'app-voluntary-removal',\r\n templateUrl: './voluntary-removal.component.html',\r\n styleUrls: ['../../prereg/application-form.scss'],\r\n providers: [FormStepperService]\r\n})\r\nexport class VoluntaryRemovalComponent implements OnInit, AfterViewInit {\r\n\r\n @ViewChildren(FormStepperComponent) formStepperComponents: QueryList;\r\n formStepper: FormStepperComponent;\r\n loading = false;\r\n loadingError = false;\r\n application: VoluntaryRemovalApplication;\r\n isApplicationOpen = true;\r\n ready = true;\r\n saving = false;\r\n initialSteps;\r\n user: User;\r\n maxStep;\r\n minStep;\r\n superIntendentDetails;\r\n stepTitle;\r\n expiryDate: string;\r\n voluntaryRemovalDetails: VoluntaryRemovalDetails; \r\n\r\n allSteps: FormStepComponent[];\r\n allStepSummary: any;\r\n stepsWithoutPayment;\r\n menuWithoutPayment;\r\n displayPaymentStep = true;\r\n\r\n constructor(private auth: AuthService,\r\n public formStepperService: FormStepperService,\r\n public layout: LayoutService,\r\n private vrService: VoluntaryRemovalService,\r\n private cd: ChangeDetectorRef) { }\r\n\r\n get submitted() {\r\n return (this.application && (this.application.activeForm.formStatus === ApplicationStatus.Submitted ||\r\n this.application.activeForm.formStatus === ApplicationStatus.Approved));\r\n }\r\n\r\n ngOnInit(): void {\r\n this.load();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.formStepperComponents.changes.subscribe((comps: QueryList ) => {\r\n this.formStepper = comps.first;\r\n this.cloneSteps();\r\n this.cloneSummary(); \r\n this.showHidePaymentStep(this.vrService.isOutstandingPaymentZero(this.expiryDate, this.voluntaryRemovalDetails.dateOfRegistryRemoval, this.application.pendingFee));\r\n }); \r\n }\r\n\r\n load() {\r\n this.user = this.auth.user;\r\n this.expiryDate = this.auth.user.registrant.expiryDate;\r\n this.superIntendentDetails = this.user?.registrant ? (this.user.registrant.superIntendentPosition ? this.user.registrant.superIntendentPosition : null ) : null;\r\n this.loading = true;\r\n this.loadingError = false;\r\n this.vrService.getApplication(this.auth.user.registrationStatus).subscribe( application => {\r\n this.application = application;\r\n this.voluntaryRemovalDetails = this.application.activeForm.voluntaryRemovalDetails;\r\n const outstandingFee = this.application.pendingFee;\r\n\r\n if(this.vrService.isOutstandingPaymentZero(this.expiryDate, this.voluntaryRemovalDetails.dateOfRegistryRemoval, this.application.pendingFee)) {\r\n if(this.application.activeForm.step === 6) {\r\n this.application.activeForm.step = 5\r\n }\r\n }\r\n\r\n if (this.application.activeForm.step) {\r\n this.maxStep = this.application.activeForm.step;\r\n }\r\n if (this.application.activeForm.minStep) {\r\n this.minStep = this.application.activeForm.minStep;\r\n }\r\n\r\n this.stepTitle = 'Removal details';\r\n\r\n this.loading = false;\r\n this.ready = true;\r\n }, error => {\r\n this.loading = false;\r\n this.loadingError = true;\r\n });\r\n }\r\n\r\n cloneSteps(): void {\r\n this.allSteps = this.formStepper?.steps.slice();\r\n }\r\n\r\n cloneSummary(): void {\r\n this.allStepSummary = this.formStepperService?.summary.slice();\r\n }\r\n\r\n showHidePaymentStep(isPendingFeeZero) {\r\n\r\n if(this.formStepper) {\r\n if(!this.stepsWithoutPayment && !this.menuWithoutPayment) {\r\n this.stepsWithoutPayment = this.formStepper.steps.filter(step => !step.title.includes('Payment'));\r\n this.menuWithoutPayment = this.formStepperService.summary.filter(step => !step.title.includes('Payment'));\r\n }\r\n this.displayPaymentStep = !isPendingFeeZero;\r\n\r\n if (this.displayPaymentStep) {\r\n this.formStepper.steps = this.allSteps;\r\n this.formStepperService.summary = this.allStepSummary;\r\n } else {\r\n this.formStepper.steps = this.stepsWithoutPayment;\r\n this.formStepperService.summary = this.menuWithoutPayment;\r\n }\r\n this.updateStepId(); \r\n this.cd.detectChanges();\r\n }\r\n }\r\n\r\n goToStep(step: FormStepSummary) {\r\n if (step.disabled) { return; }\r\n this.formStepper.goToStep(step.stepId);\r\n }\r\n\r\n stepChanged(stepId) {\r\n setTimeout(() => {\r\n this.vrService.setStep(this.application.activeForm.id, this.formStepperService.getFurthestStep()).subscribe();\r\n this.application.activeForm.step = stepId;\r\n }, 1000);\r\n }\r\n\r\n stepChange(): () => Promise {\r\n return function () {\r\n return new Promise((resolve, reject) => {\r\n if (this.formStepper.currentStep.dirty || this.formStepper.currentStep.stepId) {\r\n if (this.application.activeForm.step === VoluntaryRemovalApplicationStep.FtPDeclarations) {\r\n this.formStepper.currentStep.load();\r\n }\r\n this.formStepper.serverErrors = [];\r\n return this.save().then(() => {\r\n \r\n resolve();\r\n }, error => {\r\n this.formStepper.serverErrors = error.validationErrors;\r\n reject(error);\r\n });\r\n } else {\r\n resolve();\r\n }\r\n });\r\n }.bind(this);\r\n }\r\n\r\n goToStepId(stepId) {\r\n this.formStepper.goToStep(stepId);\r\n }\r\n\r\n save() {\r\n this.saving = true;\r\n\r\n this.application.activeForm.step = this.formStepperService.getFurthestStep();\r\n\r\n \r\n this.formStepper.currentStep.populateForm();\r\n return new Promise((resolve, reject) => {\r\n const start = performance.now();\r\n const minExecution = 300;\r\n function respond(cb) {\r\n const end = performance.now();\r\n const duration = end - start;\r\n if (duration < minExecution) {\r\n setTimeout(() => {\r\n cb();\r\n }, Math.round(minExecution - duration));\r\n } else {\r\n cb();\r\n }\r\n }\r\n this.vrService.saveVRApplication(this.application).subscribe(() => {\r\n respond(() => {\r\n this.saving = false;\r\n resolve();\r\n });\r\n }, error => {\r\n respond(() => {\r\n this.saving = false;\r\n reject(error);\r\n });\r\n });\r\n });\r\n }\r\n\r\n updateStepId(): void {\r\n if(this.formStepper) {\r\n if(this.formStepperService.updateStepsId(this.initialSteps, this.formStepper.steps)) {\r\n this.initialSteps = this.formStepper.steps;\r\n }\r\n }\r\n }\r\n}\r\n","
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n

    Application for voluntary removal of your register entry

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

    \r\n An error occurred while attempting to load your application\r\n

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

    This application has been marked as ineligible.

    \r\n
    \r\n

    You can either re-submit this application as it is, or re-open this one for editing if you need to make\r\n changes.

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

    You can re-open this application if you would like to submit again.

    \r\n \r\n
    \r\n \r\n
    \r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n Voluntary removal of your register entry application\r\n \r\n
    \r\n \r\n
    \r\n

    \r\n {{ applicationClosedMessage }}\r\n

    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    ","import { Component, Input, ChangeDetectionStrategy, OnInit } from '@angular/core';\r\nimport { Form } from '../dynamic/model/Form';\r\nimport { RenewalService } from '../core/service/renewal.service';\r\nimport { FormValidationService } from '../dynamic/service/formValidationService';\r\nimport { FormQuestion } from '../dynamic/model/FormQuestion';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { api } from '../shared/service/utils';\r\n\r\n@Component({\r\n selector: 'app-declaration',\r\n moduleId: module.id,\r\n templateUrl: './declaration.component.html',\r\n styleUrls: ['./declaration.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class DeclarationComponent {\r\n\r\n @Input('form') set setForm(form: Form) {\r\n this.form = form;\r\n this.checkForRevalidationQuestion();\r\n }\r\n\r\n @Input() titleVisible = true;\r\n @Input() revalidationCompleted = true;\r\n constructor(\r\n private validator: FormValidationService,\r\n private auth: AuthService\r\n ) { }\r\n\r\n form: Form;\r\n showRevalidationWarning = false;\r\n\r\n checkForRevalidationQuestion() {\r\n if (this.auth.user.isRegistrant) {\r\n const revalidationQuestion: FormQuestion = this.validator.getQuestionByShortname(this.form, 'QE');\r\n const dateOfFirstCohort = new Date(api.formatDate('2018-12-31'));\r\n const userRenewalDate = new Date(api.formatDate(this.auth.user.registrant.renewalDate));\r\n if (revalidationQuestion !== undefined) {\r\n revalidationQuestion.alternativeSelected.subscribe(alternative => {\r\n // if the users renewal date is on or after december 31st show message\r\n this.showRevalidationWarning =\r\n (alternative.name === 'Y' && !this.revalidationCompleted && (userRenewalDate >= dateOfFirstCohort));\r\n });\r\n }\r\n }\r\n }\r\n\r\n}\r\n","
    \r\n

    \r\n

    0\" [innerHTML]=\"questionGroup.title\" tabindex=\"0\">

    \r\n

    \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
    \r\n If you have not yet submitted a revalidation record for the current renewal period, please ensure that you do so by the submission due date shown on the revalidation page. If you do not you will be placed into remediation.\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    ","
    \r\n \r\n
    \r\n
    \r\n

    \r\n \r\n
    \r\n
    \r\n
    \r\n","import { Component, Input, ChangeDetectionStrategy } from '@angular/core';\r\nimport { FormQuestion } from '../dynamic/model/FormQuestion';\r\nimport { Form } from '../dynamic/model/Form';\r\n\r\n@Component({\r\n selector: 'app-declaration-question',\r\n moduleId: module.id,\r\n templateUrl: './declarationQuestion.component.html',\r\n styleUrls: ['./declarationQuestion.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class DeclarationQuestionComponent {\r\n @Input() question: FormQuestion;\r\n @Input() form: Form;\r\n @Input() readonly = false;\r\n @Input() formId;\r\n}\r\n","export interface CreditCard {\r\n id: string;\r\n name: string;\r\n}\r\nexport const creditCards: Array = [\r\n {\r\n id: 'MSCD',\r\n name: 'MasterCard'\r\n },\r\n {\r\n id: 'DMC',\r\n name: 'MasterCard Debit'\r\n },\r\n {\r\n id: 'VISA',\r\n name: 'Visa Credit'\r\n },\r\n {\r\n id: 'VISD',\r\n name: 'Visa Debit'\r\n },\r\n {\r\n id: 'VIED',\r\n name: 'Visa Electron'\r\n },\r\n {\r\n id: 'MAES',\r\n name: 'Maestro'\r\n },\r\n {\r\n id: 'JCB',\r\n name: 'JCB'\r\n }\r\n];\r\n","export enum RenewalPaymentMethod {\r\n Unknown = 0,\r\n DirectDebitAnnual = 1,\r\n DirectDebitQuarterly = 2,\r\n PaymentCard = 3\r\n}\r\n","export enum RenewalStatus {\r\n Unknown = 0,\r\n NotDue = 1,\r\n Pending = 717750000,\r\n DDPaymentPending = 717750001,\r\n DDPaymentProcessing = 717750006,\r\n Complete = 717750002,\r\n DDDeclarationMissed = 717750003,\r\n DDPaymentFailed = 717750004,\r\n RenewalDeadlineMissed = 717750005,\r\n PaymentInProgress = -1\r\n}\r\n","export class WorldpayCartId {\r\n registrationNumber: string;\r\n renewalId: string;\r\n\r\n constructor(data) {\r\n Object.assign(this, data);\r\n }\r\n\r\n toString() {\r\n return JSON.stringify({\r\n registrationNumber: this.registrationNumber,\r\n renewalId: this.renewalId\r\n });\r\n }\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport { creditCards, CreditCard } from './model/CreditCard';\r\nimport { RenewalPaymentMethod } from './model/RenewalPaymentMethod';\r\n\r\n@Component({\r\n selector: 'app-payment',\r\n moduleId: module.id,\r\n templateUrl: './payment.component.html',\r\n styleUrls: ['./payment.scss']\r\n})\r\nexport class PaymentComponent {\r\n creditCards: Array = creditCards;\r\n selectedCard: CreditCard;\r\n RenewalPaymentMethod = RenewalPaymentMethod;\r\n\r\n @Input() renewal;\r\n @Input() config;\r\n\r\n}\r\n","\r\n
    \r\n

    Declaration agreement

    \r\n
    \r\n

    \r\n \r\n I have read, understood, agree to, and completed the Fitness to Practise matters and the Declaration for renewal in the Register\r\n \r\n

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

    Fees To Be Paid\r\n \"Worldpay\r\n

    \r\n

    \r\n Renewal Fee: {{renewal.renewalFee | currency: 'GBP': 'symbol' :'.2'}}\r\n

    \r\n
    \r\n

    Please select your card type

    \r\n \r\n \r\n \"{{card.name}}
    \r\n {{card.name}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, OnInit, AfterViewInit, ViewChild, ElementRef, ErrorHandler, Renderer2 } from '@angular/core';\r\nimport { RenewalService } from '../core/service/renewal.service';\r\nimport { Renewal } from './model/Renewal';\r\nimport { LayoutService } from '../core/service/layout.service';\r\nimport { FormValidator } from '../dynamic/service/FormValidator';\r\nimport { Form } from '../dynamic/model/Form';\r\nimport { FormValidationService } from '../dynamic/service/formValidationService';\r\nimport { WorldpayConfig } from './model/WorldpayConfig';\r\nimport { WorldpayCartId } from './model/WorldpayCartId';\r\nimport { RenewalPaymentMethod } from './model/RenewalPaymentMethod';\r\nimport { CanComponentDeactivate } from '../guard/CanDeactivate.guard';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { ConfirmDialogComponent } from '../shared/confirmDialog.component';\r\nimport { CustomErrorHandler } from '../core/service/CustomErrorHandler';\r\nimport { TrackingService } from '../core/service/tracking.service';\r\nimport { UserActivity } from '../core/model/UserActivity';\r\nimport { ValidationError } from '../core/model/ValidationError';\r\nimport { LogService } from '../core/service/log.service';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Component({\r\n selector: 'app-renew',\r\n moduleId: module.id,\r\n templateUrl: './renewal.component.html',\r\n styleUrls: ['./renewal.scss'],\r\n providers: [\r\n FormValidationService,\r\n { provide: FormValidator, useExisting: FormValidationService },\r\n { provide: ErrorHandler, useClass: CustomErrorHandler }\r\n ]\r\n})\r\nexport class RenewalComponent implements OnInit, CanComponentDeactivate {\r\n\r\n renewal: Renewal;\r\n steps;\r\n step;\r\n started = false;\r\n loading = false;\r\n failed = false;\r\n saving = false;\r\n worldpayConfig: WorldpayConfig;\r\n cartId: string;\r\n selectedCard = '';\r\n @ViewChild('worldpayForm') worldpayForm: ElementRef;\r\n RenewalPaymentMethod = RenewalPaymentMethod;\r\n showWorldpayDisabledMessage = false;\r\n\r\n constructor(private service: RenewalService,\r\n private validator: FormValidationService,\r\n private layout: LayoutService,\r\n private renderer: Renderer2,\r\n private dialog: MatDialog,\r\n private tracking: TrackingService,\r\n private log: LogService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.load();\r\n this.service.getWordpayConfig().subscribe(config => {\r\n this.worldpayConfig = config;\r\n });\r\n }\r\n\r\n warnForDirty(): Observable {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n title: `Renewal in progress`,\r\n message: `

    If you leave this page without completing your declarations,\r\n you will have to start from the beginning again.

    \r\n

    Are you sure you want to leave ?

    `\r\n }\r\n });\r\n return dialogRef.afterClosed();\r\n }\r\n\r\n canDeactivate() {\r\n if (!this.inProgress) { return true; }\r\n return this.warnForDirty();\r\n }\r\n\r\n get inProgress() {\r\n return (this.step > 0 && !this.currentStep.completed);\r\n }\r\n\r\n failTest() {\r\n this.service.failTest().subscribe(result => {\r\n console.log(result, 'result');\r\n },\r\n error => {\r\n console.log(error, 'error');\r\n });\r\n }\r\n\r\n load() {\r\n this.loading = true;\r\n this.failed = false;\r\n this.service.getRenewal()\r\n .subscribe(renewal => {\r\n this.renewal = renewal;\r\n if (renewal.isDue) {\r\n this.loadFormTemplates();\r\n } else {\r\n this.steps = [{ start: true }];\r\n this.step = 0;\r\n this.loading = false;\r\n this.configureUi();\r\n }\r\n }, error => {\r\n this.loading = false;\r\n this.failed = true;\r\n });\r\n }\r\n\r\n loadFormTemplates() {\r\n this.service.getFormTemplates().subscribe(formTemplates => {\r\n this.steps = [{ start: true }];\r\n formTemplates.forEach(formTemplate => {\r\n this.steps.push({\r\n name: formTemplate.formTitle,\r\n form: true,\r\n dynamicFormId: this.validator.addForm(formTemplate).dynamicFormId\r\n });\r\n });\r\n this.steps.push({ payment: true });\r\n if (this.renewal.paymentMethod !== RenewalPaymentMethod.PaymentCard) {\r\n this.steps.push({ completed: true });\r\n }\r\n this.step = 0;\r\n this.loading = false;\r\n this.configureUi();\r\n }, error => {\r\n this.loading = false;\r\n this.failed = true;\r\n });\r\n }\r\n\r\n get form(): Form {\r\n if (!this.currentStep.form) {\r\n return undefined;\r\n }\r\n return this.validator.getForm(this.steps[this.step].dynamicFormId);\r\n }\r\n\r\n get currentStep() {\r\n if (!this.steps) {\r\n return undefined;\r\n }\r\n return this.steps[this.step];\r\n }\r\n\r\n allowNext() {\r\n if (this.currentStep.form) {\r\n return this.form.completed;\r\n }\r\n if (this.currentStep.payment) {\r\n if (this.showWorldpayDisabledMessage) {\r\n return false;\r\n }\r\n if (this.renewal.paymentMethod === RenewalPaymentMethod.PaymentCard) {\r\n return !!this.renewal.selectedCard && this.renewal.agreed;\r\n } else {\r\n return this.renewal.agreed;\r\n }\r\n }\r\n }\r\n\r\n next() {\r\n if (this.currentStep.payment) {\r\n if (this.renewal.paymentMethod === RenewalPaymentMethod.PaymentCard) {\r\n this.saveDeclarationAndPaymentSelection();\r\n } else {\r\n this.saveDeclaration();\r\n }\r\n } else {\r\n this.step++;\r\n this.configureUi();\r\n }\r\n }\r\n\r\n configureUi() {\r\n setTimeout(() => {\r\n this.started = this.step > 0;\r\n });\r\n\r\n if (this.step === 0) {\r\n this.tracking.postActivity(UserActivity.Renewal, 'Splash page (not started)').subscribe();\r\n } else {\r\n if (this.currentStep.payment) {\r\n this.tracking.postActivity(UserActivity.Renewal, 'Declaration agreement').subscribe();\r\n }\r\n if (this.currentStep.form) {\r\n this.tracking.postActivity(UserActivity.Renewal, `${this.form.formTitle} (step ${this.step})`).subscribe();\r\n }\r\n }\r\n\r\n // TODO: window should be abstracted\r\n window.scrollTo(0, 0);\r\n }\r\n\r\n prev() {\r\n this.step--;\r\n this.configureUi();\r\n }\r\n\r\n saveDeclaration() {\r\n this.saving = true;\r\n const payload = {\r\n declarations: this.validator.getPayload(),\r\n confirmedAgreement: this.renewal.agreed\r\n };\r\n\r\n this.tracking.postActivity(UserActivity.Renewal, 'Declaration save (end of flow)').subscribe(() => {\r\n this.service.saveDeclaration(payload).subscribe(cartId => {\r\n this.saving = false;\r\n this.step++;\r\n // TODO: window should be abstracted\r\n window.scrollTo(0, 0);\r\n }, error => {\r\n this.handleValidationErrors(error);\r\n this.saving = false;\r\n });\r\n }, error => {\r\n this.handleValidationErrors(error);\r\n this.saving = false;\r\n });\r\n }\r\n\r\n handleValidationErrors(error) {\r\n\r\n if (!error) { return; }\r\n const validationErrors: Array = error.validationErrors;\r\n if (validationErrors && validationErrors.length) {\r\n let errorMessage = '';\r\n validationErrors.forEach(e => {\r\n errorMessage += e.errors.join(', ');\r\n });\r\n this.log.flag(this.log.error(errorMessage));\r\n }\r\n\r\n }\r\n\r\n saveDeclarationAndPaymentSelection() {\r\n this.saving = true;\r\n const payload = {\r\n declarations: this.validator.getPayload(),\r\n paymentDetails: {\r\n selectedCard: this.renewal.selectedCard\r\n },\r\n confirmedAgreement: this.renewal.agreed\r\n };\r\n\r\n this.tracking.postActivity(UserActivity.Renewal, 'Declaration save & worldpay redirect (end of flow)').subscribe(() => {\r\n this.service.saveDeclaration(payload).subscribe(cartId => {\r\n this.selectedCard = this.renewal.selectedCard;\r\n this.cartId = JSON.stringify(cartId);\r\n this.redirectToWorldpay();\r\n }, error => {\r\n this.handleValidationErrors(error);\r\n this.saving = false;\r\n });\r\n }, error => {\r\n this.handleValidationErrors(error);\r\n this.saving = false;\r\n });\r\n }\r\n\r\n redirectToWorldpay() {\r\n if (environment.worldpayEnabled) {\r\n setTimeout(() => {\r\n // this.renderer.setProperty(this.worldpayForm.nativeElement, 'value', 'submit');\r\n this.worldpayForm.nativeElement.submit();\r\n }, 100);\r\n } else {\r\n this.showWorldpayDisabledMessage = true;\r\n this.saving = false;\r\n }\r\n\r\n }\r\n}\r\n"," 0\">\r\n
    \r\n

    Renewal

    \r\n

    \r\n Complete the process to renew your professional registration\r\n

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

    {{currentStep.name}}

    \r\n

    \r\n

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

    Declaration agreement & Payment

    \r\n

    \r\n To proceed to make your payment, first select your card type and click the checkbox to indicate that you agree, then click 'Continue'.\r\n

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

    Declaration agreement

    \r\n

    \r\n To complete your declaration, click the checkbox to indicate that you agree, then click 'Continue'.\r\n

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

    Renewal complete

    \r\n

    Thank you, your declarations have now been received.

    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n 0\">\r\n
    \r\n \r\n \r\n \r\n\r\n \r\n\r\n
    \r\n
    \r\n

    Direct Debit\r\n single\r\n quarterly payment\r\n

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

    \r\n Please see your renewal notice to find out when your Direct Debit payment will be taken. Your receipt will be available to\r\n download after\r\n your Direct Debit payment has been taken.\r\n the first Direct Debit payment has been taken. The amount paid and amount still owing displayed on this receipt will be updated after each payment is taken.\r\n

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

    Worldpay redirect disabled

    \r\n

    Cart ID: {{ cartId }}

    \r\n
    \r\n
    \r\n\r\n
    0 && !currentStep?.completed\">\r\n
    \r\n \r\n
    \r\n Back\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n Continue\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n\r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \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 { NgModule, ErrorHandler } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { DynamicModule } from '../dynamic/dynamic.module';\r\nimport { SharedModule } from '../shared/shared.module';\r\nimport { RouterModule } from '@angular/router';\r\n// import { HttpModule } from '@angular/http';\r\nimport { RenewalComponent } from './renewal.component';\r\nimport { PaymentComponent } from './payment.component';\r\nimport { RenewalSplashComponent } from './renewalSplash.component';\r\nimport { CustomErrorHandler } from '../core/service/CustomErrorHandler';\r\nimport { RenewalFaqComponent } from './renewalFaq.component';\r\nimport { DeclarationComponent } from './declaration.component';\r\nimport { DeclarationQuestionComponent } from './declarationQuestion.component';\r\n\r\n@NgModule({\r\n imports: [\r\n // HttpModule,\r\n FormsModule,\r\n CommonModule,\r\n DynamicModule,\r\n SharedModule,\r\n RouterModule\r\n ],\r\n declarations: [\r\n RenewalComponent,\r\n RenewalFaqComponent,\r\n DeclarationComponent,\r\n DeclarationQuestionComponent,\r\n RenewalComponent,\r\n PaymentComponent,\r\n RenewalSplashComponent,\r\n RenewalFaqComponent\r\n ],\r\n exports: [\r\n DeclarationComponent,\r\n DeclarationQuestionComponent\r\n ],\r\n providers: [\r\n { provide: ErrorHandler, useClass: CustomErrorHandler }\r\n ]\r\n})\r\nexport class RenewalModule { }\r\n","import { Component, ViewChildren, QueryList, ElementRef } from '@angular/core';\r\nimport { FaqService } from '../shared/faq.service';\r\n\r\n@Component({\r\n selector: 'app-renewal-faq',\r\n moduleId: module.id,\r\n templateUrl: './renewalFaq.component.html',\r\n styleUrls: ['./renewalFaq.scss'],\r\n providers: [ FaqService ]\r\n})\r\nexport class RenewalFaqComponent {\r\n \r\n // Using a map to keep track of the expanded state for each button by its id\r\n expandedStates = new Map();\r\n\r\n toggleAccordion(id: string) {\r\n const isExpanded = this.expandedStates.get(id) || false;\r\n this.expandedStates.set(id, !isExpanded);\r\n }\r\n \r\n isButtonExpanded(id: string): boolean {\r\n return this.expandedStates.get(id) || false;\r\n }\r\n\r\n}\r\n","\r\n
    \r\n

    Renewal FAQs

    \r\n

    \r\n Frequently asked questions regarding renewal\r\n

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

    \r\n \r\n

    \r\n
    \r\n

    You need to renew your registration at least two months before it is due to expire. This requirement is to make\r\n sure the register stays up to date and is set out in our legislation.

    \r\n

    What you need do will depend on how you pay your fee. Please see your renewal notice for more information.

    \r\n

    We will notify you around three months before your renewal is due (five months before your registration expires)\r\n to tell you when you need to renew by – your ‘renewal due date’.

    \r\n

    Your renewal status will also show as ‘due’ on the ‘Home’ page of your myGPhC account at the same time, and it\r\n will show your renewal due date. Click on the button to follow the renewal process.

    \r\n

    You can renew your registration at any point once you receive your letter, or your renewal status shows as due\r\n on myGphC, until your renewal due date. See the How do I renew? section if you need help to renew your registration.\r\n

    \r\n

    If you do not renew your registration before your renewal date and you do not want to be removed from the register,\r\n contact us.

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

    \r\n \r\n

    \r\n
    \r\n

    Step 1: Decide on your payment method

    \r\n

    You can pay your registration fee by:

    \r\n
      \r\n
    • credit card
    • \r\n
    • debit card
    • \r\n
    • annual or quarterly Direct Debit
    • \r\n
    \r\n

    \r\n Unless you have already set up a Direct Debit, you should pay by credit or debit card. If you want to pay by Direct Debit,\r\n see I want to pay by Direct Debit. How do I set one up?

    \r\n\r\n

    Step 2: Make your declarations

    \r\n
      \r\n
    • Click on the ‘Start’ button on the ‘Renewal’ page.
    • \r\n
    • Fill in and confirm the declarations. If you need to give more information about any of your declarations,\r\n you may asked to fill in some extra forms. Follows the prompts for more information.\r\n
    • \r\n
    \r\n\r\n

    Step 3: Make your payment

    \r\n

    If you are paying by credit or debit card, please have your card with you. Once you have completed your declarations,\r\n you will be transferred to the online payment system. You may be asked by your bank to enter a password to\r\n complete your payment. You can find out more about this in What is the extra password step I encountered when\r\n making my online payment?

    \r\n

    If you enter your email address on the payment page, you will receive a confirmation that your payment has been\r\n processed – this is not a receipt.

    \r\n

    Once your payment is complete, you will be transferred back to MyGPhC. You have finished your renewal.\r\n

    \r\n

    \r\n If you already have a yearly or quarterly Direct Debit set up to pay your renewal fee, all you will need\r\n to do is complete your renewal declarations by the date given in your renewal notice. Once you have done this,\r\n you will have finished your renewal.\r\n

    \r\n\r\n

    Step 4: Collect your receipt

    \r\n

    If you need a receipt for your renewal payment, you can view and download one from the\r\n Receipts page.

    \r\n

    If you paid by card it may take up to 48 hours for your receipt to show.

    \r\n

    If you are paying by Direct debit, it may take up to 21 days for your payment receipt to show.

    \r\n

    If you are paying by quarterly Direct Debit, each time a payment is taken the amount paid and amount still owing\r\n will be updated on your receipt.

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

    \r\n \r\n

    \r\n
    \r\n

    \r\n You can renew your registration using myGphC at any point once you receive your renewal letter, or your renewal status shows\r\n as ‘Due’ on myGphC, until your ‘renewal due date’ – two months before your registration expires. See the How\r\n do I renew? section if you need help to renew your registration.

    \r\n

    \r\n If you do not renew your registration before your renewal due date and you do not want to be removed from the register, contact\r\n us.\r\n

    \r\n

    \r\n\r\n

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

    \r\n \r\n

    \r\n
    \r\n

    If you need a receipt for your renewal payment, you can view and download one from the ‘Receipts’ page.

    \r\n

    If you paid by card it may take up to 48 hours for your receipt to show.

    \r\n

    If you are paying by Direct debit, it may take up to 21 days for your payment receipt to show.

    \r\n

    \r\n If you are paying by quarterly Direct Debit, each time a payment is taken the amount paid and amount still owing will be\r\n updated on your receipt.

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

    \r\n \r\n

    \r\n
    \r\n

    Depending on the type of card you use, you may be asked to enter a password before you can finish making your\r\n payment. This is part of 3-D Secure, a password-based security system that your bank has introduced to reduce\r\n the risks of fraudulent card use.\r\n

    \r\n

    Different card providers use different names for this services, for example:\r\n

    \r\n
      \r\n
    • Visa: Verified by Visa
    • \r\n
    • MasterCard: MasterCard SecureCode
    • \r\n
    • JCB International: J/Secure
    • \r\n
    \r\n

    If your bank uses 3d Secure and you don’t have a password, you may be asked to set one up. If you are not sure\r\n what to do, contact your bank.\r\n

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

    \r\n \r\n

    \r\n
    \r\n

    \r\n Depending on the type of card you use, you may be asked to enter a password before you can finish making your payment. This\r\n is part of 3-D Secure, a password-based security system that your bank has introduced to reduce the risks of\r\n fraudulent card use.

    \r\n

    \r\n Different card providers use different names for this services, for example:

    \r\n
      \r\n
    • Visa: Verified by Visa
    • \r\n
    • MasterCard: MasterCard SecureCode
    • \r\n
    • JCB International: J/Secure
    • \r\n
    \r\n

    \r\n If your bank uses 3d Secure and you don’t have a password, you may be asked to set one up. If you are not sure what to do,\r\n contact your bank.

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

    \r\n \r\n

    \r\n
    \r\n

    Completing your renewal using myGPhC involves submitting information which is sent as electronic data over the\r\n internet. Using your web browser's ‘Back’ button or ‘History’ feature can interrupt the sending of the information\r\n you have submitted, and some of it may be lost. If you try to use these features during your registration renewal,\r\n you will see a pop up box which will ask you to either continue or start the process again.\r\n

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

    \r\n \r\n

    \r\n
    \r\n

    If you want to pay Direct Debit, you will need to set one up by the date set out in your renewal notice to make\r\n sure you can complete the process in time.\r\n

    \r\n

    You can pay:\r\n

    \r\n
      \r\n
    • a one off annual fee
    • \r\n
    • a portion each quarter (every three months from the date of your renewal)
    • \r\n
    \r\n

    We will take payments on the first working day of each month. We will send you a payment schedule to show the\r\n payments and the date(s) we will take them.\r\n

    \r\n

    To set up a direct debit you will need to:\r\n

    \r\n
      \r\n
    1. Download a Direct Debit mandate form from the GPhC website.\r\n
    2. \r\n
    3. Fill in the form - use your registration number as the payment reference, and tick one of the boxes to show\r\n if you want to pay annually or quarterly.
    4. \r\n
    5. Send the form to us at registers@pharmacyregulation.org, or to our postal address below. The form must reach\r\n us before the date shown in Step 4 of your renewal notice.
    6. \r\n
    \r\n

    Send your form to:\r\n

    \r\n
    \r\n Registration Team\r\n
    General Pharmaceutical Council\r\n
    Level 14\r\n
    One Cabot Square\r\n
    London\r\n
    E14 4QJ\r\n\r\n
    \r\n\r\n

    We will send you an email notice to confirm that your Direct Debit has been set up, and a payment schedule to\r\n show the payments and the date(s) we will take them.\r\n

    \r\n

    The notice will also give you a new deadline by which you must make your renewal declarations. If you do not\r\n complete your declarations in time, the Direct Debit will not be collected and you will need to make your full\r\n registration payment using a debit or credit card.\r\n

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

    \r\n \r\n

    \r\n
    \r\n

    If you want to change from paying by direct debit to paying by card, you will need to tell us before you start\r\n your registration renewal.\r\n Allow at least six weeks to before your registration renewal is due to make sure you can make the change.\r\n

    \r\n

    To change from paying by Direct Debit to paying by card, you must:\r\n

    \r\n
      \r\n
    1. Check your payment schedule if you pay quarterly, to see if you have any outstanding payments to make. If you\r\n do, contact us on\r\n 020 3713 8000 and we will take payment over the phone by credit or debit card. This will avoid any administration\r\n fees for incomplete payments.
    2. \r\n
    3. Contact your bank to cancel your Direct Debit.
    4. \r\n
    5. Send an email to us at\r\n registers@pharmacyregulation.org to confirm that you have cancelled your Direct Debit with your bank.\r\n Tell us your registration number so we can find your details easily and make sure that they are updated.
    6. \r\n
    7. We will send you an email giving a new date by which you need to complete your registration renewal. If you\r\n do not receive an email from us within 10 working days of your email, contact us.
    8. \r\n
    9. Sign in to myGPhC to renew your registration. After your have completed the declarations section, you should\r\n be able to pay your renewal fee by card.
    10. \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n

    \r\n \r\n

    \r\n
    \r\n

    If you want to change how often you make a Direct Debit payment, you need to tell us before you start your registration\r\n renewal. Please see your renewal notice to find the date by which you will need to make the change, but\r\n make sure you allow at least eight weeks to before your registration renewal is due.\r\n

    \r\n

    To change how often you make a Direct Debit payment, you must:\r\n

    \r\n
      \r\n
    • Send an email to us at\r\n registers@pharmacyregulation.org. Tell us your registration number and how you want to change your Direct\r\n Debit (from annually to quarterly, for example).
    • \r\n
    • We will send you an email to confirm we have made the change.
    • \r\n
    • Complete your registration renewal declarations as usual.
    • \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n

    \r\n \r\n

    \r\n
    \r\n

    If you want to change the bank details we use to collect Direct Debit payments from you, you will need to set\r\n up a new Direct Debit by completing a new Direct Debit mandate form.

    \r\n

    If you are using the\r\n current account switching service to change accounts, we will automatically be notified of the change,\r\n so you don’t need to complete a form.\r\n

    \r\n

    \r\n Important: We take payments on the first working day of the month they are due. Please make sure that we know\r\n about any changes at least five working days before a payment is due to be taken so that we can make sure\r\n we request the payment from the right account. If a payment is refused, you will need to pay the outstanding\r\n amount by credit or debit card.\r\n

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

    \r\n \r\n

    \r\n
    \r\n

    If you don’t want or need to be registered with the GPhC any longer, you should tell us by completing a\r\n voluntary removal form and we will remove your details from the register.\r\n

    \r\n

    This helps us to keep the register up to date and to show your status accurately.\r\n

    \r\n

    There is no charge to process your voluntary removal form. You can submit it any time until your registration\r\n expiry date, and you can chose when your details are removed from the register if you want.\r\n

    \r\n

    If you complete a voluntary removal form and later want to be restored to the register, this process can be carried\r\n out more easily and with a lower fee than if you take no action and let your registration lapse.\r\n

    \r\n

    If you have already completed you registration renewal and then decide that you want to be removed from the register,\r\n we will refund your registration fee if we receive your voluntary removal form before your registration expiry\r\n date.\r\n

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

    \r\n \r\n

    \r\n
    \r\n

    If you have attempted to renew your registration after your renewal date and have not been able to, you will\r\n need to complete a restoration application.

    \r\n

    Restoration applications can take 28 days to process, so you should fill in the application as soon as possible.

    \r\n

    If you pay by Direct Debit and you do not complete your renewal declarations by the deadline in your renewal\r\n notice, your Direct Debit will be cancelled. You have until your renewal due date to make your declarations\r\n and pay your renewal fee by credit or debit card.

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

    \r\n \r\n

    \r\n
    \r\n

    \r\n If you pay by Direct Debit and you do not complete your renewal declarations by the deadline in your renewal notice, your\r\n Direct Debit will be cancelled. You have until your renewal due date to make your declarations and pay your\r\n renewal fee by credit or debit card.\r\n

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

    \r\n \r\n

    \r\n
    \r\n

    There is a standard fee to renew your registration as a pharmacist or pharmacy technician for a year. If you\r\n practice as a pharmacy professional at any point during that time, you must pay the whole renewal fee.\r\n

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

    \r\n \r\n

    \r\n
    \r\n

    There is a standard fee to renew your registration as a pharmacist or pharmacy technician for a year. If you\r\n practice as a pharmacy professional at any point during that time, you must pay the whole renewal fee - we\r\n will not refund any part of it.\r\n

    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    ","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { creditCards, CreditCard } from './model/CreditCard';\r\nimport { Renewal } from './model/Renewal';\r\nimport { RenewalPaymentMethod } from './model/RenewalPaymentMethod';\r\n\r\n@Component({\r\n selector: 'app-renewal-splash',\r\n moduleId: module.id,\r\n templateUrl: './renewalSplash.component.html',\r\n styleUrls: ['renewalSplash.scss']\r\n})\r\nexport class RenewalSplashComponent {\r\n creditCards: Array = creditCards;\r\n @Input() renewal: Renewal;\r\n @Output() onStart = new EventEmitter();\r\n\r\n RenewalPaymentMethod = RenewalPaymentMethod;\r\n\r\n start() {\r\n this.onStart.emit();\r\n }\r\n}\r\n\r\n","
    \r\n
    \r\n
    \r\n
    \r\n

    Direct Debit\r\n single\r\n quarterly payment\r\n

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

    \r\n You have a direct debit in place so you will not have to make a card payment to process your renewal.\r\n

    \r\n
    \r\n Please see your renewal notice to find out when your Direct Debit payment will be taken. Your receipt will be available to\r\n download after\r\n your Direct Debit payment has been taken.\r\n the first Direct Debit payment has been taken. The amount paid and amount still owing displayed on this receipt\r\n will be updated after each payment is taken.\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Card payments

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

    \r\n We can only accept payments made in pounds sterling (GBP).\r\n

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

    \r\n When you make a card payment, you may be redirected to your card provider’s site to enter another password before they authorise\r\n your payment. You can find out more about 3-D Secure authentication from your card provider.\r\n

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \"Worldpay\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Receipts

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

    \r\n You can view and print receipts for your renewal payments by going to the\r\n receipts page.\r\n

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

    Refund Policy

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

    \r\n We do not give refunds of renewal fee payments unless we have made a mistake in processing your payment.\r\n

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

    Renewal status

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

    Complete

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

    \r\n Not due\r\n

    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n Start\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n \r\n
    \r\n
    \r\n

    Questions about renewal?

    \r\n
    \r\n

    \r\n Click here for supporting materials and more information about the process\r\n

    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    ","\r\nexport enum PerformanceIndicator {\r\n\r\n Unknown = 0,\r\n ReviewAtRandomAfterTwoYears = 1,\r\n ReviewNextYear = 3,\r\n CoreCriteriaNotMet = 4\r\n\r\n}\r\n","import { RevalidationItemType } from '../../shared/model/revalidation/RevalidationItemType';\r\nimport { IProgress } from '../../shared/IProgress';\r\nimport { CpdEntry } from '../../shared/model/review/CpdEntry';\r\nimport { Feedback } from './Feedback';\r\nimport { ReviewStage } from './ReviewStage';\r\nimport { FeedbackConfirmation } from './FeedbackConfirmation';\r\nimport { PerformanceIndicator } from './PerformanceIndicator';\r\nimport { Message } from './Message';\r\nimport { RegistrantType } from '../../registration/model/RegistrantType';\r\n\r\nexport class Review {\r\n id: string;\r\n submissionDate: string;\r\n reviewerConfirmation: FeedbackConfirmation;\r\n stage: ReviewStage;\r\n title: string;\r\n discussionStatus;\r\n isFeedbackEditable: boolean;\r\n isLeadReviewer: boolean;\r\n messages: Array;\r\n entries: CpdEntry[];\r\n feedback: Feedback;\r\n feedbacks: Array = [];\r\n currentReviewerAssessment: PerformanceIndicator;\r\n otherReviewerAssessment: PerformanceIndicator;\r\n registrantType: RegistrantType;\r\n\r\n constructor(data) {\r\n Object.assign(this, data);\r\n if (!this.feedbacks[0]) {\r\n this.feedback = { };\r\n } else {\r\n this.feedback = this.feedbacks[0];\r\n }\r\n\r\n }\r\n isCoreCriteriaFeedbackRequired() {\r\n return +this.feedback.performanceIndicator === +PerformanceIndicator.ReviewNextYear ||\r\n +this.feedback.performanceIndicator === +PerformanceIndicator.CoreCriteriaNotMet;\r\n }\r\n\r\n getIsCompleted() {\r\n return false;\r\n }\r\n\r\n getTotal() {\r\n switch (this.stage) {\r\n case ReviewStage.Annotate:\r\n // an annotation for each entry\r\n // currentReviewerAssessment\r\n return this.entries.length + 1;\r\n case ReviewStage.WriteFeedback:\r\n // a feedback entry for each section\r\n // final assessment\r\n return this.isLeadReviewer ? 5 : 0;\r\n }\r\n }\r\n\r\n getProgress() {\r\n switch (this.stage) {\r\n case ReviewStage.Annotate:\r\n // an annotation for each entry\r\n // currentReviewerAssessment\r\n const annotationCount = this.entries.filter(e => e.currentReviewerAnnotation).length;\r\n return annotationCount + (this.currentReviewerAssessment !== PerformanceIndicator.Unknown ? 1 : 0);\r\n case ReviewStage.WriteFeedback:\r\n\r\n if (!this.isLeadReviewer) { return 0; }\r\n // a feedback entry for each section\r\n // final assessment\r\n let completed = 0;\r\n if (this.feedback.peerDiscussionFeedback !== undefined &&\r\n this.feedback.peerDiscussionFeedback.trim() !== '') {\r\n completed++;\r\n }\r\n if (this.feedback.plannedCpdFeedback !== undefined &&\r\n this.feedback.plannedCpdFeedback.trim() !== '') {\r\n completed++;\r\n }\r\n if (this.feedback.unplannedCpdFeedback !== undefined &&\r\n this.feedback.unplannedCpdFeedback.trim() !== '') {\r\n completed++;\r\n }\r\n if (this.feedback.reflectiveAccountFeedback !== undefined &&\r\n this.feedback.reflectiveAccountFeedback.trim() !== '') {\r\n completed++;\r\n }\r\n if (this.feedback.performanceIndicator !== PerformanceIndicator.Unknown) {\r\n completed++;\r\n }\r\n return completed;\r\n }\r\n return 0;\r\n }\r\n}\r\n","export enum ReviewStage {\r\n Unknown = 0,\r\n /// \r\n /// Awaiting the Reviewers Annotations and the setting of the Initial PerformanceIndicator.\r\n /// \r\n Annotate = 1,\r\n /// \r\n /// The discussion phase has started between the reviewers.\r\n /// \r\n Discuss = 2,\r\n /// \r\n /// It's in the Feedback Stage (both Reviewers has set an Initial PerformanceIndicator).\r\n /// \r\n WriteFeedback = 3,\r\n /// \r\n /// LeadReviewer is awaiting Feedback Confirmation from SecondaryReviewer.\r\n /// \r\n AwaitingFeedbackApprovalByPeer = 4,\r\n /// \r\n /// Feedback Submitted for Approval. This means that QA is in progress.\r\n /// \r\n AwaitingFeedbackApprovalByQualityAssurer = 5,\r\n /// \r\n /// The QA has initiated a discussion with the reviewers.\r\n /// \r\n QualityAssuranceReviewDiscussion = 6,\r\n /// \r\n /// The QA has approved the Feedback.\r\n /// \r\n QualityAssuranceCompleted = 7,\r\n /// \r\n /// If the QA Manager has flagged this as needing further QA by a Manager.\r\n /// \r\n AwaitingFeedbackApprovalByQualityAssuranceManager = 8,\r\n /// \r\n /// The QA Manager has approved the Feedback.\r\n /// \r\n Approved = 9,\r\n /// \r\n /// GPhC QA has approved the Feedback.\r\n /// \r\n ReadyToBeSent = 10,\r\n /// \r\n /// Feedback has been sent to Registrant.\r\n /// \r\n FeedbackSent = 100\r\n}\r\n","import { IProgress } from '../../shared/IProgress';\r\nimport { ReviewStage } from './ReviewStage';\r\nimport { FeedbackConfirmation } from './FeedbackConfirmation';\r\nimport { PerformanceIndicator } from './PerformanceIndicator';\r\n\r\nexport class ReviewSummaryItem {\r\n id: string;\r\n createdAt: string;\r\n currentGPhCId: string;\r\n isLead: boolean;\r\n isBlocking: boolean;\r\n leadReviewerAssessment: number;\r\n modifiedAt: string;\r\n leadReviewerId: string;\r\n progressPercentage: number;\r\n reviewDeadline: string;\r\n reviewerAssessment: number;\r\n reviewerId: string;\r\n stage: ReviewStage;\r\n submissionId: string;\r\n title: string;\r\n\r\n/*\r\n reviewerConfirmation: FeedbackConfirmation;\r\n reviewAnnotations;\r\n reviewMessages;\r\n cpdReviewFeedback;\r\n*/\r\n\r\n getTotal() {\r\n return 100;\r\n }\r\n getProgress() {\r\n return this.progressPercentage;\r\n }\r\n getIsCompleted() {\r\n return false;\r\n }\r\n}\r\n","import { Component, Input, OnInit, Output, EventEmitter, forwardRef } from '@angular/core';\r\nimport { FormControl } from '@angular/forms';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\r\nimport { startWith, map } from 'rxjs/operators';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-autocomplete',\r\n templateUrl: './autocomplete.component.html',\r\n styleUrls: ['./autocomplete.scss'],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => AutocompleteComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class AutocompleteComponent implements OnInit, ControlValueAccessor {\r\n\r\n myControl: FormControl = new FormControl();\r\n @Input() options;\r\n @Input() name;\r\n @Input() id;\r\n @Input() class;\r\n @Input() placeholder;\r\n value = '';\r\n\r\n filteredOptions: Observable;\r\n\r\n ngOnInit() {\r\n this.filteredOptions = this.myControl.valueChanges\r\n .pipe(\r\n startWith(null),\r\n map(val => val ? this.filter(val) : this.options.slice())\r\n );\r\n this.myControl.setValue(this.value);\r\n }\r\n\r\n filter(val: string): string[] {\r\n return this.options.filter(\r\n option =>\r\n option.toLowerCase().indexOf(val.toLowerCase()) === 0);\r\n }\r\n\r\n trySelect() {\r\n\r\n const filter = this.options.filter(option => option.toLowerCase() === this.myControl.value.toLowerCase());\r\n\r\n if (filter.length) {\r\n this.value = filter[0];\r\n this.propagate();\r\n }\r\n }\r\n\r\n onOptionSelected($event) {\r\n this.value = this.options.filter(option => option === $event.option.value)[0];\r\n this.propagate();\r\n }\r\n\r\n propagate() {\r\n this.propagateChange(this.myControl.value);\r\n }\r\n\r\n writeValue(value: any) {\r\n if (value) {\r\n this.value = value;\r\n this.myControl.setValue(this.value);\r\n }\r\n }\r\n propagateChange = (model: any) => {};\r\n registerOnChange(fn) {\r\n this.propagateChange = fn;\r\n }\r\n registerOnTouched() {}\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, Input, AfterViewInit, OnDestroy, ElementRef, ViewChild } from '@angular/core';\r\nimport { LayoutState } from '../core/model/LayoutState';\r\nimport { BannerState } from '../core/model/BannerState';\r\nimport { LayoutService } from '../core/service/layout.service';\r\n\r\n@Component({\r\n selector: 'app-banner',\r\n moduleId: module.id,\r\n templateUrl: './banner.component.html',\r\n styleUrls: ['./banner.scss']\r\n})\r\nexport class BannerComponent implements OnInit, AfterViewInit {\r\n\r\n @ViewChild('focusMain') focusMain: ElementRef;\r\n\r\n @Input() loading = false;\r\n @Input() leftColWidth = 7;\r\n @Input() info = false;\r\n @Input() application = false;\r\n @Input() error = false;\r\n @Input() important = false;\r\n @Input() progressDark = false;\r\n @Input() noButtons = false;\r\n rightColWidth = 5;\r\n /*\r\n layoutState: LayoutState;\r\n layoutStateSub;\r\n */\r\n constructor(public layout: LayoutService) { }\r\n\r\n ngOnInit() {\r\n let state = BannerState.default;\r\n if (this.info) {\r\n state = BannerState.info;\r\n }\r\n if (this.important) {\r\n state = BannerState.important;\r\n }\r\n if (this.application) {\r\n state = BannerState.application;\r\n }\r\n this.rightColWidth = 12 - this.leftColWidth;\r\n this.layout.setBannerState(state);\r\n /*\r\n this.layoutState = this.layout.state;\r\n this.layoutStateSub = this.layout.onChange.subscribe(state => {\r\n this.layoutState = state;\r\n });\r\n */\r\n }\r\n\r\n ngAfterViewInit() {\r\n // focus the main page title for screen reader UX\r\n let childElement = this.focusMain.nativeElement?.children[0].children[0];\r\n if (childElement) {\r\n childElement.setAttribute(\"tabindex\", 0);\r\n childElement.focus();\r\n childElement.setAttribute(\"class\", \"focus-outline-hide\");\r\n } \r\n }\r\n\r\n // ngOnDestroy() {\r\n // // this.layoutStateSub.unsubscribe();\r\n // }\r\n}\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, Input, AfterViewInit, OnDestroy, HostBinding } from '@angular/core';\r\nimport { LayoutState } from '../core/model/LayoutState';\r\nimport { BannerState } from '../core/model/BannerState';\r\nimport { LayoutService } from '../core/service/layout.service';\r\n\r\n@Component({\r\n selector: 'app-banner2',\r\n moduleId: module.id,\r\n templateUrl: './banner2.component.html',\r\n styleUrls: ['./banner2.scss']\r\n})\r\nexport class Banner2Component implements OnInit {\r\n\r\n\r\n @Input() loading = false;\r\n @Input() updating = false;\r\n @Input() leftColWidth = 7;\r\n @Input() info = false;\r\n @Input() error = false;\r\n @Input() important = false;\r\n @Input() heading = 'loading...';\r\n @Input() subHeading: string;\r\n\r\n // if heading is dependant on async data, it will slide down when ready if this is set to true\r\n @Input() dynamicHeading: boolean;\r\n @Input() @HostBinding('class.toolbar') toolbar: boolean;\r\n rightColWidth = 5;\r\n /*\r\n layoutState: LayoutState;\r\n layoutStateSub;\r\n */\r\n constructor(public layout: LayoutService) { }\r\n\r\n ngOnInit() {\r\n let state = BannerState.default;\r\n if (this.info) {\r\n state = BannerState.info;\r\n }\r\n if (this.important) {\r\n state = BannerState.important;\r\n }\r\n this.rightColWidth = 12 - this.leftColWidth;\r\n this.layout.setBannerState(state);\r\n /*\r\n this.layoutState = this.layout.state;\r\n this.layoutStateSub = this.layout.onChange.subscribe(state => {\r\n this.layoutState = state;\r\n });\r\n */\r\n }\r\n/*\r\n ngOnDestroy() {\r\n this.layoutStateSub.unsubscribe();\r\n }\r\n*/\r\n\r\n}\r\n","
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    {{heading}}

    \r\n

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

    {{heading}}

    \r\n

    {{subHeading}}

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n","import { Component, Input, Output, EventEmitter, OnChanges, OnInit, ElementRef } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-carousel-nav',\r\n templateUrl: './carousel-nav.component.html'\r\n})\r\n\r\nexport class CarouselNavComponent {\r\n @Input() items = [];\r\n @Input() selectedIndex;\r\n @Input() label = 'items';\r\n @Output() onIndexSelected = new EventEmitter();\r\n\r\n select(index) {\r\n this.onIndexSelected.emit({ index });\r\n }\r\n\r\n next() {\r\n if (this.selectedIndex < this.items.length - 1) {\r\n this.selectedIndex++;\r\n this.select(this.selectedIndex);\r\n }\r\n }\r\n\r\n prev() {\r\n if (this.selectedIndex > 0) {\r\n this.selectedIndex--;\r\n this.select(this.selectedIndex);\r\n }\r\n }\r\n\r\n}\r\n","\r\n\r\n \r\n
    \r\n {{ item.title }}\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    ","import { Component, Input, Output, EventEmitter, Inject, QueryList,\r\n OnChanges, OnInit, AfterViewInit, ElementRef, NgZone, ViewChildren, TemplateRef } from '@angular/core';\r\nimport { LogService } from '../core/service/log.service';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { FocusTrap, FocusTrapFactory } from '@angular/cdk/a11y';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport isEqual from 'lodash.isequal';\r\nimport { fromEvent } from 'rxjs';\r\nimport { debounceTime } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-carousel',\r\n templateUrl: './carousel.component.html',\r\n styleUrls: ['carousel.component.scss']\r\n})\r\n/*\r\n *\r\n * @param() items - List of items to belong in carousel\r\n * @param() width - Size of window(view) to show\r\n * @param() $prev - Template for previous button\r\n * @param() $next - Template for next button\r\n * @param() $item - Template for the item\r\n*/\r\nexport class CarouselComponent implements OnChanges, AfterViewInit {\r\n @Input() items = [];\r\n @Input() margin = 1;\r\n @Input() $prev;\r\n @Input() $next;\r\n @Input() $item;\r\n @ViewChildren('template') templates: QueryList>;\r\n @Output() selectedItem: EventEmitter = new EventEmitter();\r\n @Output() scrollStart: EventEmitter = new EventEmitter();\r\n @Output() scrollEnd: EventEmitter = new EventEmitter();\r\n\r\n private focusTrap: FocusTrap;\r\n private previouslyFocussedElement: HTMLElement | null = null;\r\n\r\n\r\n @Input() set selectedIndex(value) {\r\n\r\n if (value === this.childIndex) { return; }\r\n const diff = value - this.childIndex;\r\n for (let i = 0; i < Math.abs(diff); i++) {\r\n this.scroll(diff > 0);\r\n }\r\n if (this.templates) {\r\n this.trapFocus(this.templates.toArray()[this.childIndex]);\r\n }\r\n }\r\n @Input() set layoutChange(value) {\r\n // this.setWidth();\r\n }\r\n\r\n childIndex = 0;\r\n amount = 0;\r\n startPress = 0;\r\n lastX = 0;\r\n container: any;\r\n @Input() width;\r\n\r\n slideEnabled = false;\r\n hasMargin = false;\r\n constructor(private zone: NgZone, private elementRef: ElementRef, private log: LogService, private focusTrapFactory: FocusTrapFactory,\r\n @Inject(DOCUMENT) private document: any) { }\r\n\r\n ngAfterViewInit() {\r\n\r\n const element = this.elementRef.nativeElement;\r\n this.container = element.parentNode;\r\n this.setWidth();\r\n this.trapFocus(this.templates.toArray()[0]);\r\n\r\n fromEvent(window, 'resize')\r\n .pipe(debounceTime(100))\r\n .subscribe(this.setWidth.bind(this));\r\n\r\n }\r\n\r\n\r\n\r\n\r\n\r\n setWidth() {\r\n // if (this.width) { return; }\r\n if (!this.container) { return; }\r\n setTimeout(() => {\r\n const width = this.getBoundingClientRectValue(this.container, 'width');\r\n this.hasMargin = width > 800;\r\n if (this.hasMargin) {\r\n this.width = width - 50;\r\n } else {\r\n this.width = width;\r\n }\r\n this.startPress = 1;\r\n setTimeout(() => {\r\n this.amount = -(this.calcScroll());\r\n this.startPress = 0;\r\n }, 100);\r\n }, 10);\r\n }\r\n\r\n private getBoundingClientRectValue(element: any, property: string): number {\r\n let result = 0;\r\n if (element.getBoundingClientRect) {\r\n const rect = element.getBoundingClientRect();\r\n result = (typeof rect[property] !== 'undefined') ? rect[property] : 0;\r\n }\r\n return result;\r\n }\r\n\r\n onMousedown(e: MouseEvent) {\r\n if (!this.slideEnabled) { return; }\r\n if (e.which === 1) {\r\n this.startPress = e.clientX;\r\n this.lastX = this.amount;\r\n }\r\n }\r\n onTouchdown(e: TouchEvent) {\r\n if (!this.slideEnabled) { return; }\r\n if (navigator.userAgent.indexOf('Android') >= 0) { e.preventDefault(); }\r\n this.startPress = e.targetTouches[0].clientX;\r\n this.lastX = this.amount;\r\n }\r\n\r\n onMousemove(e: MouseEvent, maxWidth: number) {\r\n if (!this.slideEnabled) { return; }\r\n if (e.which === 1) {\r\n const amount = this.lastX - (this.startPress - e.clientX);\r\n if (amount > 0 || amount < -(maxWidth - this.width)) { return; }\r\n this.amount = amount;\r\n }\r\n }\r\n onTouchmove(e: TouchEvent, maxWidth: number) {\r\n if (!this.slideEnabled) { return; }\r\n if (navigator.userAgent.indexOf('Android') >= 0) { e.preventDefault(); }\r\n const amount = this.lastX - (this.startPress - e.targetTouches[0].clientX);\r\n if (amount > 0 || amount < -(maxWidth - this.width)) { return; }\r\n this.amount = amount;\r\n }\r\n\r\n onMouseup(e: MouseEvent, elem) {\r\n if (!this.slideEnabled) { return; }\r\n if (e.which === 1) {\r\n this.startPress = 0;\r\n this.snap();\r\n }\r\n }\r\n\r\n onTouchup(e: TouchEvent, elem) {\r\n if (!this.slideEnabled) { return; }\r\n if (navigator.userAgent.indexOf('Android') >= 0) { e.preventDefault(); }\r\n this.startPress = 0;\r\n this.snap();\r\n }\r\n\r\n snap() {\r\n\r\n let counter = 0;\r\n let lastVal = 0;\r\n for (let i = 0; i < this.items.length; i++) {\r\n counter += this.width;\r\n if (this.amount <= lastVal && this.amount >= -counter) {\r\n this.amount = -lastVal;\r\n this.childIndex = i;\r\n this.selectedItem.emit({ item: this.items[this.childIndex], index: this.childIndex });\r\n return;\r\n }\r\n lastVal = counter;\r\n }\r\n return counter;\r\n }\r\n\r\n scroll(forward) {\r\n this.scrollStart.emit();\r\n setTimeout(() => {\r\n this.scrollEnd.emit();\r\n }, 1000);\r\n this.childIndex += forward ? 1 : -1;\r\n this.selectedItem.emit({\r\n item: this.items[this.childIndex],\r\n index: this.childIndex\r\n });\r\n this.amount = -(this.calcScroll());\r\n }\r\n\r\n calcScroll() {\r\n return this.width * this.childIndex;\r\n }\r\n\r\n ngOnChanges(changes) {\r\n if (changes.items && !isEqual(changes.items.previousValue, changes.items.currentValue)) {\r\n this.amount = 0;\r\n }\r\n }\r\n\r\n private trapFocus(element) {\r\n if (!element) { return; }\r\n setTimeout(() => {\r\n if (this.focusTrap) {\r\n this.focusTrap.destroy();\r\n this.focusTrap = undefined;\r\n }\r\n this.focusTrap = this.focusTrapFactory.create(element.nativeElement);\r\n }, 10);\r\n // this.focusTrap.focusInitialElement();\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    0 ? 'none' : '-webkit-transform 500ms'\"\r\n [style.webkitTransition]=\"startPress > 0 ? 'none' : '-webkit-transform 500ms'\" \r\n [style.transform]=\"'translateX('+amount+'px)'\"\r\n [style.webkitTransform]=\"'translateX('+amount+'px)'\"\r\n [style.width]=\"(items.length * width) + 'px'\"\r\n \r\n #carousel>\r\n\r\n
    \r\n\r\n \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    ","import { Component, Input, Output, EventEmitter} from '@angular/core';\r\nimport {\r\n trigger,\r\n state,\r\n style,\r\n animate,\r\n transition\r\n} from '@angular/animations';\r\n\r\n@Component({\r\n selector: 'app-collapsible',\r\n moduleId: module.id,\r\n templateUrl: 'collapsible.component.html',\r\n styleUrls: ['./collapsible.scss'],\r\n animations: [\r\n trigger('openState', [\r\n state('open', style({\r\n height: '*',\r\n opacity: '1',\r\n // display: 'block'\r\n visibility: 'visible'\r\n })),\r\n state('closed', style({\r\n height: '0',\r\n opacity: '0',\r\n // display: 'none'\r\n visibility: 'hidden'\r\n })),\r\n transition('open => closed', animate('250ms cubic-bezier(0, 0, 0.2, 1)')),\r\n transition('closed => open', animate('250ms cubic-bezier(0, 0, 0.2, 1)'))\r\n ])\r\n ]\r\n})\r\nexport class CollapsibleComponent {\r\n\r\n openState = 'closed';\r\n @Input() overlay = false; // not currently implemented\r\n open = false;\r\n @Input() set trigger(value) {\r\n if (value === undefined) { return; }\r\n this.openState = value ? 'open' : 'closed';\r\n if (!value) {\r\n setTimeout(() => {\r\n this.open = value;\r\n }, 300);\r\n } else {\r\n this.open = 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 ","import { Component, Inject, Input } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n@Component({\r\n selector: 'app-confirm-dialog',\r\n templateUrl: 'confirmDialog.html',\r\n styles: [`mat-dialog-actions {\r\n button:focus { box-shadow: 0 0 0 2px #fcc340 !important; }\r\n }`]\r\n})\r\nexport class ConfirmDialogComponent {\r\n\r\n defaultMessage = 'The action is irreversible - are you sure?';\r\n defaultTitle = 'Delete item';\r\n allowCancel = true;\r\n allowNext = true;\r\n confirmProgressReport = false;\r\n confirmFinalDeclaration = false;\r\n\r\n get message(): string {\r\n if (this.data && this.data.message) {\r\n return this.data.message;\r\n }\r\n return this.defaultMessage;\r\n }\r\n\r\n get title(): string {\r\n if (this.data && this.data.title) {\r\n return this.data.title;\r\n }\r\n return this.defaultTitle;\r\n }\r\n\r\n constructor(public dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) public data: any) {\r\n\r\n if (data.allowCancel === false) {\r\n this.allowCancel = false;\r\n }\r\n\r\n this.confirmProgressReport = data.confirmProgressReport;\r\n this.confirmFinalDeclaration = data.confirmFinalDeclaration;\r\n\r\n if (data.allowNext === false) {\r\n this.allowNext = false;\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
    {{ data.cancelText || 'No' }}
    \r\n
    \r\n\r\n
    \r\n \r\n
    {{ data.confirmText || 'Yes' }}
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { Component, Input, Output, EventEmitter, OnInit} from '@angular/core';\r\nimport { min, max } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-daterange',\r\n moduleId: module.id,\r\n templateUrl: 'daterange.component.html',\r\n styleUrls: ['./daterange.scss']\r\n})\r\nexport class DaterangeComponent implements OnInit {\r\n\r\n\r\n @Input() fromDate: string;\r\n @Input() fromMin: Date;\r\n @Input() fromMax: Date;\r\n @Input() overlapError = false;\r\n @Input() overlapErrorMessage;\r\n @Input() toDate: string;\r\n @Input() toMin: Date;\r\n @Input() toMax: Date;\r\n @Input() readonly = false;\r\n @Input() touched;\r\n @Output() changed = new EventEmitter<{from: string, to: string}>();\r\n @Input() width = '200px';\r\n @Input() endDateTitle = 'End date';\r\n errorMessages = [];\r\n valid = true;\r\n\r\n @Input() fromDateTooEarlyMessage;\r\n @Input() toDateTooEarlyMessage;\r\n @Input() fromDateTooLateMessage;\r\n @Input() toDateTooLateMessage;\r\n @Input() isPastDateAllowed = true;\r\n ngOnInit() {\r\n this.validate();\r\n }\r\n\r\n validate() {\r\n\r\n this.errorMessages = [];\r\n\r\n if (!this.fromDate || !this.toDate) {\r\n return;\r\n }\r\n const todayDate = new Date();\r\n todayDate.setHours(0,0,0,0);\r\n \r\n const from = new Date(this.fromDate);\r\n const to = new Date(this.toDate);\r\n if (from > to) {\r\n this.errorMessages.push('Invalid date range - end date must be after start date');\r\n }\r\n if (this.fromMin !== undefined && from < this.fromMin) {\r\n this.errorMessages.push(this.fromDateTooEarlyMessage || 'Start date is too early');\r\n }\r\n if (this.fromMax !== undefined && from > this.fromMax) {\r\n this.errorMessages.push(this.fromDateTooLateMessage || 'Start date is too late');\r\n }\r\n if (this.toMin !== undefined && to < this.fromMin) {\r\n this.errorMessages.push(this.toDateTooEarlyMessage || 'End date is too early');\r\n }\r\n if (this.toMin !== undefined && to < this.fromMin) {\r\n this.errorMessages.push(this.toDateTooLateMessage || 'End date is too late');\r\n }\r\n if(!this.isPastDateAllowed)\r\n {\r\n if(from < todayDate)\r\n {\r\n this.errorMessages.push('Start date cannot be in the past');\r\n }\r\n }\r\n\r\n this.changed.emit({from: this.fromDate, to: this.toDate });\r\n\r\n this.valid = !this.errorMessages.length;\r\n\r\n }\r\n\r\n \r\n\r\n}\r\n","
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n\r\n

    \r\n {{ message }}\r\n

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

    \r\n {{ overlapErrorMessage || 'Dates must not overlap' }}\r\n

    \r\n
    \r\n","import { Component, Input, ViewChild, AfterViewInit, HostBinding, ElementRef } from '@angular/core';\r\nimport { FaqService } from './faq.service';\r\nimport { FaqDirective } from './faq.directive';\r\n\r\nimport {\r\n trigger,\r\n state,\r\n style,\r\n animate,\r\n transition\r\n} from '@angular/animations';\r\n\r\n@Component({\r\n selector: 'app-faq',\r\n templateUrl: './faq.component.html',\r\n styleUrls: ['./faq.scss'],\r\n animations: [\r\n trigger('openState', [\r\n state('open', style({\r\n height: '*'\r\n })),\r\n state('closed', style({\r\n height: '0'\r\n })),\r\n transition('open => closed', animate('250ms cubic-bezier(0, 0, 0.2, 1)')),\r\n transition('closed => open', animate('250ms cubic-bezier(0, 0, 0.2, 1)'))\r\n ])\r\n ]\r\n})\r\nexport class FaqComponent implements AfterViewInit {\r\n\r\n constructor(private service: FaqService) { }\r\n @ViewChild('faq') faq: FaqDirective;\r\n @ViewChild('ref') ref: ElementRef;\r\n @Input() faqId;\r\n\r\n ngAfterViewInit() {\r\n if (this.faqId) {\r\n this.service.add(this.faqId, this.faq, this.ref.nativeElement);\r\n }\r\n }\r\n\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, HostListener } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[faq]',\r\n exportAs: 'faq'\r\n})\r\nexport class FaqDirective {\r\n\r\n public isOpen = false;\r\n @HostListener('click') onclick() {\r\n this.isOpen = !this.isOpen;\r\n }\r\n public get openState() {\r\n if (this.isOpen) {\r\n return 'open';\r\n } else {\r\n return 'closed';\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { FaqDirective } from './faq.directive';\r\n\r\n@Injectable() export class FaqService {\r\n\r\n faqs: {[key: string]: { directive: FaqDirective, element: any } } = {};\r\n\r\n add(id, faq, element) {\r\n this.faqs[id] = { directive: faq, element };\r\n }\r\n\r\n navigateTo(faqId) {\r\n const faq = this.faqs[faqId];\r\n if (!faq) {\r\n console.error(`There's no FAQ with an faqId of ${faqId}. Mark the faq you want to link by setting the attribute faqId on it`);\r\n return;\r\n }\r\n faq.directive.isOpen = true;\r\n setTimeout(() => {\r\n faq.element.scrollIntoView();\r\n }, 10);\r\n }\r\n}\r\n","import { Directive, HostListener, HostBinding, Input } from '@angular/core';\r\nimport { FaqService } from './faq.service';\r\n\r\n@Directive({\r\n selector: '[faqLink]'\r\n})\r\nexport class FaqLinkDirective {\r\n\r\n constructor(private service: FaqService) { }\r\n\r\n @Input() faqLink;\r\n\r\n @HostListener('click') onclick() {\r\n this.service.navigateTo(this.faqLink);\r\n }\r\n\r\n}\r\n","import { Component, Input, OnInit, Output,\r\n EventEmitter, ViewChild, ElementRef, AfterContentChecked, ChangeDetectorRef } from '@angular/core';\r\nimport { RequestOptions } from '@angular/http';\r\nimport { environment } from '../../environments/environment';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { UploadService } from '../core/service/upload.service';\r\nimport { UploadType } from './model/UploadType';\r\nimport { FileUpload } from './model/FileUpload';\r\nimport { UploadStatus } from './model/UploadStatus';\r\nimport { LayoutService } from '../core/service/layout.service';\r\nimport { AttachmentType } from './model/AttachmentType';\r\n@Component({\r\n selector: 'app-file-upload',\r\n moduleId: module.id,\r\n templateUrl: './fileUpload.component.html',\r\n styleUrls: ['fileUpload.scss']\r\n})\r\nexport class FileUploadComponent implements AfterContentChecked{\r\n files: Array = [];\r\n UploadStatus = UploadStatus;\r\n user:any\r\n uploading = false;\r\n @Input() allowedFileTypes = ['.pdf', '.PDF', '.doc', '.DOC', '.docx', '.DOCX', '.jpg', '.JPG', '.jpeg', '.JPEG', '.png', '.PNG', '.gif', '.GIF'];\r\n allowedFileTypesString;\r\n @ViewChild('defaultCertifierTemplate', { static: true }) defaultCertifierTemplate;\r\n @ViewChild('photoCertifierTemplate', { static: true }) photoCertifierTemplate;\r\n @ViewChild('birthCertificateCertifierTemplate', { static: true }) birthCertificateCertifierTemplate;\r\n get certifierTemplate() {\r\n if (this.requireCertifier) {\r\n switch (this.attachmentType) {\r\n case AttachmentType.Photo:\r\n return this.photoCertifierTemplate;\r\n case AttachmentType.BirthCertificate:\r\n return this.birthCertificateCertifierTemplate;\r\n default:\r\n return this.defaultCertifierTemplate;\r\n }\r\n }\r\n }\r\n\r\n @Input() deleteUrl = 'v1.0/registrationform/attachment';\r\n @Input() sessionId: string;\r\n @Input() requireTitle: boolean;\r\n @Input() requireExpiryDate: boolean;\r\n @Input() requireCertifier: boolean;\r\n @Input() requirePOCertifier: boolean;\r\n @Input() titleOptions = [];\r\n @Input() touched = false;\r\n @Input() min: number;\r\n @Input() max: number;\r\n @Input() maxMb: number;\r\n @Input() type: UploadType;\r\n @Input() additionalQuestion = false;\r\n @Input() disableDeleteButton = false;\r\n @Output() uploaded = new EventEmitter>();\r\n @Output() deleted = new EventEmitter();\r\n @Input('existing') set setExisting(existing: Array) {\r\n if (!!existing && !!existing.length) {\r\n this.files = existing.map(f => {\r\n f.fileId = (f).fstFileId || f.fileId;\r\n f.filesize = (f).fileSize || f.filesize;\r\n f.status = UploadStatus.Uploaded;\r\n f.certifier = f.certifier || {};\r\n return f;\r\n });\r\n } else {\r\n this.files = [];\r\n }\r\n }\r\n @Input() attachmentType: AttachmentType;\r\n AttachmentType = AttachmentType;\r\n @ViewChild('fileInput') fileInput: ElementRef;\r\n @Input() certifierTypes = ['Post Office', 'Solicitor', 'Commissioner of Oaths', 'Notary Public', 'Barrister', 'Legal Executive', 'Licenced Conveyancer', 'Other'];\r\n birthCertificateCertifierTypes = new Array();\r\n isBirthCertificateIsSolicitor;\r\n constructor(private auth: AuthService, private service: UploadService, public layout: LayoutService,\r\n private changeDetector: ChangeDetectorRef) {\r\n this.allowedFileTypesString = this.allowedFileTypes.join(',');\r\n this.birthCertificateCertifierTypes = this.certifierTypes.filter(function(value, index, arr){ \r\n return value !== 'Post Office';\r\n });\r\n this.isBirthCertificateIsSolicitor = 'Solicitor';\r\n }\r\n\r\n ngAfterContentChecked(): void {\r\n this.changeDetector.detectChanges();\r\n }\r\n delete(upload: FileUpload) {\r\n upload.status = UploadStatus.Pending;\r\n this.service.deleteFile(upload, this.deleteUrl).subscribe(() => {\r\n const idx = this.files.indexOf(upload);\r\n this.deleted.emit(upload);\r\n this.files.splice(idx, 1);\r\n this.uploaded.emit(this.uploadedFiles);\r\n if (this.fileInput) {\r\n this.fileInput.nativeElement.value = null;\r\n }\r\n }, error => {\r\n upload.status = UploadStatus.Error;\r\n upload.error = error.message || error;\r\n });\r\n }\r\n\r\n deleteAll() {\r\n this.files.forEach(file => {\r\n this.delete(file);\r\n });\r\n }\r\n\r\n get today() {\r\n return new Date();\r\n }\r\n\r\n propagate() {\r\n const hasPhotoDrivingLiscense = this.uploadedFiles.find(file => file.title === 'Photo drivers licence');\r\n if (hasPhotoDrivingLiscense) {\r\n this.titleOptions = ['GP registration letter', 'National insurance card', 'Other'];\r\n }\r\n this.uploaded.emit(this.uploadedFiles);\r\n }\r\n\r\n remove(upload) {\r\n this.files = this.files.filter(f => f !== upload);\r\n }\r\n\r\n get uploadedFileCount() {\r\n return this.uploadedFiles.length;\r\n }\r\n\r\n get uploadedFiles() {\r\n return this.files.filter(f => f.status === UploadStatus.Uploaded);\r\n }\r\n\r\n fileChange(event) {\r\n const fileList: FileList = event.target.files;\r\n if (fileList && fileList.length > 0) {\r\n for (let i = 0; i < fileList.length; i++) {\r\n const file: File = fileList[i];\r\n\r\n if (file.size > +this.maxMb * 1000000) {\r\n this.files.push( { file, error: 'Too large', tooBig: true, status: UploadStatus.Error } );\r\n continue;\r\n }\r\n const bits = file.name.split('.');\r\n const extension = '.' + bits[bits.length - 1];\r\n\r\n if (this.allowedFileTypes.indexOf(extension) === -1) {\r\n this.files.push( { file, error: 'Invalid file type', invalidType: true, status: UploadStatus.Error } );\r\n continue;\r\n }\r\n const upload: FileUpload = {\r\n filename: file.name,\r\n filesize: file.size,\r\n status: UploadStatus.Pending,\r\n error: null,\r\n certifier: { }\r\n };\r\n this.files.push(upload);\r\n if (upload.isDuplicateCopy === true) {\r\n upload.certifier.type = 'Solicitor';\r\n }\r\n const formData: FormData = new FormData();\r\n formData.append(file.name, file, file.name);\r\n if (!this.type) {\r\n throw new Error('Upload type must be provided to the upload component');\r\n }\r\n this.uploading = true;\r\n this.service.upload(this.type, formData, this.sessionId).subscribe(\r\n data => {\r\n upload.status = UploadStatus.Uploaded;\r\n Object.assign(upload, data[0]);\r\n this.uploaded.emit(this.uploadedFiles);\r\n this.uploading = false;\r\n },\r\n error => {\r\n upload.status = UploadStatus.Error;\r\n upload.error = error.message || error;\r\n this.uploading = false;\r\n }\r\n );\r\n }\r\n }\r\n }\r\n\r\n\r\n}\r\n","
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n
    StatusFilenameSize
    \r\n \r\n \r\n \r\n {{ upload.filename }}{{ upload.filesize / 1000000 | number: '1.2-2' }}MB\r\n \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n {{upload.error}}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n\r\n \r\n

    \r\n You must enter a type\r\n

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

    \r\n You must enter an expiry date\r\n

    \r\n

    \r\n Must be in the future\r\n

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

    \r\n You must enter a certifier type\r\n

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

    \r\n You must enter a certified date\r\n

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

    \r\n You must enter a certifier type\r\n

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

    \r\n You must enter a certified date\r\n

    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n birth certificate issued by the General Register Office (GRO) as I\r\n was born in England, Scotland or Wales\r\n certified copy of my birth certificate as i was born outside Great Britain\r\n statutory declaration A\r\n \r\n\r\n \r\n

    \r\n This is mandatory\r\n

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

    \r\n You must enter a certifier occupation\r\n

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

    \r\n You must enter a certifier name\r\n

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

    \r\n You must enter a certifier address\r\n

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

    \r\n You must enter a certifier email\r\n

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

    \r\n You must enter a certifier phone number\r\n

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

    \r\n You must enter a certified date\r\n

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

    \r\n You must enter a certifier name\r\n

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

    \r\n You must enter a company name\r\n

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

    \r\n You must enter a certifier number\r\n

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

    \r\n You must enter a certified date\r\n

    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    ","import { Component, Input, OnInit, AfterContentInit, ViewChild, ElementRef} from '@angular/core';\r\nimport { LogService } from '../core/service/log.service';\r\n\r\n@Component({\r\n selector: 'app-form-layout',\r\n moduleId: module.id,\r\n templateUrl: './formLayout.component.html'\r\n})\r\nexport class FormLayoutComponent implements OnInit, AfterContentInit {\r\n @Input() bodyWidth = 8;\r\n @Input() spread = false;\r\n @ViewChild('formHeader', { static: true }) formHeader: ElementRef;\r\n buttonsWidth = 5;\r\n showHeader = false;\r\n\r\n ngOnInit() {\r\n this.buttonsWidth = 12 - this.bodyWidth;\r\n }\r\n\r\n ngAfterContentInit() {\r\n this.showHeader = this.formHeader.nativeElement.children.length > 0;\r\n}\r\n\r\n}\r\n","\r\n\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n

    \r\n \r\n

    \r\n \r\n
    \r\n
    \r\n
    \r\n","import { Component, Input, OnInit, AfterContentInit, ViewChild } from '@angular/core';\r\nimport { LogService } from '../core/service/log.service';\r\n\r\n@Component({\r\n selector: 'app-form-review',\r\n moduleId: module.id,\r\n templateUrl: './formReview.component.html',\r\n styleUrls: ['./formReview.scss']\r\n})\r\nexport class FormReviewComponent implements OnInit {\r\n @Input() editWidth = 8;\r\n @Input() spread = false;\r\n\r\n readWidth = 5;\r\n\r\n\r\n ngOnInit() {\r\n this.readWidth = 12 - this.editWidth;\r\n }\r\n\r\n\r\n\r\n}\r\n","
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    ","import { Component, Input, Output, EventEmitter, Inject,\r\n ViewChildren, ContentChildren, AfterContentInit, ElementRef, HostBinding } from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { Router } from '@angular/router';\r\nimport { LayoutService } from '../core/service/layout.service';\r\nimport { FocusTrap, FocusTrapFactory } from '@angular/cdk/a11y';\r\n\r\n@Component({\r\n selector: 'app-form-section',\r\n moduleId: module.id,\r\n templateUrl: './formSection.component.html',\r\n styleUrls: ['./formSection.scss']\r\n})\r\nexport class FormSectionComponent {\r\n\r\n loading = false;\r\n editing = false;\r\n foreground = false;\r\n private focusTrap: FocusTrap;\r\n /** Element that was focused before the dialog was opened. Save this to restore upon close. */\r\n private elementFocusedBeforeDialogWasOpened: HTMLElement | null = null;\r\n\r\n @Input() invalid = false;\r\n @Input() primary = false;\r\n @Input() editable = false;\r\n @Input() allowSave = true;\r\n @Input() autoToggle = true;\r\n @Input() saving = false;\r\n @Input() loaderFill = false;\r\n @HostBinding('class.clickable') @Input() link;\r\n @Input() badge = false;\r\n @Output() onCancel = new EventEmitter();\r\n @Output() onSave = new EventEmitter();\r\n @Output() onEdit = new EventEmitter();\r\n\r\n\r\n @Input('editing') set setEditing(value) {\r\n\r\n this.layout.setOverlay(value);\r\n this.editing = value;\r\n if (value) {\r\n this.foreground = true;\r\n }\r\n if (!value) {\r\n setTimeout(() => {\r\n this.foreground = false;\r\n }, 400);\r\n }\r\n\r\n if (!this.editing) {\r\n setTimeout(() => {\r\n if (this.editButtonRef.first && this.editButtonRef.first.nativeElement) {\r\n this.editButtonRef.first.nativeElement.focus();\r\n }\r\n }, 100);\r\n }\r\n }\r\n\r\n @ViewChildren('editButton') editButtonRef;\r\n\r\n constructor(private router: Router, private layout: LayoutService,\r\n private elementRef: ElementRef,\r\n private focusTrapFactory: FocusTrapFactory,\r\n @Inject(DOCUMENT) private document: any) { }\r\n\r\n @Input('loading') set setLoading(loading: boolean) {\r\n this.loading = loading;\r\n }\r\n\r\n\r\n\r\n toggleEdit() {\r\n if (this.editing) {\r\n this.onCancel.emit();\r\n this.restoreFocus();\r\n } else {\r\n this.onEdit.emit();\r\n this.trapFocus();\r\n }\r\n if (this.autoToggle) {\r\n this.editing = !this.editing;\r\n }\r\n\r\n }\r\n\r\n save() {\r\n if (!this.invalid) {\r\n this.onSave.emit();\r\n }\r\n }\r\n\r\n cancelEdit() {\r\n if (this.editing) {\r\n this.toggleEdit();\r\n }\r\n }\r\n\r\n onClick($event) {\r\n if (this.link && !this.editing) {\r\n this.router.navigate([this.link]);\r\n return;\r\n }\r\n /*\r\n if (this.editable && !this.editing) {\r\n this.toggleEdit();\r\n }*/\r\n }\r\n\r\n onKeyPressEnter ($event) {\r\n\r\n if (this.link && !this.editing) {\r\n this.router.navigate([this.link]);\r\n return;\r\n }\r\n if (this.editable && !this.editing) {\r\n this.toggleEdit();\r\n return;\r\n }\r\n /*\r\n if (this.editing && !this.invalid) {\r\n this.onSave.emit();\r\n return;\r\n }\r\n */\r\n }\r\n\r\n private trapFocus() {\r\n this.savePreviouslyFocusedElement();\r\n if (!this.focusTrap) {\r\n this.focusTrap = this.focusTrapFactory.create(this.elementRef.nativeElement);\r\n }\r\n\r\n // If were to attempt to focus immediately, then the content of the dialog would not yet be\r\n // ready in instances where change detection has to run first. To deal with this, we simply\r\n // wait for the microtask queue to be empty.\r\n /* this.focusTrap.focusInitialElementWhenReady();\r\n then(hasMovedFocus => {\r\n // If we didn't find any focusable elements inside the dialog, focus the\r\n // container so the user can't tab into other elements behind it.\r\n if (!hasMovedFocus) {\r\n this.elementRef.nativeElement.focus();\r\n }\r\n });*/\r\n }\r\n\r\n /** Restores focus to the element that was focused before the dialog opened. */\r\n private restoreFocus() {\r\n // const toFocus = this.elementFocusedBeforeDialogWasOpened;\r\n\r\n // We need the extra check, because IE can set the `activeElement` to null in some cases.\r\n // if (toFocus && typeof toFocus.focus === 'function') {\r\n // toFocus.focus();\r\n // }\r\n\r\n if (this.focusTrap) {\r\n this.focusTrap.destroy();\r\n this.focusTrap = undefined;\r\n }\r\n }\r\n\r\n /** Saves a reference to the element that was focused before the dialog was opened. */\r\n private savePreviouslyFocusedElement() {\r\n if (this.document) {\r\n this.elementFocusedBeforeDialogWasOpened = this.document.activeElement as HTMLElement;\r\n }\r\n }\r\n\r\n\r\n}\r\n","
    \r\n\r\n
    \r\n

    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \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 { ViewChild, TemplateRef, Input, Directive } from '@angular/core';\r\nimport { StepValidity } from './StepValidity';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { FormStepperService } from './formStepper.service';\r\n\r\n@Directive()\r\nexport abstract class FormStepComponent {\r\n\r\n @ViewChild('content') content: TemplateRef;\r\n\r\n protected service: FormStepperService;\r\n\r\n constructor(service: FormStepperService) {\r\n this.service = service;\r\n }\r\n\r\n prevDisabled = false;\r\n nextDisabled = false;\r\n dirty: boolean;\r\n touched: boolean;\r\n waiting: boolean;\r\n ready$ = new BehaviorSubject(false);\r\n validity$ = new BehaviorSubject({ valid: undefined, messages: [], touched: false });\r\n abstract title: string;\r\n abstract stepId;\r\n @Input() application;\r\n\r\n abstract validate();\r\n\r\n load() {\r\n this.ready$.next(true);\r\n }\r\n\r\n makeDirty() {\r\n this.dirty = true;\r\n }\r\n\r\n beforeNext() {\r\n return true;\r\n }\r\n beforePrev() {\r\n return true;\r\n }\r\n\r\n abstract populateForm();\r\n\r\n}\r\n","import { Component, AfterContentInit, ContentChildren, QueryList, Input, Output, EventEmitter, OnDestroy } from '@angular/core';\r\nimport { LayoutService } from '../../core/service/layout.service';\r\nimport { FormStepComponent } from './formStep.component';\r\nimport { RegApplicationStep } from '../../prereg/model/RegApplicationStep';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { FormStepperService } from './formStepper.service';\r\nimport { trigger, transition, animate, style } from '@angular/animations';\r\n\r\ninterface StepChangeArgs {\r\n from: string;\r\n to: string;\r\n}\r\n@Component({\r\n moduleId: module.id,\r\n selector: 'app-form-stepper',\r\n templateUrl: './formStepper.component.html',\r\n styleUrls: ['./formStepper.scss'],\r\n animations: [\r\n trigger('slideIn', [\r\n transition(':enter', [\r\n style({\r\n transform: 'translateY(10px)',\r\n opacity: 0.7\r\n }),\r\n animate('600ms cubic-bezier(0, 0, 0.2, 1)',\r\n style({\r\n transform: 'translateY(0)',\r\n opacity: 1\r\n }))\r\n ])\r\n ])\r\n ]\r\n})\r\nexport class FormStepperComponent implements AfterContentInit {\r\n\r\n constructor(private layout: LayoutService, private service: FormStepperService) { }\r\n\r\n currentStep: FormStepComponent;\r\n ready = false;\r\n nextTouched = false;\r\n prevTouched = false;\r\n saving = false;\r\n loading = new EventEmitter();\r\n serverErrors = [];\r\n stepSub;\r\n\r\n @Output() stepChanged = new EventEmitter();\r\n @Input() maxStep;\r\n @Input() minStep;\r\n @Input('saving') set setSaving(saving) {\r\n this.saving = saving;\r\n if (saving) {\r\n this.layout.setOverlay(true);\r\n } else {\r\n setTimeout(() => {\r\n this.layout.setOverlay(false);\r\n }, 100);\r\n }\r\n }\r\n @Input('ready') set setReady(ready) {\r\n setTimeout(() => {\r\n this.ready = ready;\r\n });\r\n }\r\n @Input() stepChange;\r\n\r\n steps: Array;\r\n @ContentChildren(FormStepComponent) stepComponents: QueryList;\r\n\r\n ngAfterContentInit() {\r\n this.steps = this.stepComponents.toArray();\r\n // console.log(this.steps);\r\n\r\n this.service.init(this.steps, this.maxStep, this.minStep);\r\n\r\n let currentStep;\r\n // navigate to max step\r\n if (this.maxStep) {\r\n currentStep = this.steps.find(s => s.stepId === this.maxStep);\r\n }\r\n if (!currentStep) {\r\n currentStep = this.steps[0];\r\n }\r\n this.currentStep = currentStep;\r\n this.stepSub = this.currentStep.ready$.subscribe(ready => {\r\n if (ready) {\r\n this.currentStep.validate();\r\n }\r\n });\r\n this.currentStep.load();\r\n }\r\n\r\n goToStep(stepId) {\r\n if (stepId === this.currentStep.stepId) { return; }\r\n const step = this.steps.filter(s => s.stepId === stepId)[0];\r\n if (step) {\r\n if (stepId > this.currentStep.stepId) {\r\n if (this.currentStep.beforeNext()) {\r\n this.changeStep(this.steps.indexOf(step));\r\n }\r\n } else {\r\n if (this.currentStep.beforePrev()) {\r\n this.changeStep(this.steps.indexOf(step));\r\n }\r\n }\r\n } else {\r\n throw new Error('No step with id ' + stepId);\r\n }\r\n }\r\n\r\n get stepIndex() {\r\n return this.steps.indexOf(this.currentStep);\r\n }\r\n\r\n get allowPrev() {\r\n return this.stepIndex > 0 && !this.currentStep.prevDisabled;\r\n }\r\n get allowNext() {\r\n return this.currentStep.validity$.value.valid;\r\n }\r\n\r\n next() {\r\n this.prevTouched = false;\r\n this.nextTouched = true;\r\n this.currentStep.validity$.value.touched = true;\r\n this.currentStep.touched = true;\r\n this.currentStep.populateForm();\r\n this.currentStep.validate();\r\n if (this.allowNext) {\r\n if (this.currentStep.beforeNext()) {\r\n this.changeStep(this.stepIndex + 1);\r\n }\r\n }\r\n }\r\n\r\n prev() {\r\n this.nextTouched = false;\r\n this.prevTouched = true;\r\n this.currentStep.touched = true;\r\n this.currentStep.populateForm();\r\n if (this.allowPrev) {\r\n if (this.currentStep.beforePrev()) {\r\n this.changeStep(this.stepIndex - 1);\r\n }\r\n }\r\n }\r\n\r\n public changeStep(newStepIndex) {\r\n\r\n this.stepChange(this.currentStep).then(() => {\r\n if (this.stepSub) {\r\n this.stepSub.unsubscribe();\r\n }\r\n this.nextTouched = false;\r\n this.prevTouched = false;\r\n this.currentStep = this.steps[newStepIndex];\r\n this.service.setCurrentStep(this.currentStep.stepId);\r\n this.currentStep.dirty = false;\r\n // this.currentStep.touched = false;\r\n this.currentStep.ready$.next(false);\r\n this.stepSub = this.currentStep.ready$.subscribe(ready => {\r\n if (ready) {\r\n this.currentStep.validate();\r\n }\r\n });\r\n this.stepChanged.emit(this.currentStep.stepId);\r\n this.currentStep.load();\r\n if (this.layout.state.fullscreen) {\r\n window.scrollTo(0, 0);\r\n } else {\r\n window.scrollTo(0, 208);\r\n }\r\n\r\n }).catch(error => {\r\n console.error(error);\r\n });\r\n }\r\n\r\n isObjectType(value: any): boolean {\r\n return typeof value === 'object';\r\n }\r\n\r\n}\r\n","
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n \r\n \r\n \r\n

    \r\n {{ isObjectType(message) === true ? message.content : message }}\r\n

    \r\n
    \r\n\r\n 3\">\r\n

    \r\n You must answer “Yes” to all of the declarations on this page\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n Saving\r\n
    \r\n
    \r\n Saving\r\n
    \r\n
    ","import { BehaviorSubject } from 'rxjs';\r\nimport { Injectable } from '@angular/core';\r\nimport { FormStepSummary } from './FormStepSummary';\r\nimport { FormStepComponent } from './formStep.component';\r\n\r\n@Injectable()\r\nexport class FormStepperService {\r\n\r\n\r\n maxStep;\r\n minStep;\r\n summary: Array;\r\n summary$ = new BehaviorSubject>([]);\r\n steps: Array;\r\n initialSummary;\r\n\r\n init(steps: Array, maxStep = 1, minStep = 1) {\r\n\r\n this.summary = steps.map(step => ({\r\n current: step.stepId === maxStep,\r\n stepId: step.stepId,\r\n title: step.title,\r\n validity: { valid: step.stepId < maxStep ? true : undefined, messages: [], touched: false },\r\n disabled: step.stepId > maxStep || step.stepId < minStep,\r\n waiting: step.waiting\r\n }));\r\n\r\n this.steps = steps;\r\n this.minStep = minStep;\r\n this.maxStep = maxStep;\r\n\r\n this.update();\r\n\r\n steps.forEach(step => {\r\n\r\n step.validity$.subscribe(validity => {\r\n //Assigned tick marks to form stepper menu as per saved status\r\n const index = this.summary.findIndex(s => s.stepId === step.stepId)\r\n if (validity.valid !== undefined && this.summary[index].validity.valid !== validity.valid ) {\r\n this.summary[index].validity = validity;\r\n }\r\n // if (step.stepId >= maxStep || validity.valid ) {\r\n // this.summary.find(s => s.stepId === step.stepId).validity = validity;\r\n // }\r\n // this.summary.find(s => s.stepId === step.stepId).validity = validity;\r\n const furthestStep = this.getFurthestStep();\r\n if (validity.valid !== undefined && step.stepId <= furthestStep) {\r\n\r\n this.summary.forEach(s => s.disabled = s.stepId > furthestStep || s.stepId < this.minStep);\r\n const currentStep = this.summary.find(s => s.current);\r\n if (currentStep && currentStep.validity.valid) {\r\n const nextStep = this.summary.find(s => s.stepId === currentStep.stepId + 1);\r\n if (nextStep) {\r\n nextStep.disabled = false;\r\n }\r\n }\r\n this.update();\r\n }\r\n });\r\n });\r\n }\r\n\r\n getFurthestStep() {\r\n let stepId = 0;\r\n for (let i = 0; i < this.summary.length; i++ ) {\r\n const s = this.summary[i];\r\n if (!s.validity.valid) {\r\n break;\r\n }\r\n if (s.validity.valid && s.stepId > stepId) {\r\n stepId = s.stepId;\r\n }\r\n }\r\n\r\n return stepId + 1;\r\n }\r\n\r\n setCurrentStep(stepId) {\r\n this.summary.forEach(s => {\r\n s.current = s.stepId === stepId;\r\n });\r\n this.summary.filter(s => s.current).forEach(s => s.disabled = false);\r\n this.update();\r\n }\r\n\r\n setMinStep(stepId) {\r\n this.minStep = stepId;\r\n this.summary.forEach(s => {\r\n s.disabled = s.stepId < stepId;\r\n });\r\n this.update();\r\n }\r\n setMaxStep(stepId) {\r\n this.maxStep = stepId;\r\n this.summary.forEach(s => {\r\n s.disabled = s.stepId > stepId;\r\n });\r\n this.update();\r\n }\r\nsetStepRange(minStepId, maxStepId) {\r\n this.minStep = minStepId;\r\n this.maxStep = maxStepId;\r\n this.summary.forEach(s => {\r\n s.disabled = s.stepId > maxStepId || s.stepId < minStepId;\r\n });\r\n this.update();\r\n }\r\n\r\n disableAllStepsExcept(stepId) {\r\n this.summary.forEach(s => {\r\n s.disabled = s.stepId !== stepId;\r\n });\r\n this.minStep = stepId;\r\n this.maxStep = stepId;\r\n this.update();\r\n }\r\n\r\n\r\n\r\n getStep(stepId) {\r\n return this.steps.find(step => step.stepId === stepId);\r\n }\r\n\r\n get currentStepId() {\r\n if (!this.summary) { return undefined; }\r\n return this.summary.find(s => s.current).stepId;\r\n }\r\n\r\n update() {\r\n setTimeout(() => {\r\n this.summary$.next(this.summary);\r\n });\r\n }\r\n\r\n // method returns true/false to update already stored steps,\r\n // if previously stored steps are different from the latest one.\r\n // and also updates stepid of the latest steps.\r\n updateStepsId(initialSteps, formStepperSteps): boolean {\r\n if(initialSteps !== formStepperSteps) {\r\n let stepNumber = 1;\r\n initialSteps = formStepperSteps;\r\n\r\n if(this.steps.length !== formStepperSteps.length) {\r\n this.steps = formStepperSteps;\r\n }\r\n\r\n formStepperSteps.forEach((step, index) => {\r\n step.stepId = stepNumber;\r\n this.summary[index].stepId = this.steps[index].stepId = stepNumber;\r\n stepNumber++;\r\n });\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n}\r\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\r\nimport { FormStepSummary } from './FormStepSummary';\r\nimport { FormStepperService } from './formStepper.service';\r\n\r\n@Component({\r\n selector: 'app-form-stepper-menu',\r\n templateUrl: './formStepperMenu.component.html',\r\n styleUrls: ['./formStepperMenu.scss']\r\n})\r\nexport class FormStepperMenuComponent {\r\n\r\n @Input() summary: Array = [];\r\n @Output() navigate = new EventEmitter();\r\n\r\n constructor(private service: FormStepperService) { }\r\n\r\n goToStep(item: FormStepSummary) {\r\n this.navigate.emit(item);\r\n }\r\n\r\n getTooltip(item: FormStepSummary) {\r\n if (!item.validity.messages.length) { return undefined; }\r\n return {\r\n id: 'step-' + item.stepId,\r\n content: item.validity.messages.join(', '),\r\n width: 320,\r\n placement: 'bottom',\r\n order: 1\r\n };\r\n }\r\n\r\n getIconCss(step: FormStepSummary) {\r\n\r\n const stepComponent = this.service.getStep(step.stepId);\r\n if(stepComponent) {\r\n if (stepComponent.waiting) {\r\n return 'fa fa-clock-o';\r\n }\r\n if (step.validity && step.validity.touched && step.validity.valid === false) {\r\n return 'fa fa-warning danger';\r\n }\r\n \r\n if (step.validity && step.validity.valid === true) {\r\n return 'fa fa-check success';\r\n }\r\n return '';\r\n } \r\n\r\n }\r\n}\r\n","
    \r\n\r\n {{ item.title }}\r\n\r\n \r\n
    ","import { Component, Input } from '@angular/core';\r\nimport { LayoutService } from '../core/service/layout.service';\r\n\r\n@Component({\r\n selector: 'app-fullscreen-spinner',\r\n template: `
    \r\n
    \r\n
    \r\n {{ text }}\r\n
    \r\n
    \r\n {{ text }}\r\n
    \r\n
    \r\n
    `,\r\n styleUrls: ['fullscreenSpinner.scss']\r\n})\r\nexport class FullscreenSpinnerComponent {\r\n\r\n constructor(public layout: LayoutService) {\r\n\r\n layout.state$.subscribe(layoutState => {\r\n this.visible = layoutState.fullscreenSpinner.visible;\r\n this.text = layoutState.fullscreenSpinner.text;\r\n });\r\n }\r\n visible = false;\r\n text = 'Saving';\r\n\r\n\r\n}\r\n","import { Component, Input, Output, OnInit, EventEmitter, HostBinding } from '@angular/core';\r\nimport { Tooltip } from '../core/tooltip/Tooltip';\r\n\r\n@Component({\r\n selector: 'app-gphc-icon',\r\n moduleId: module.id,\r\n templateUrl: './gphc-icon.component.html',\r\n styleUrls: ['./gphc-icon.scss']\r\n})\r\n\r\nexport class GphcIconComponent implements OnInit {\r\n\r\n @HostBinding('tabindex') tabindex = -1;\r\n @Input() iconType: string;\r\n @Input() label: string;\r\n position = 'absolute';\r\n @Input() set static(value) {\r\n if (value) {\r\n this.position = 'static';\r\n }\r\n }\r\n fontSize;\r\n @Input() set size(value) {\r\n this.fontSize = value + 'px';\r\n }\r\n @Input() description = '';\r\n @Input() small = false;\r\n @Input() active = false;\r\n @Input() primary = false;\r\n offsetPixelsTop;\r\n offsetPixelsRight = '-10px';\r\n offsetPixelsLeft;\r\n @Input() set top(value) {\r\n this.offsetPixelsTop = value + 'px';\r\n }\r\n @Input() set right(value) {\r\n this.offsetPixelsRight = value + 'px';\r\n }\r\n @Input() disabled = false;\r\n @Input() showLabel = true;\r\n @Input() showLabelAlways = false;\r\n @Input() tooltip: Tooltip;\r\n\r\n @Input('offset') set offsetRight(value: any) {\r\n if (value === 'none') {\r\n this.offsetPixelsRight = undefined;\r\n } else {\r\n this.offsetPixelsRight = value + 'px';\r\n }\r\n }\r\n @Input('offsetLeft') set offsetLeft(value: any) {\r\n if (value === 'none') {\r\n this.offsetPixelsLeft = undefined;\r\n } else {\r\n this.offsetPixelsLeft = value + 'px';\r\n }\r\n }\r\n @Input('offsetTop') set offsetTop(value: any) {\r\n if (value === 'none') {\r\n this.offsetPixelsTop = undefined;\r\n } else {\r\n this.offsetPixelsTop = value + 'px';\r\n }\r\n }\r\n\r\n @Output() click = new EventEmitter();\r\n\r\n\r\n iconTypes = {\r\n back: {\r\n fa: 'fa-chevron-left'\r\n },\r\n info: {\r\n fa: 'fa-info'\r\n },\r\n edit: {\r\n fa: 'fa-pencil'\r\n },\r\n annotate: {\r\n fa: 'fa-pencil'\r\n },\r\n save: {\r\n fa: 'fa-save'\r\n },\r\n cancel: {\r\n fa: 'fa-remove'\r\n },\r\n close: {\r\n fa: 'fa-close'\r\n },\r\n create: {\r\n fa: 'fa-plus'\r\n },\r\n next: {\r\n fa: 'fa-chevron-right'\r\n },\r\n prev: {\r\n fa: 'fa-chevron-left'\r\n },\r\n list: {\r\n fa: 'fa-list'\r\n },\r\n submit: {\r\n fa: 'fa-upload'\r\n },\r\n discussion: {\r\n fa: 'fa-comments'\r\n },\r\n delete: {\r\n fa: 'fa-trash'\r\n },\r\n approve: {\r\n fa: 'fa-thumbs-up'\r\n },\r\n unapprove: {\r\n fa: 'fa-thumbs-down'\r\n },\r\n return: {\r\n fa: 'fa-arrow-left'\r\n }\r\n }\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n if (this.iconType === 'info' || this.iconType === 'create') {\r\n this.showLabel = false;\r\n }\r\n }\r\n\r\n onClick($event) {\r\n $event.stopPropagation();\r\n this.click.emit($event);\r\n }\r\n onKeyupEnter($event) {\r\n $event.stopPropagation();\r\n }\r\n onKeydownEnter($event) {\r\n $event.stopPropagation();\r\n }\r\n\r\n}\r\n","
    \r\n \r\n
    \r\n","import {\r\n AbstractControl, AsyncValidator,\r\n NG_ASYNC_VALIDATORS,\r\n ValidationErrors, Validator\r\n} from '@angular/forms';\r\nimport { Directive, Input } from '@angular/core';\r\nimport { Observable, of } from 'rxjs';\r\nimport { patternToTestLatinAlphabets } from './user-address/userAddress';\r\n\r\n@Directive({\r\n selector: '[inputValidator][ngModel],[inputValidator][FormControl],[inputValidator][div.content]',\r\n providers: [\r\n { provide: NG_ASYNC_VALIDATORS, useExisting: InputValidator, multi: true }\r\n ]\r\n})\r\nexport class InputValidator implements AsyncValidator {\r\n\r\n constructor() { }\r\n\r\n validate(control?: AbstractControl): Observable {\r\n\r\n return of(this._validateInternal(control));\r\n }\r\n\r\n\r\n _validateInternal(control: AbstractControl): ValidationErrors | null {\r\n const val = control.value;\r\n\r\n const pattern = patternToTestLatinAlphabets;\r\n if (pattern.test(val)) {\r\n return null;\r\n } else {\r\n return { inputValidator: \"Please only enter characters from the Latin alphabet\" }\r\n }\r\n\r\n\r\n }\r\n\r\n}\r\n","import { Directive, EventEmitter, HostListener, Output } from '@angular/core';\r\n@Directive({\r\n selector: '[ngModel][lowercase]'\r\n})\r\nexport class LowercaseDirective {\r\n @Output() ngModelChange: EventEmitter = new EventEmitter();\r\n value: any;\r\n\r\n @HostListener('input', ['$event']) onInputChange($event) {\r\n this.value = $event.target.value.toLowerCase();\r\n this.ngModelChange.emit(this.value);\r\n }\r\n}\r\n","export enum AttachmentType {\r\n QualificationCertificate = 0,\r\n ProofOfIdentity = 1,\r\n BirthCertificate = 2,\r\n Photo = 3,\r\n Other = 4,\r\n SomethingToDeclareForm = 5,\r\n FinalDeclarationForm = 6,\r\n KnowledgeBasedQualification = 7,\r\n CompetencyBasedQualification = 8,\r\n OverseasQualification = 9,\r\n AcademicTranscript = 10,\r\n OverseasEligibility = 11,\r\n IndyPrescriberMentorConfirmation = 12,\r\n CombinedQualification = 13,\r\n OfficialDocummentConfirmingNameChange = 14,\r\n IELTSCertificate = 15,\r\n EmployerReferenceForEnglishCertificate = 16,\r\n PharmcistCVForProfessionalStanding = 17\r\n}\r\n","export enum DateFormat {\r\n Display,\r\n Server\r\n}\r\n","export enum UploadStatus {\r\n Pending = 1,\r\n Error = 2,\r\n Uploaded = 3\r\n}\r\n","export enum UploadType {\r\n Unknown = 0,\r\n ExtenuatingCircumstanceProof = 1,\r\n RegistrationFormSupportingDocuments = 2,\r\n PreRegistrationFormSupportingDocuments = 3,\r\n PharmacyTechnicianSupportingDocuments = 4,\r\n ProgressReportSupportingDocuments = 5,\r\n AssessmentRegistrationDocuments = 6,\r\n InpendentPrescriberSupportDocuments = 7,\r\n ReturnToRegisterSupportingDocuments = 8,\r\n ProfessionalStandingSupportingDocuments = 9\r\n}\r\n","\r\nexport enum RevalidationItemType {\r\n Unknown = 0,\r\n Planned = 1,\r\n Unplanned = 2,\r\n PeerDiscussion = 3,\r\n ReflectiveAccount = 4\r\n}\r\n","import { RevalidationItem } from './RevalidationItem';\r\nimport { RevalidationItemType } from './RevalidationItemType';\r\nimport { IProgress } from '../../../shared/IProgress';\r\nimport { SubmissionInfo } from './SubmissionInfo';\r\n\r\nexport class RevalidationSubmission implements IProgress {\r\n progress = 0;\r\n total = 0;\r\n completed = false;\r\n invalid = false;\r\n error = false;\r\n submitted = false;\r\n submissionDate: string;\r\n}\r\n","\r\nimport { RevalidationItemType } from './RevalidationItemType';\r\nimport { RevalidationItemTypeConfig } from './RevalidationItemTypeConfig';\r\n\r\nexport const revalidationItemTypes: RevalidationItemTypeConfig[] = [\r\n {\r\n type: RevalidationItemType.Planned,\r\n icon: 'calendar',\r\n title: 'Planned CPD',\r\n feedbackType: 'plannedCpdFeedback'\r\n },\r\n {\r\n type: RevalidationItemType.Unplanned,\r\n title: 'Unplanned CPD',\r\n icon: 'calendar-o',\r\n feedbackType: 'unplannedCpdFeedback'\r\n },\r\n {\r\n type: RevalidationItemType.PeerDiscussion,\r\n icon: 'comments',\r\n title: 'Peer discussion',\r\n feedbackType: 'peerDiscussionFeedback'\r\n },\r\n {\r\n type: RevalidationItemType.ReflectiveAccount,\r\n icon: 'address-book',\r\n title: 'Reflective account',\r\n feedbackType: 'reflectiveAccountFeedback'\r\n }\r\n]\r\n","export enum CourseType {\r\n MPharm = 717750000,\r\n MPharmS = 717750007,\r\n OSPAP = 717750001\r\n /*TechnicianCompetence = 717750002,\r\n TechnicianKnowledge = 717750003,\r\n Prescriber = 717750004,\r\n EEA = 717750005,\r\n NonEEA = 717750006*/\r\n}\r\n","export enum LearningContractResponse {\r\n Unknown = 0,\r\n /// \r\n /// Starting Value before Decision.\r\n /// \r\n Pending = 1,\r\n Approved = 2,\r\n /// \r\n /// Refused to be reviewed by the reviewer. Could be because he was asked to\r\n /// review or counter-sign in err.\r\n /// \r\n Refused = 998,\r\n /// \r\n /// Rejected by the reviewer.\r\n /// \r\n Rejected = 999\r\n}\r\n","import { Tutor } from './Tutor';\r\nimport { TrainingSite } from './TrainingSite';\r\nimport { Premise } from './Premise';\r\nimport { Subject, BehaviorSubject } from 'rxjs';\r\nimport { LearningContractResponse } from './LearningContractResponse';\r\n\r\nexport class Placement {\r\n\r\n startDate: string;\r\n endDate: string;\r\n trainingSite: TrainingSite;\r\n tutors: Array;\r\n updated$ = new Subject();\r\n overlap$ = new BehaviorSubject(false);\r\n placementId: string;\r\n isAllocated?: boolean;\r\n allocationReference?: string;\r\n\r\n trainingWindow: {\r\n start: {\r\n from: Date,\r\n to: Date\r\n },\r\n end: {\r\n to: Date\r\n }\r\n };\r\n\r\n\r\n constructor(data?) {\r\n if (data) {\r\n if (!data.trainingScheme) {\r\n data.trainingScheme = {};\r\n }\r\n Object.assign(this, data);\r\n if ((this.trainingSite).premise.premiseId) {\r\n (this.trainingSite).premise.id = (this.trainingSite).premise.premiseId;\r\n }\r\n this.tutors.forEach(tutor => {\r\n delete (tutor).gPhCId;\r\n if ((tutor).tutorgPhCId) {\r\n (tutor).gphcId = (tutor).tutorgPhCId;\r\n }\r\n });\r\n\r\n } else {\r\n this.tutors = [undefined];\r\n this.trainingSite = {};\r\n }\r\n\r\n }\r\n\r\n updatePremises(premise: Premise) {\r\n this.trainingSite = { premise };\r\n this.updated$.next('premise');\r\n }\r\n\r\n updateTutor(tutor: Tutor, index) {\r\n this.tutors[index] = tutor;\r\n this.updated$.next('tutor');\r\n }\r\n\r\n\r\n toJson() {\r\n const payload = Object.assign({}, this);\r\n\r\n (payload.trainingSite).premise.premiseId = (payload.trainingSite).premise.id;\r\n payload.tutors.forEach(tutor => {\r\n delete (tutor).gPhCId;\r\n (tutor).tutorGphcId = tutor.gphcId;\r\n });\r\n delete payload.updated$;\r\n delete payload.overlap$;\r\n return payload;\r\n\r\n }\r\n\r\n setDaterange(daterange) {\r\n if (this.startDate !== daterange.from || this.endDate !== daterange.to) {\r\n\r\n this.startDate = daterange.from;\r\n this.endDate = daterange.to;\r\n this.updated$.next('dates');\r\n }\r\n\r\n }\r\n\r\n\r\n addTutor() {\r\n this.tutors.push(undefined);\r\n this.updated$.next();\r\n }\r\n\r\n removeTutor(index) {\r\n this.tutors.splice(index, 1);\r\n this.updated$.next();\r\n }\r\n\r\n get tutorValid() {\r\n const hasTutor = this.tutors.filter(tutor => tutor !== undefined).length > 0;\r\n return hasTutor && !this.contractRejected && this.tutorsEligible;\r\n }\r\n\r\n get tutorsEligible() {\r\n const hasIneligible = this.tutors.find(tutor => tutor !== undefined && tutor.eligibleAsTutor === false);\r\n return !hasIneligible;\r\n }\r\n\r\n get contractRejected() {\r\n return this.tutors.filter(tutor => tutor && (tutor.learningContractResponse === LearningContractResponse.Rejected ||\r\n tutor.learningContractResponse === LearningContractResponse.Refused)).length > 0;\r\n }\r\n\r\n get datesValid() {\r\n return !!this.startDate && !!this.endDate;\r\n }\r\n\r\n get isWithinPermittedRange() {\r\n const start = new Date(this.startDate);\r\n const end = new Date(this.endDate);\r\n return start >= this.trainingWindow.start.from && start <= this.trainingWindow.start.to && end <= this.trainingWindow.end.to;\r\n }\r\n\r\n\r\n get trainingSiteValid() {\r\n return !!this.trainingSite.premise &&\r\n this.trainingSite.isOwner !== undefined &&\r\n this.trainingSite.isRelated !== undefined;\r\n }\r\n\r\n\r\n\r\n get allocationValid() {\r\n return true;\r\n /* return this.isAllocated === false || (this.isAllocated === true && !!this.allocationReference);*/\r\n }\r\n\r\n get isValid() {\r\n return this.trainingSiteValid &&\r\n this.tutorValid && this.datesValid; // && this.allocationValid;\r\n }\r\n\r\n}\r\n","import { Applicant } from '../../../account/model/Applicant';\r\nimport { ApplicationStatus } from '../../../prereg/model/ApplicationStatus';\r\nimport { PreregApplicationForm } from './PreregApplicationForm';\r\nimport { RegistrantStatus } from '../../../registration/model/RegistrantStatus';\r\nimport { Application } from '../../../prereg/model/Application';\r\nimport { AssessmentReport } from '../../../prereg/assessment-report/models/AssessmentReport';\r\n\r\nexport class PreregApplication implements Application {\r\n\r\n trainee: Applicant; // student\r\nform;\r\n forms: Array = [];\r\n status: ApplicationStatus;\r\n activeForm: PreregApplicationForm;\r\n pastApplications: Array = [];\r\n\r\n registrationFees: {\r\n applicationFee: number;\r\n registrationFee: number;\r\n };\r\n\r\n preRegistrationApplicationScheme: {\r\n isOpened: boolean;\r\n startDateForCurrentYear: string;\r\n endDateForCurrentYear: string;\r\n };\r\n\r\n constructor(data, registrantStatus: RegistrantStatus) {\r\n\r\n Object.assign(this, data);\r\n\r\n this.status = this.forms[0].formStatus;\r\n this.activeForm = new PreregApplicationForm(this.forms[0], registrantStatus);\r\n this.pastApplications = this.forms.filter((form, i) => {\r\n return i > 0;\r\n });\r\n\r\n/*\r\n this.preRegistrationApplicationScheme = {\r\n isOpened: false,\r\n startDateForCurrentYear: '4/1/2019',\r\n endDateForCurrentYear: '11/8/2019'\r\n };\r\n */\r\n }\r\n\r\n}\r\n","import { ApplicationStatus } from '../../../prereg/model/ApplicationStatus';\r\nimport { FormAnswer } from '../../../dynamic/model/FormAnswer';\r\nimport { FileUpload } from '../FileUpload';\r\nimport { PreregApplicationStep } from './PreregApplicationStep';\r\nimport { RegistrantStatus } from '../../../registration/model/RegistrantStatus';\r\nimport { ApplicationFormMode } from '../../../prereg/model/ApplicationFormMode';\r\nimport { Placement } from './Placement';\r\nimport { ApplicationForm } from '../../../prereg/model/ApplicationForm';\r\nimport { TrainingScheme } from './TrainingScheme';\r\n\r\nexport class PreregApplicationForm implements ApplicationForm {\r\n\r\n id: string;\r\n formStatus: ApplicationStatus;\r\n declarations: Array<{ dynamicFormId: string, answers: Array }> = [];\r\n attachments: Array = [];\r\n isOverallDeclarationConfirmed: boolean;\r\n\r\n placements: Array = [new Placement()];\r\n trainingScheme: TrainingScheme = {};\r\n\r\n step: PreregApplicationStep;\r\n minStep: PreregApplicationStep;\r\n mode: ApplicationFormMode;\r\n registrantStatus: RegistrantStatus;\r\n requirePayment: boolean;\r\n\r\n getTrainingWeeks() {\r\n let totalWeeks = 0;\r\n this.placements.forEach(placement => {\r\n if (placement.endDate && placement.startDate) {\r\n const ms = new Date(placement.endDate).getTime() - new Date(placement.startDate).getTime();\r\n const weeks = ms / 1000 / 60 / 60 / 24 / 7;\r\n totalWeeks += weeks;\r\n }\r\n });\r\n\r\n return Math.round(totalWeeks);\r\n }\r\n\r\n getTrainingDays() {\r\n let totalDays = 0;\r\n this.placements.forEach(placement => {\r\n if (placement.endDate && placement.startDate) {\r\n const _MS_PER_DAY = 1000 * 60 * 60 * 24;\r\n const endDate = new Date(placement.endDate);\r\n const startDate = new Date(placement.startDate);\r\n // Convert dates to UTC so that the days difference will come same irespective of timezone date is selcted\r\n const startDateUtc = Date.UTC(startDate.getFullYear(), startDate.getMonth(), startDate.getDate());\r\n const endDateUtc = Date.UTC(endDate.getFullYear(), endDate.getMonth(), endDate.getDate());\r\n // Day difference calculation\r\n var days_difference = ((endDateUtc - startDateUtc) / _MS_PER_DAY);\r\n // Add 1 to day difference to make the\r\n days_difference +=1 ;\r\n // total days after placement\r\n totalDays += days_difference;\r\n }\r\n });\r\n return totalDays;\r\n }\r\n\r\n get readonly() {\r\n return !(this.formStatus === ApplicationStatus.NotStarted ||\r\n this.formStatus === ApplicationStatus.InProgress);\r\n }\r\n\r\n constructor(data, registrantStatus) {\r\n if (data) {\r\n Object.assign(this, data);\r\n } else {\r\n this.trainingScheme = {};\r\n this.placements = [new Placement()];\r\n this.declarations = [];\r\n }\r\n\r\n this.registrantStatus = registrantStatus;\r\n }\r\n\r\n\r\n\r\n}\r\n","export enum PreregApplicationStep {\r\n PersonalDetails = 1,\r\n Training = 2,\r\n FtpDeclaration = 3,\r\n OverallDeclaration = 4,\r\n SupportingDocuments = 5,\r\n Edi = 6,\r\n Review = 7,\r\n LearningContract = 8,\r\n Payment = 9\r\n}\r\n","import { Component, Input, Output, EventEmitter} from '@angular/core';\r\nimport {\r\n trigger,\r\n state,\r\n style,\r\n animate,\r\n transition\r\n} from '@angular/animations';\r\nimport { LayoutService } from '../core/service/layout.service';\r\n\r\n@Component({\r\n selector: 'app-overlay',\r\n moduleId: module.id,\r\n templateUrl: 'overlay.component.html',\r\n styleUrls: ['./overlay.scss'],\r\n animations: [\r\n trigger('overlayState', [\r\n state('visible', style({\r\n opacity: '1',\r\n display: 'block'\r\n })),\r\n state('hidden', style({\r\n opacity: '0',\r\n display: 'none'\r\n })),\r\n transition('visible => hidden', animate('250ms cubic-bezier(0, 0, 0.2, 1)')),\r\n transition('hidden => visible', animate('250ms cubic-bezier(0, 0, 0.2, 1)'))\r\n ])\r\n ]\r\n})\r\nexport class OverlayComponent {\r\n\r\n constructor(private layout: LayoutService) {\r\n\r\n layout.state$.subscribe(layoutState => {\r\n this.overlayState = layoutState.overlay ? 'visible' : 'hidden';\r\n });\r\n\r\n }\r\n\r\n overlayState = 'hidden';\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\n\r\n@Pipe({ name: 'caseSplit' })\r\nexport class CaseSplitPipe implements PipeTransform {\r\n public transform(input: string, isCCPSApplication: boolean = false): string {\r\n if (!input) {\r\n return '';\r\n } else {\r\n if (isCCPSApplication && input === \"NotStarted\") {\r\n return \"Start new application\";\r\n } else {\r\n const val = input.split(/(?=[A-Z,0-9])/).join(' ');\r\n return val.charAt(0).toUpperCase() + val.slice(1).toLowerCase(); \r\n }\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'dobDate'\r\n})\r\n\r\nexport class DobDatePipe implements PipeTransform {\r\n\r\n transform(value: any): any {\r\n var pattern = /(\\d{4})\\-(\\d{2})\\-(\\d{2})/;\r\n value = value ? value.split('T')[0].replace(pattern, '$3/$2/$1') : value;\r\n return value;\r\n }\r\n}","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({ name: 'friendlyBoolean' })\r\nexport class FriendlyBooleanPipe implements PipeTransform {\r\n transform(value: Boolean): any {\r\n return value ? 'Yes' : 'No';\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { RevalidationItem } from '../model/revalidation/RevalidationItem';\r\nimport { RevalidationItemType } from '../model/revalidation/RevalidationItemType';\r\n\r\n@Pipe({\r\n name: 'RevalidationItemType',\r\n pure: false\r\n})\r\nexport class RevalidationItemTypePipe implements PipeTransform {\r\n\r\n transform(items: RevalidationItem[], type: RevalidationItemType): any {\r\n if (!items) {\r\n return [];\r\n }\r\n // filter items array, items which match and return true will be kept, false will be filtered out\r\n return items.filter(item => item.type === type);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({ name: 'keys' })\r\nexport class KeysPipe implements PipeTransform {\r\n transform(value, args: string[]): any {\r\n const keys = [];\r\n for (const enumMember in value) {\r\n if (!isNaN(parseInt(enumMember, 10))) {\r\n if (value[enumMember] !== 'Unknown') {\r\n keys.push({key: enumMember,\r\n value: value[enumMember],\r\n displayName: value[enumMember].split(/(?=[A-Z])/).join(' ')});\r\n }\r\n }\r\n }\r\n return keys;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'reverse',\r\n pure: false\r\n})\r\nexport class ReversePipe implements PipeTransform {\r\n transform (values) {\r\n if (values) {\r\n return values.reverse();\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({ name: 'stripHtml' })\r\nexport class StripHtmlPipe implements PipeTransform {\r\n public transform(input: string): string {\r\n if (!input) {\r\n return '';\r\n } else {\r\n return input.replace('
    ', '');\r\n\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { RevalidationItem } from '../model/revalidation/RevalidationItem';\r\n\r\n@Pipe({\r\n name: 'Submission',\r\n pure: false\r\n})\r\nexport class SubmissionPipe implements PipeTransform {\r\n\r\n transform(items: RevalidationItem[], submission: boolean): any {\r\n if (!items) {\r\n return [];\r\n }\r\n // filter items array, items which match and return true will be kept, false will be filtered out\r\n return items.filter(item => !item.deleted && item.included === submission\r\n );\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({ name: 'time' })\r\nexport class TimePipe implements PipeTransform {\r\n transform(value: Date, args: string[]): any {\r\n const hour = ('0' + value.getHours()).slice(-2);\r\n const minute = ('0' + value.getMinutes()).slice(-2);\r\n const second = ('0' + value.getSeconds()).slice(-2);\r\n const milli = ('00' + value.getMilliseconds()).slice(-3);\r\n return `${hour}:${minute}:${second}:${milli}`;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport utils from '../service/utils';\r\nimport { DateFormat } from '../model/DateFormat';\r\n\r\n@Pipe({ name: 'utcDate' })\r\nexport class UtcDatePipe implements PipeTransform {\r\n transform(value: any): any {\r\n return utils.formatDate(value, DateFormat.Display);\r\n }\r\n}\r\n\r\n\r\n","import { Component, Input, Output, ChangeDetectionStrategy, EventEmitter, HostBinding } from '@angular/core';\r\nimport { IProgress } from './IProgress';\r\nimport { Tooltip } from '../core/tooltip/Tooltip';\r\n\r\n@Component({\r\n selector: 'app-progress-indicator',\r\n moduleId: module.id,\r\n templateUrl: 'progressIndicator.component.html',\r\n styleUrls: ['./progressIndicator.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ProgressIndicatorComponent {\r\n\r\n radius = 12;\r\n stroke = 2;\r\n sizeName = 'small';\r\n responsive = false;\r\n background = '#e5f1eb';\r\n successColor = '#58b896';\r\n warningColor = '#c52e2e'; // '#ef7b0f';\r\n currentValue = '';\r\n \r\n progress: IProgress;\r\n @HostBinding('tabindex') tabindex = -1;\r\n @Input() extraSmall = false;\r\n @Input() progressLabel;\r\n @Input() noLabel;\r\n @Input() description = '';\r\n @Input() percent = false;\r\n @Input() set item(item: IProgress) {\r\n this.progress = item;\r\n if (this.percent) {\r\n const percent = Math.round(item.progress * 100 / item.total);\r\n this.currentValue = `${percent}%`;\r\n } else {\r\n this.currentValue = `${item.progress}/${item.total}`;\r\n }\r\n }\r\n @Input() set invert(value: boolean) {\r\n if (value) {\r\n this.background = '#8acab3';\r\n }\r\n }\r\n @Input() set light(value: boolean) {\r\n if (value) {\r\n this.background = '#fff';\r\n }\r\n }\r\n @Input() tooltip: Tooltip;\r\n @Output() click = new EventEmitter();\r\n\r\n getColor() {\r\n if (this.progress.error) {\r\n return this.warningColor;\r\n } else {\r\n return this.successColor;\r\n }\r\n }\r\n\r\n @Input() set size(value: number) {\r\n switch (+value) {\r\n case 2:\r\n this.radius = 55;\r\n this.stroke = 10;\r\n this.sizeName = 'medium';\r\n break;\r\n case 3:\r\n this.radius = 75;\r\n this.stroke = 10;\r\n this.sizeName = 'large';\r\n break;\r\n }\r\n }\r\n\r\n onClick($event) {\r\n $event.stopPropagation();\r\n this.click.emit($event);\r\n }\r\n\r\n get hasClick() {\r\n return this.click.observers.length > 0;\r\n }\r\n}\r\n","
    \r\n \r\n
    ","import { Component, Input } from '@angular/core';\r\nimport { RenewalStatus } from '../../renewal/model/RenewalStatus';\r\nimport { Renewal } from '../../renewal/model/Renewal';\r\n\r\n@Component({\r\n selector: 'app-renewal-message',\r\n moduleId: module.id,\r\n templateUrl: './renewalMessage.component.html'\r\n})\r\nexport class RenewalMessageComponent {\r\n\r\n @Input() renewal: Renewal;\r\n RenewalStatus = RenewalStatus;\r\n\r\n}\r\n","
    \r\n \r\n
    \r\n

    You don't have anything to renew at the moment

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

    \r\n Our records show that your payment and declarations have been made.

    \r\n We are processing your payment, so please\r\n allow 24 hours for your receipt to become available.\r\n

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

    \r\n Our records show that your payment and declarations have been made, so you do not need to take any further action.\r\n

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

    \r\n Our records show that you have already made your declarations, so you do not need\r\n to take any further action.\r\n

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

    \r\n Our records show that you have not yet made your declarations and payment.\r\n

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

    \r\n Our records show that you have not yet made your declarations.\r\n

    \r\n

    \r\n You must complete your declarations by {{renewal.windowCloseDate | date:'dd/MM/yyyy' }}.\r\n

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

    \r\n Our records show that you have already made your declarations, so you do not need\r\n to take any further action.\r\n

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

    \r\n Our records show that you have not yet made your declarations and payment.\r\n

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

    \r\n Your direct debit payment failed. You can still renew your registration, but you will need to make a declaration and pay\r\n the fee using a debit or credit card.\r\n

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

    \r\n Our records show that you have not renewed your registration by the renewal date. Because of this, your entry will be removed\r\n from the register after your registration has expired.\r\n

    \r\n

    To restore your entry to the register please send us a completed Application for Restoration form. You can download this\r\n form at\r\n http://pharmacyregulation.org/restoration\r\n

    \r\n
    \r\n\r\n\r\n
    ","import { Component, Input, OnInit } from '@angular/core';\r\nimport { CpdEntry } from '../model/review/CpdEntry';\r\nimport { AnswerType } from '../../dynamic/model/AnswerType';\r\nimport { revalidationItemTypes } from '../model/revalidation/revalidationItemTypes';\r\nimport { RevalidationItemTypeConfig } from '../model/revalidation/RevalidationItemTypeConfig';\r\n\r\n@Component({\r\n selector: 'app-cpd-entry',\r\n moduleId: module.id,\r\n templateUrl: './cpdEntry.component.html',\r\n styleUrls: ['./cpdEntry.scss']\r\n})\r\nexport class CpdEntryComponent implements OnInit {\r\n\r\n @Input() cpdEntry: CpdEntry;\r\n @Input() typeVisible = true;\r\n @Input() annotationsVisible = false;\r\n\r\n type: RevalidationItemTypeConfig;\r\n\r\n ngOnInit() {\r\n this.type = revalidationItemTypes.filter(t => t.type === this.cpdEntry.type)[0];\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n

    {{cpdEntry.title}}

    \r\n
    {{type?.title}}
    \r\n
    \r\n \r\n \r\n
    \r\n","
    \r\n
    \r\n
    Your annotation
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    Peer's annotation
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    ","import { Component, Input } from '@angular/core';\r\nimport { CpdEntry } from '../model/review/CpdEntry';\r\n@Component({\r\n selector: 'app-cpd-entry-annotations',\r\n moduleId: module.id,\r\n templateUrl: './cpdEntryAnnotations.component.html'\r\n})\r\nexport class CpdEntryAnnotationsComponent {\r\n\r\n @Input() cpdEntry: CpdEntry;\r\n\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport { CpdEntry } from '../model/review/CpdEntry';\r\nimport { AnswerType } from '../../dynamic/model/AnswerType';\r\n@Component({\r\n selector: 'app-cpd-entry-answers',\r\n moduleId: module.id,\r\n templateUrl: './cpdEntryAnswers.component.html'\r\n})\r\nexport class CpdEntryAnswersComponent {\r\n\r\n @Input() cpdEntry: CpdEntry;\r\n AnswerType = AnswerType;\r\n\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {{ question.answer | date:'dd/MM/yyyy HH:mm'}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, Input, Output, OnChanges, NgZone, EventEmitter, ViewChild, Renderer2 } from '@angular/core';\r\n\r\nimport {RoundProgressService} from './round-progress.service';\r\nimport {RoundProgressConfig} from './round-progress.config';\r\nimport {RoundProgressEase} from './round-progress.ease';\r\n\r\n@Component({\r\n selector: 'round-progress',\r\n template: `\r\n \r\n \r\n\r\n \r\n \r\n `,\r\n host: {\r\n 'role': 'progressbar',\r\n '[attr.aria-valuemin]': 'current',\r\n '[attr.aria-valuemax]': 'max',\r\n '[style.width]': \"responsive ? '' : _diameter + 'px'\",\r\n '[style.height]': '_elementHeight',\r\n '[style.padding-bottom]': '_paddingBottom',\r\n '[class.responsive]': 'responsive'\r\n },\r\n styles: [\r\n `:host {\r\n display: block;\r\n position: relative;\r\n overflow: hidden;\r\n }`,\r\n `:host.responsive {\r\n width: 100%;\r\n padding-bottom: 100%;\r\n }`,\r\n `:host.responsive > svg {\r\n position: absolute;\r\n width: 100%;\r\n height: 100%;\r\n top: 0;\r\n left: 0;\r\n }`\r\n ]\r\n})\r\nexport class RoundProgressComponent implements OnChanges {\r\n private _lastAnimationId: number = 0;\r\n\r\n constructor(\r\n private _service: RoundProgressService,\r\n private _easing: RoundProgressEase,\r\n private _defaults: RoundProgressConfig,\r\n private _ngZone: NgZone,\r\n private _renderer: Renderer2\r\n ) {}\r\n\r\n /** Animates a change in the current value. */\r\n private _animateChange(from: number, to: number): void {\r\n if (typeof from !== 'number') {\r\n from = 0;\r\n }\r\n\r\n to = this._clamp(to);\r\n from = this._clamp(from);\r\n\r\n const self = this;\r\n const changeInValue = to - from;\r\n const duration = self.duration;\r\n\r\n // Avoid firing change detection for each of the animation frames.\r\n self._ngZone.runOutsideAngular(() => {\r\n let start = () => {\r\n const startTime = self._service.getTimestamp();\r\n const id = ++self._lastAnimationId;\r\n\r\n requestAnimationFrame(function animation(){\r\n let currentTime = Math.min(self._service.getTimestamp() - startTime, duration);\r\n let value = self._easing[self.animation](currentTime, from, changeInValue, duration);\r\n\r\n self._setPath(value);\r\n self.onRender.emit(value);\r\n\r\n if (id === self._lastAnimationId && currentTime < duration) {\r\n requestAnimationFrame(animation);\r\n }\r\n });\r\n };\r\n\r\n if (this.animationDelay > 0) {\r\n setTimeout(start, this.animationDelay);\r\n } else {\r\n start();\r\n }\r\n });\r\n }\r\n\r\n /** Sets the path dimensions. */\r\n private _setPath(value: number): void {\r\n if (this._path) {\r\n __ngRendererSetElementAttributeHelper(this._renderer, this._path.nativeElement, 'd', this._service.getArc(value, this.max, this.radius - this.stroke / 2, this.radius, this.semicircle));\r\n }\r\n }\r\n\r\n /** Clamps a value between the maximum and 0. */\r\n private _clamp(value: number): number {\r\n return Math.max(0, Math.min(value || 0, this.max));\r\n }\r\n\r\n /** Determines the SVG transforms for the node. */\r\n getPathTransform(): string {\r\n let diameter = this._diameter;\r\n\r\n if (this.semicircle) {\r\n return this.clockwise ?\r\n `translate(0, ${diameter}) rotate(-90)` :\r\n `translate(${diameter + ',' + diameter}) rotate(90) scale(-1, 1)`;\r\n } else if (!this.clockwise) {\r\n return `scale(-1, 1) translate(-${diameter} 0)`;\r\n }\r\n }\r\n\r\n /** Resolves a color through the service. */\r\n resolveColor(color: string): string {\r\n return this._service.resolveColor(color);\r\n }\r\n\r\n /** Change detection callback. */\r\n ngOnChanges(changes): void {\r\n if (changes.current) {\r\n this._animateChange(changes.current.previousValue, changes.current.currentValue);\r\n } else {\r\n this._setPath(this.current);\r\n }\r\n }\r\n\r\n /** Diameter of the circle. */\r\n get _diameter(): number {\r\n return this.radius * 2;\r\n }\r\n\r\n /** The CSS height of the wrapper element. */\r\n get _elementHeight(): string {\r\n if (!this.responsive) {\r\n return (this.semicircle ? this.radius : this._diameter) + 'px';\r\n }\r\n }\r\n\r\n /** Viewbox for the SVG element. */\r\n get _viewBox(): string {\r\n let diameter = this._diameter;\r\n return `0 0 ${diameter} ${this.semicircle ? this.radius : diameter}`;\r\n }\r\n\r\n /** Bottom padding for the wrapper element. */\r\n get _paddingBottom(): string {\r\n if (this.responsive) {\r\n return this.semicircle ? '50%' : '100%';\r\n }\r\n }\r\n\r\n @ViewChild('path') _path;\r\n @Input() current: number;\r\n @Input() max: number;\r\n @Input() radius: number = this._defaults.get('radius');\r\n @Input() animation: string = this._defaults.get('animation');\r\n @Input() animationDelay: number = this._defaults.get('animationDelay');\r\n @Input() duration: number = this._defaults.get('duration');\r\n @Input() stroke: number = this._defaults.get('stroke');\r\n @Input() color: string = this._defaults.get('color');\r\n @Input() background: string = this._defaults.get('background');\r\n @Input() responsive: boolean = this._defaults.get('responsive');\r\n @Input() clockwise: boolean = this._defaults.get('clockwise');\r\n @Input() semicircle: boolean = this._defaults.get('semicircle');\r\n @Input() rounded: boolean = this._defaults.get('rounded');\r\n @Output() onRender: EventEmitter = new EventEmitter();\r\n}\r\n\r\ntype AnyDuringRendererMigration = any;\r\n\r\nfunction __ngRendererSplitNamespaceHelper(name: AnyDuringRendererMigration) {\r\n if (name[0] === \":\") {\r\n const match = name.match(/^:([^:]+):(.+)$/);\r\n return [match[1], match[2]];\r\n }\r\n return [\"\", name];\r\n}\r\n\r\nfunction __ngRendererSetElementAttributeHelper(renderer: AnyDuringRendererMigration, element: AnyDuringRendererMigration, namespaceAndName: AnyDuringRendererMigration, value?: AnyDuringRendererMigration) {\r\n const [namespace, name] = __ngRendererSplitNamespaceHelper(namespaceAndName);\r\n if (value != null) {\r\n renderer.setAttribute(element, name, value, namespace);\r\n }\r\n else {\r\n renderer.removeAttribute(element, name, namespace);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\n\r\nexport interface RoundProgressDefaults {\r\n radius?: number;\r\n animation?: string;\r\n animationDelay?: number;\r\n duration?: number;\r\n stroke?: number;\r\n color?: string;\r\n background?: string;\r\n responsive?: boolean;\r\n clockwise?: boolean;\r\n semicircle?: boolean;\r\n rounded?: boolean;\r\n}\r\n\r\n@Injectable()\r\nexport class RoundProgressConfig {\r\n private _options: RoundProgressDefaults = {\r\n radius: 125,\r\n animation: 'easeOutCubic',\r\n animationDelay: null,\r\n duration: 500,\r\n stroke: 15,\r\n color: '#45CCCE',\r\n background: '#EAEAEA',\r\n responsive: false,\r\n clockwise: true,\r\n semicircle: false,\r\n rounded: false\r\n };\r\n\r\n /** Configures the defaults. */\r\n setDefaults(config: RoundProgressDefaults): RoundProgressDefaults {\r\n return Object.assign(this._options, config);\r\n }\r\n\r\n /** Fetches a value from the defaults. */\r\n get(key: string) {\r\n return this._options[key];\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\n\r\n@Injectable()\r\nexport class RoundProgressEase {\r\n // t: current time (or position) of the neonate. This can be seconds or frames, steps,\r\n // seconds, ms, whatever – as long as the unit is the same as is used for the total time.\r\n // b: beginning value of the property.\r\n // c: change between the beginning and destination value of the property.\r\n // d: total time of the neonate.\r\n\r\n linearEase(t: number, b: number, c: number, d: number): number {\r\n return c * t / d + b;\r\n };\r\n\r\n easeInQuad(t: number, b: number, c: number, d: number): number {\r\n return c * (t /= d) * t + b;\r\n };\r\n\r\n easeOutQuad(t: number, b: number, c: number, d: number): number {\r\n return -c * (t /= d) * (t - 2) + b;\r\n };\r\n\r\n easeInOutQuad(t: number, b: number, c: number, d: number): number {\r\n if ((t /= d / 2) < 1) {\r\n return c / 2 * t * t + b;\r\n }\r\n\r\n return -c / 2 * ((--t) * (t - 2) - 1) + b;\r\n };\r\n\r\n easeInCubic(t: number, b: number, c: number, d: number): number {\r\n return c * (t /= d) * t * t + b;\r\n };\r\n\r\n easeOutCubic(t: number, b: number, c: number, d: number): number {\r\n return c * ((t = t / d - 1) * t * t + 1) + b;\r\n };\r\n\r\n easeInOutCubic(t: number, b: number, c: number, d: number): number {\r\n if ((t /= d / 2) < 1) {\r\n return c / 2 * t * t * t + b;\r\n }\r\n\r\n return c / 2 * ((t -= 2) * t * t + 2) + b;\r\n };\r\n\r\n easeInQuart(t: number, b: number, c: number, d: number): number {\r\n return c * (t /= d) * t * t * t + b;\r\n };\r\n\r\n easeOutQuart(t: number, b: number, c: number, d: number): number {\r\n return -c * ((t = t / d - 1) * t * t * t - 1) + b;\r\n };\r\n\r\n easeInOutQuart(t: number, b: number, c: number, d: number): number {\r\n if ((t /= d / 2) < 1) {\r\n return c / 2 * t * t * t * t + b;\r\n }\r\n\r\n return -c / 2 * ((t -= 2) * t * t * t - 2) + b;\r\n };\r\n\r\n easeInQuint(t: number, b: number, c: number, d: number): number {\r\n return c * (t /= d) * t * t * t * t + b;\r\n };\r\n\r\n easeOutQuint(t: number, b: number, c: number, d: number): number {\r\n return c * ((t = t / d - 1) * t * t * t * t + 1) + b;\r\n };\r\n\r\n easeInOutQuint(t: number, b: number, c: number, d: number): number {\r\n if ((t /= d / 2) < 1) {\r\n return c / 2 * t * t * t * t * t + b;\r\n }\r\n\r\n return c / 2 * ((t -= 2) * t * t * t * t + 2) + b;\r\n };\r\n\r\n easeInSine(t: number, b: number, c: number, d: number): number {\r\n return -c * Math.cos(t / d * (Math.PI / 2)) + c + b;\r\n };\r\n\r\n easeOutSine(t: number, b: number, c: number, d: number): number {\r\n return c * Math.sin(t / d * (Math.PI / 2)) + b;\r\n };\r\n\r\n easeInOutSine(t: number, b: number, c: number, d: number): number {\r\n return -c / 2 * (Math.cos(Math.PI * t / d) - 1) + b;\r\n };\r\n\r\n easeInExpo(t: number, b: number, c: number, d: number): number {\r\n return (t == 0) ? b : c * Math.pow(2, 10 * (t / d - 1)) + b;\r\n };\r\n\r\n easeOutExpo(t: number, b: number, c: number, d: number): number {\r\n return (t == d) ? b + c : c * (-Math.pow(2, -10 * t / d) + 1) + b;\r\n };\r\n\r\n easeInOutExpo(t: number, b: number, c: number, d: number): number {\r\n if (t == 0) {\r\n return b;\r\n };\r\n\r\n if (t == d) {\r\n return b + c;\r\n }\r\n\r\n if ((t /= d / 2) < 1) {\r\n return c / 2 * Math.pow(2, 10 * (t - 1)) + b;\r\n }\r\n\r\n return c / 2 * (-Math.pow(2, -10 * --t) + 2) + b;\r\n };\r\n\r\n easeInCirc(t: number, b: number, c: number, d: number): number {\r\n return -c * (Math.sqrt(1 - (t /= d) * t) - 1) + b;\r\n };\r\n\r\n easeOutCirc(t: number, b: number, c: number, d: number): number {\r\n return c * Math.sqrt(1 - (t = t / d - 1) * t) + b;\r\n };\r\n\r\n easeInOutCirc(t: number, b: number, c: number, d: number): number {\r\n if ((t /= d / 2) < 1) {\r\n return -c / 2 * (Math.sqrt(1 - t * t) - 1) + b;\r\n }\r\n\r\n return c / 2 * (Math.sqrt(1 - (t -= 2) * t) + 1) + b;\r\n };\r\n\r\n easeInElastic(t: number, b: number, c: number, d: number): number {\r\n let s = 1.70158;\r\n let p = d * 0.3;\r\n let a = c;\r\n\r\n if (t == 0) {\r\n return b;\r\n }\r\n\r\n if ((t /= d) == 1) {\r\n return b + c;\r\n }\r\n\r\n if (a < Math.abs(c)) {\r\n a = c;\r\n s = p / 4;\r\n } else {\r\n s = p / (2 * Math.PI) * Math.asin(c / a);\r\n }\r\n\r\n return -(a * Math.pow(2, 10 * (t--)) * Math.sin((t * d - s) * (2 * Math.PI) / p)) + b;\r\n };\r\n\r\n easeOutElastic(t: number, b: number, c: number, d: number): number {\r\n let s = 1.70158;\r\n let p = d * 0.3;\r\n let a = c;\r\n\r\n if (t == 0) {\r\n return b;\r\n }\r\n\r\n if ((t /= d) == 1) {\r\n return b + c;\r\n }\r\n\r\n if (a < Math.abs(c)) {\r\n a = c;\r\n s = p / 4;\r\n } else {\r\n s = p / (2 * Math.PI) * Math.asin(c / a);\r\n }\r\n\r\n return a * Math.pow(2, -10 * t) * Math.sin((t * d - s) * (2 * Math.PI) / p) + c + b;\r\n };\r\n\r\n easeInOutElastic(t: number, b: number, c: number, d: number): number {\r\n let s = 1.70158;\r\n let p = d * (0.3 * 1.5);\r\n let a = c;\r\n\r\n if (t == 0) {\r\n return b;\r\n }\r\n\r\n if ((t /= d / 2) == 2) {\r\n return b + c;\r\n }\r\n\r\n if (a < Math.abs(c)) {\r\n a = c;\r\n s = p / 4;\r\n } else {\r\n s = p / (2 * Math.PI) * Math.asin(c / a);\r\n }\r\n\r\n if (t < 1) {\r\n return -0.5 * (a * Math.pow(2, 10 * (t -= 1)) *\r\n Math.sin((t * d - s) * (2 * Math.PI) / p)) + b;\r\n }\r\n\r\n return a * Math.pow(2, -10 * (t -= 1)) *\r\n Math.sin((t * d - s) * (2 * Math.PI) / p) * 0.5 + c + b;\r\n };\r\n\r\n easeInBack(t: number, b: number, c: number, d: number, s = 1.70158): number {\r\n return c * (t /= d) * t * ((s + 1) * t - s) + b;\r\n };\r\n\r\n easeOutBack(t: number, b: number, c: number, d: number, s = 1.70158): number {\r\n return c * ((t = t / d - 1) * t * ((s + 1) * t + s) + 1) + b;\r\n };\r\n\r\n easeInOutBack(t: number, b: number, c: number, d: number, s = 1.70158): number {\r\n if ((t /= d / 2) < 1) {\r\n return c / 2 * (t * t * (((s *= 1.525) + 1) * t - s)) + b;\r\n }\r\n\r\n return c / 2 * ((t -= 2) * t * (((s *= 1.525) + 1) * t + s) + 2) + b;\r\n };\r\n\r\n easeInBounce(t: number, b: number, c: number, d: number): number {\r\n return c - this.easeOutBounce(d - t, 0, c, d) + b;\r\n };\r\n\r\n easeOutBounce(t: number, b: number, c: number, d: number): number {\r\n if ((t /= d) < (1 / 2.75)) {\r\n return c * (7.5625 * t * t) + b;\r\n } else if (t < (2 / 2.75)) {\r\n return c * (7.5625 * (t -= (1.5 / 2.75)) * t + 0.75) + b;\r\n } else if (t < (2.5 / 2.75)) {\r\n return c * (7.5625 * (t -= (2.25 / 2.75)) * t + 0.9375) + b;\r\n }\r\n\r\n return c * (7.5625 * (t -= (2.625 / 2.75)) * t + 0.984375) + b;\r\n };\r\n\r\n easeInOutBounce(t: number, b: number, c: number, d: number): number {\r\n if (t < d / 2) {\r\n return this.easeInBounce(t * 2, 0, c, d) * 0.5 + b;\r\n }\r\n\r\n return this.easeOutBounce(t * 2 - d, 0, c, d) * 0.5 + c * 0.5 + b;\r\n };\r\n}\r\n\r\n\r\n/**\r\n * TERMS OF USE - EASING EQUATIONS\r\n * Open source under the BSD License.\r\n\r\n * Copyright © 2001 Robert Penner\r\n * All rights reserved.\r\n * Redistribution and use in source and binary forms, with or without modification, are permitted\r\n * provided that the following conditions are met:\r\n\r\n * Redistributions of source code must retain the above copyright notice, this list of conditions\r\n * and the following disclaimer.\r\n *\r\n * Redistributions in binary form must reproduce the above copyright notice, this list of conditions\r\n * and the following disclaimer in the documentation and/or other materials provided with the\r\n * distribution.\r\n *\r\n * Neither the name of the author nor the names of contributors may be used to endorse or promote\r\n * products derived from this software without specific prior written permission.\r\n *\r\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR\r\n * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND\r\n * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR\r\n * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\r\n * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\r\n * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,\r\n * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN\r\n * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r\n */\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\n\r\nimport {RoundProgressComponent} from './round-progress.component';\r\nimport {RoundProgressService} from './round-progress.service';\r\nimport {RoundProgressEase} from './round-progress.ease';\r\nimport {RoundProgressConfig} from './round-progress.config';\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n declarations: [RoundProgressComponent],\r\n exports: [RoundProgressComponent],\r\n providers: [RoundProgressService, RoundProgressEase, RoundProgressConfig]\r\n})\r\nexport class RoundProgressModule {}\r\n","import {Injectable, Inject, Optional} from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\nconst DEGREE_IN_RADIANS: number = Math.PI / 180;\r\n\r\n@Injectable()\r\nexport class RoundProgressService {\r\n private _base: HTMLBaseElement;\r\n private _hasPerf: boolean;\r\n public supportsSvg: boolean;\r\n\r\n constructor(@Optional() @Inject(DOCUMENT) document: any) {\r\n this.supportsSvg = !!(\r\n document &&\r\n document.createElementNS &&\r\n document.createElementNS('http://www.w3.org/2000/svg', 'svg').createSVGRect\r\n );\r\n\r\n this._base = document && document.head.querySelector('base');\r\n this._hasPerf = typeof window !== 'undefined' &&\r\n window.performance &&\r\n window.performance.now &&\r\n typeof window.performance.now() === 'number';\r\n }\r\n\r\n /**\r\n * Resolves a SVG color against the page's `base` tag.\r\n */\r\n resolveColor(color: string): string {\r\n if (this._base && this._base.href) {\r\n let hashIndex = color.indexOf('#');\r\n\r\n if (hashIndex > -1 && color.indexOf('url') > -1) {\r\n return color.slice(0, hashIndex) + location.href + color.slice(hashIndex);\r\n }\r\n }\r\n\r\n return color;\r\n }\r\n\r\n /**\r\n * Generates a timestamp.\r\n */\r\n getTimestamp(): number {\r\n return this._hasPerf ? window.performance.now() : Date.now();\r\n }\r\n\r\n /**\r\n * Generates the value for an SVG arc.\r\n * @param current Current value.\r\n * @param total Maximum value.\r\n * @param pathRadius Radius of the SVG path.\r\n * @param elementRadius Radius of the SVG container.\r\n * @param isSemicircle Whether the element should be a semicircle.\r\n */\r\n getArc(current: number, total: number, pathRadius: number,\r\n elementRadius: number, isSemicircle = false): string {\r\n\r\n let value = Math.max(0, Math.min(current || 0, total));\r\n let maxAngle = isSemicircle ? 180 : 359.9999;\r\n let percentage = total === 0 ? maxAngle : (value / total) * maxAngle;\r\n let start = this._polarToCartesian(elementRadius, pathRadius, percentage);\r\n let end = this._polarToCartesian(elementRadius, pathRadius, 0);\r\n let arcSweep = (percentage <= 180 ? 0 : 1);\r\n\r\n return `M ${start} A ${pathRadius} ${pathRadius} 0 ${arcSweep} 0 ${end}`;\r\n };\r\n\r\n /**\r\n * Converts polar cooradinates to Cartesian.\r\n * @param elementRadius Radius of the wrapper element.\r\n * @param pathRadius Radius of the path being described.\r\n * @param angleInDegrees Degree to be converted.\r\n */\r\n private _polarToCartesian(elementRadius: number, pathRadius: number,\r\n angleInDegrees: number): string {\r\n\r\n let angleInRadians = (angleInDegrees - 90) * DEGREE_IN_RADIANS;\r\n let x = elementRadius + (pathRadius * Math.cos(angleInRadians));\r\n let y = elementRadius + (pathRadius * Math.sin(angleInRadians));\r\n\r\n return x + ' ' + y;\r\n }\r\n};\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { RevalidationSubmission } from '../../model/revalidation/RevalidationSubmission';\r\nimport { RevalidationItemType } from '../../model/revalidation/RevalidationItemType';\r\nimport { RevalidationItem } from '../../model/revalidation/RevalidationItem';\r\nimport { SubmissionInfo } from '../../model/revalidation/SubmissionInfo';\r\nimport { SubmissionExpectations } from '../../model/revalidation/SubmissionExpectations';\r\nimport { FormTemplate } from '../../../dynamic/model/FormTemplate';\r\nimport { RevalidationService } from '../../../core/service/revalidation.service';\r\n\r\n@Injectable()\r\nexport class RevalidationLogic {\r\n\r\n submission: RevalidationSubmission;\r\n expectations: SubmissionExpectations;\r\n items: RevalidationItem[];\r\n requiredCount = {};\r\n overMaxWarning = {};\r\n countInfo = {};\r\n loaded = false;\r\n constructor(@Inject(RevalidationService) private service: RevalidationService) {\r\n }\r\n\r\n countQuestions(template: FormTemplate) {\r\n return template.questionGroups\r\n .reduce((acc, questionGroup) => {\r\n acc += questionGroup.questions ? questionGroup.questions.length : 0;\r\n return acc;\r\n }, 0);\r\n }\r\n\r\n setItemProgress(item: RevalidationItem) {\r\n item.completed = item.isCompleted;\r\n item.progress = item.answers.length;\r\n this.service.getFormTemplateById(item.dynamicFormId).subscribe(template => {\r\n item.total = this.countQuestions(template);\r\n });\r\n }\r\n\r\n load(items: RevalidationItem[], expectations: SubmissionExpectations) {\r\n this.items = items || [];\r\n this.submission = new RevalidationSubmission();\r\n this.expectations = expectations;\r\n this.submission.total = expectations.expectedTotalCount;\r\n // this.submission.submitted = info.submitted;\r\n // this.submission.submissionDate = info.submissionDate;\r\n this.items.forEach(item => this.setItemProgress(item));\r\n\r\n this.setProgress();\r\n this.loaded = true;\r\n }\r\n\r\n setProgress() {\r\n for (const key in RevalidationItemType) {\r\n if (+key > 0 && RevalidationItemType.hasOwnProperty(key) && !isNaN(Number(key))) {\r\n this.requiredCount[key] = this.getRequiredCount(Number(key));\r\n this.overMaxWarning[key] = this.getOverMaxWarning(Number(key));\r\n this.countInfo[key] = this.getCountInfo(Number(key));\r\n }\r\n }\r\n const submission = Object.assign({}, this.submission);\r\n submission.progress = this.getProgress();\r\n submission.completed = this.getIsCompleted();\r\n submission.error = submission.invalid = this.hasOverMax();\r\n this.submission = submission;\r\n return submission;\r\n }\r\n\r\n getRequiredCount(type: RevalidationItemType) {\r\n switch (type) {\r\n case RevalidationItemType.PeerDiscussion:\r\n return +this.expectations.expectedPeerDiscussions;\r\n case RevalidationItemType.ReflectiveAccount:\r\n return +this.expectations.expectedReflectiveAccounts;\r\n case RevalidationItemType.Unplanned:\r\n return +this.expectations.maxUnplanned;\r\n case RevalidationItemType.Planned:\r\n let unplannedCpdCount = this.getUnplannedCpdCount();\r\n unplannedCpdCount = unplannedCpdCount > this.expectations.maxUnplanned ? 2 : unplannedCpdCount;\r\n return +this.expectations.expectedCpds - unplannedCpdCount;\r\n }\r\n }\r\n\r\n getCountInfo(type: RevalidationItemType): string {\r\n switch (type) {\r\n case RevalidationItemType.Planned:\r\n case RevalidationItemType.Unplanned:\r\n return `You must submit a total of ${this.expectations.expectedCpds} CPDs,\r\n of which up to ${this.expectations.maxUnplanned} may be unplanned`;\r\n case RevalidationItemType.PeerDiscussion:\r\n if (this.expectations.expectedPeerDiscussions > 1) {\r\n return `You must submit ${this.expectations.expectedPeerDiscussions} peer discussions`;\r\n } else {\r\n return `You must submit ${this.expectations.expectedPeerDiscussions} peer discussion.`;\r\n }\r\n case RevalidationItemType.ReflectiveAccount:\r\n if (this.expectations.expectedReflectiveAccounts > 1) {\r\n return `You must submit ${this.expectations.expectedReflectiveAccounts} reflective accounts`;\r\n } else {\r\n return `You must submit ${this.expectations.expectedReflectiveAccounts} reflective account`;\r\n }\r\n }\r\n }\r\n\r\n getOverMaxWarning(type: RevalidationItemType): string {\r\n switch (type) {\r\n case RevalidationItemType.PeerDiscussion:\r\n if (this.expectations.expectedPeerDiscussions > 1) {\r\n return `You may only submit ${this.expectations.expectedPeerDiscussions} peer discussions`;\r\n } else {\r\n return `You may submit only ${this.expectations.expectedPeerDiscussions} peer discussion`;\r\n }\r\n\r\n case RevalidationItemType.ReflectiveAccount:\r\n\r\n if (this.expectations.expectedReflectiveAccounts > 1) {\r\n return `You may only submit ${this.expectations.expectedReflectiveAccounts} reflective accounts`;\r\n } else {\r\n return `You may submit only ${this.expectations.expectedReflectiveAccounts} reflective account`;\r\n }\r\n case RevalidationItemType.Unplanned:\r\n if (this.expectations.maxUnplanned > 1) {\r\n return `You may only submit a maximum of ${this.expectations.maxUnplanned} unplanned CPDs`;\r\n } else {\r\n return `You may submit only ${this.expectations.maxUnplanned} unplanned CPD`;\r\n }\r\n case RevalidationItemType.Planned:\r\n let unplannedCpdCount = this.getUnplannedCpdCount();\r\n const plannedCpdCount = this.getPlannedCpdCount();\r\n unplannedCpdCount = unplannedCpdCount > this.expectations.maxUnplanned ? 2 : unplannedCpdCount;\r\n if (!unplannedCpdCount) { return `You may only submit ${this.expectations.expectedCpds} CPDs in total.` };\r\n let message = `You must submit a maximum of ${this.expectations.expectedCpds} CPDs. `;\r\n if (unplannedCpdCount === 1) {\r\n message += `As you have created an unplanned CPD, `;\r\n }\r\n if (unplannedCpdCount > 1) {\r\n message += `As you already have ${unplannedCpdCount} unplanned CPDs, `;\r\n }\r\n message += `you only need to submit\r\n ${this.expectations.expectedCpds - unplannedCpdCount}\r\n planned. `;\r\n\r\n const plannedCpdCountToSubmit = plannedCpdCount <= this.expectations.maxUnplanned ? plannedCpdCount :\r\n this.expectations.expectedCpds;\r\n\r\n if (plannedCpdCountToSubmit === this.expectations.expectedCpds) {\r\n message += `(If you want to submit ${plannedCpdCountToSubmit} planned CPDs,\r\n you must exclude your unplanned ones.)`;\r\n\r\n } else {\r\n message += `(If you want to submit ${plannedCpdCountToSubmit} planned,\r\n you must exclude ${this.getUnplannedCpdCount() -\r\n (this.expectations.expectedCpds - plannedCpdCount)} unplanned.)`;\r\n }\r\n\r\n return message;\r\n }\r\n }\r\n\r\n hasOverMax() {\r\n return this.getUnplannedCpdCount() > this.expectations.maxUnplanned ||\r\n this.getPlannedCpdCount() > (this.expectations.expectedCpds - this.getUnplannedCpdCount()) ||\r\n this.getReflectiveAccountCount() > this.expectations.expectedReflectiveAccounts ||\r\n this.getPeerDiscussionCount() > this.expectations.expectedPeerDiscussions;\r\n }\r\n\r\n getUnplannedCpdCount(): number {\r\n return this.items\r\n .filter(item =>\r\n item.included &&\r\n item.type === RevalidationItemType.Unplanned).length;\r\n }\r\n\r\n getPlannedCpdCount(): number {\r\n return this.items\r\n .filter(item =>\r\n item.included &&\r\n item.type === RevalidationItemType.Planned).length;\r\n }\r\n\r\n getReflectiveAccountCount(): number {\r\n return this.items\r\n .filter(item =>\r\n item.included &&\r\n item.type === RevalidationItemType.ReflectiveAccount).length;\r\n }\r\n\r\n getPeerDiscussionCount(): number {\r\n return this.items\r\n .filter(item => item.included &&\r\n item.type === RevalidationItemType.PeerDiscussion).length;\r\n }\r\n\r\n getCompletedCpdCount(): number {\r\n const unplannedCpdCount = this.items\r\n .filter(item =>\r\n item.included &&\r\n item.type === RevalidationItemType.Unplanned &&\r\n item.completed).length;\r\n const plannedCount = this.items\r\n .filter(item =>\r\n item.included &&\r\n item.type === RevalidationItemType.Planned &&\r\n item.completed).length;\r\n return unplannedCpdCount + plannedCount;\r\n }\r\n\r\n getNotCompleted(): Array {\r\n return this.items\r\n .filter(item =>\r\n item.included &&\r\n !item.completed);\r\n }\r\n\r\n markAllIncludedItemsAsCompleted() {\r\n const notCompleted = this.getNotCompleted();\r\n notCompleted.forEach(item => {\r\n item.completed = true;\r\n });\r\n this.setProgress();\r\n }\r\n\r\n getProgress() {\r\n const reflectiveAccountCount = this.items\r\n .filter(item =>\r\n item.included &&\r\n item.type === RevalidationItemType.ReflectiveAccount &&\r\n item.completed).length;\r\n\r\n const peerDiscussionCount = this.items\r\n .filter(item =>\r\n item.included &&\r\n item.type === RevalidationItemType.PeerDiscussion &&\r\n item.completed).length;\r\n\r\n return this.getCompletedCpdCount() + reflectiveAccountCount + peerDiscussionCount;\r\n }\r\n\r\n getIsCompleted() {\r\n return this.getProgress() === this.expectations.expectedTotalCount && !this.hasOverMax();\r\n }\r\n\r\n}\r\n","import { DateFormat } from '../model/DateFormat';\r\n\r\nconst getDate = function(date: any): Date {\r\n if (!date) { return undefined; }\r\n if (!(date instanceof Date)) {\r\n if (!date.split) { return undefined; }\r\n date = new Date(date.split('T')[0]);\r\n }\r\n const offset = date.getTimezoneOffset();\r\n if (isNaN(offset)) {\r\n return undefined;\r\n }\r\n return date;\r\n};\r\n\r\n/*\r\n const ticks = date.getTime();\r\n const adjusted = ticks + (offset * 60 * 1000);\r\n const adjustedDate = new Date(adjusted);\r\n return adjustedDate;\r\n*/\r\nconst oldDateToJSON = Date.prototype.toJSON;\r\n\r\nDate.prototype.toJSON = function() {\r\n return serverDate(this);\r\n};\r\n\r\n\r\n\r\nconst dateParts = function(date: any) {\r\n if (!date) { return undefined; }\r\n if (!(date instanceof Date)) {\r\n date = new Date(date.split('T')[0]);\r\n }\r\n const year = date.getFullYear();\r\n let month = (date.getMonth() + 1).toString();\r\n if (month.length === 1) {\r\n month = '0' + month;\r\n }\r\n let day = date.getDate().toString();\r\n if (day.length === 1) {\r\n day = '0' + day;\r\n }\r\n return { day, month, year };\r\n};\r\n\r\nconst serverDate = function(date: Date): string {\r\n if (!date) { return ''; }\r\n const parts = dateParts(date);\r\n return `${parts.year}-${parts.month}-${parts.day}`;\r\n};\r\n\r\nconst displayDate = function(date: Date): string {\r\n if (!date) { return ''; }\r\n const parts = dateParts(date);\r\n return `${parts.day}/${parts.month}/${parts.year}`;\r\n};\r\n\r\nexport const api = {\r\n oldDateToJSON,\r\n guid: () => {\r\n function s4() {\r\n return Math.floor((1 + Math.random()) * 0x10000)\r\n .toString(16)\r\n .substring(1);\r\n }\r\n return s4() + s4() + '-' + s4() + '-' + s4() + '-' +\r\n s4() + '-' + s4() + s4() + s4();\r\n },\r\n formatDate(date: any, format: DateFormat = DateFormat.Server): string {\r\n if (!date) {\r\n return '';\r\n }\r\n date = getDate(date);\r\n if (format === DateFormat.Server) {\r\n return serverDate(date);\r\n }\r\n return displayDate(date);\r\n }\r\n};\r\n\r\nexport default api;\r\n\r\n","import { NgModule, ErrorHandler } from '@angular/core';\r\nimport { CommonModule, DatePipe } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { RouterModule } from '@angular/router';\r\nimport { ProgressIndicatorComponent } from './progressIndicator.component';\r\nimport { RoundProgressModule } from './round-progress/round-progress.module';\r\nimport { KeysPipe } from './pipe/Keys.pipe';\r\nimport { ReversePipe } from './pipe/Reverse.pipe';\r\nimport { CaseSplitPipe } from './pipe/CaseSplit.pipe';\r\nimport { RevalidationItemTypePipe } from './pipe/ItemTypeFilter.pipe';\r\nimport { FriendlyBooleanPipe } from './pipe/FriendlyBoolean.pipe';\r\nimport { SubmissionPipe } from './pipe/Submission.pipe';\r\nimport { TimePipe } from './pipe/Time.pipe';\r\nimport { WizardStepsComponent } from './wizardSteps.component';\r\nimport { StickyComponent } from './sticky.component';\r\nimport { FormLayoutComponent } from './formLayout.component';\r\nimport { FormSectionComponent } from './formSection.component';\r\nimport { FormReviewComponent } from './formReview.component';\r\nimport { BannerComponent } from './banner.component';\r\nimport { GphcIconComponent } from './gphc-icon.component';\r\nimport { TextEditorComponent } from './textEditor.component';\r\nimport { SpinnerComponent } from './spinner.component';\r\n\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\n\r\nimport { ConfirmDialogComponent } from './confirmDialog.component';\r\nimport { FileUploadComponent } from './fileUpload.component';\r\nimport { CollapsibleComponent } from './collapsible.component';\r\nimport { CarouselComponent } from './carousel.component';\r\nimport { CarouselNavComponent } from './carousel-nav.component';\r\nimport { ToolbarComponent } from './toolbar.component';\r\nimport { CustomErrorHandler } from '../core/service/CustomErrorHandler';\r\nimport { RenewalMessageComponent } from './renewal/renewalMessage.component';\r\nimport { CpdEntryComponent } from './revalidation/cpdEntry.component';\r\nimport { CpdEntryAnnotationsComponent } from './revalidation/cpdEntryAnnotations.component';\r\nimport { CpdEntryAnswersComponent } from './revalidation/cpdEntryAnswers.component';\r\nimport { TooltipModule } from '../core/tooltip/tooltip.module';\r\nimport { FaqDirective } from './faq.directive';\r\nimport { FaqLinkDirective } from './faqLink.directive';\r\nimport { FaqComponent } from './faq.component';\r\nimport { AutocompleteComponent } from './autocomplete.component';\r\nimport { OverlayComponent } from './overlay.component';\r\nimport { FullscreenSpinnerComponent } from './fullscreenSpinner.component';\r\nimport { ValidationErrorsComponent } from './validationErrors.component';\r\nimport { LowercaseDirective } from './lowercase.directive';\r\nimport { UtcDatePipe } from './pipe/UtcDate.pipe';\r\nimport { MatNativeDateModule } from '@angular/material/core';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { UtcDatePickerComponent } from './utcDatePicker.component';\r\nimport { FormStepperComponent } from './formStepper/formStepper.component';\r\nimport { FormStepperMenuComponent } from './formStepper/formStepperMenu.component';\r\nimport { DaterangeComponent } from './daterange.component';\r\nimport { SupportingDocumentsItemComponent } from './supportingDocuments/supportingDocumentsItem.component';\r\n\r\nimport { SupportingDocumentsSummaryComponent } from './supportingDocuments/supportingDocumentsSummary.component';\r\nimport { Banner2Component } from './banner2.component';\r\nimport { StripHtmlPipe } from './pipe/StripHtml.pipe';\r\nimport { DobDatePipe } from './pipe/DobDate.pipe';\r\n\r\nimport { InputValidator } from './inputValidator.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n RoundProgressModule,\r\n MatProgressSpinnerModule,\r\n MatDatepickerModule,\r\n MatNativeDateModule,\r\n MatDialogModule,\r\n MatSelectModule,\r\n MatMenuModule,\r\n MatRadioModule,\r\n TooltipModule,\r\n MatProgressBarModule,\r\n MatAutocompleteModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatCheckboxModule\r\n ],\r\n declarations: [\r\n ProgressIndicatorComponent,\r\n WizardStepsComponent,\r\n KeysPipe,\r\n CaseSplitPipe,\r\n ReversePipe,\r\n UtcDatePipe,\r\n RevalidationItemTypePipe,\r\n UtcDatePipe,\r\n SubmissionPipe,\r\n FriendlyBooleanPipe,\r\n TimePipe,\r\n StickyComponent,\r\n FormLayoutComponent,\r\n FormReviewComponent,\r\n FormSectionComponent,\r\n BannerComponent,\r\n GphcIconComponent,\r\n TextEditorComponent,\r\n SpinnerComponent,\r\n ConfirmDialogComponent,\r\n FileUploadComponent,\r\n CollapsibleComponent,\r\n CarouselComponent,\r\n CarouselNavComponent,\r\n ToolbarComponent,\r\n RenewalMessageComponent,\r\n CpdEntryComponent,\r\n CpdEntryAnnotationsComponent,\r\n CpdEntryAnswersComponent,\r\n FaqDirective,\r\n FaqLinkDirective,\r\n FaqComponent,\r\n OverlayComponent,\r\n FullscreenSpinnerComponent,\r\n AutocompleteComponent,\r\n ValidationErrorsComponent,\r\n LowercaseDirective,\r\n UtcDatePickerComponent,\r\n FormStepperComponent,\r\n FormStepperMenuComponent,\r\n DaterangeComponent,\r\n SupportingDocumentsItemComponent,\r\n SupportingDocumentsSummaryComponent,\r\n Banner2Component,\r\n StripHtmlPipe,\r\n DobDatePipe,\r\n InputValidator\r\n ],\r\n exports: [\r\n ProgressIndicatorComponent,\r\n WizardStepsComponent,\r\n KeysPipe,\r\n CaseSplitPipe,\r\n UtcDatePipe,\r\n ReversePipe,\r\n RevalidationItemTypePipe,\r\n SubmissionPipe,\r\n FriendlyBooleanPipe,\r\n UtcDatePipe,\r\n TimePipe,\r\n StickyComponent,\r\n FormLayoutComponent,\r\n FormReviewComponent,\r\n FormSectionComponent,\r\n BannerComponent,\r\n GphcIconComponent,\r\n TextEditorComponent,\r\n SpinnerComponent,\r\n MatProgressSpinnerModule,\r\n ConfirmDialogComponent,\r\n FileUploadComponent,\r\n CollapsibleComponent,\r\n CarouselComponent,\r\n CarouselNavComponent,\r\n ToolbarComponent,\r\n RenewalMessageComponent,\r\n CpdEntryComponent,\r\n CpdEntryAnnotationsComponent,\r\n CpdEntryAnswersComponent,\r\n MatDialogModule,\r\n MatMenuModule,\r\n MatCheckboxModule,\r\n MatRadioModule,\r\n MatSelectModule,\r\n MatProgressBarModule,\r\n MatAutocompleteModule,\r\n OverlayComponent,\r\n FullscreenSpinnerComponent,\r\n AutocompleteComponent,\r\n TooltipModule,\r\n FaqDirective,\r\n FaqLinkDirective,\r\n FaqComponent,\r\n ValidationErrorsComponent,\r\n LowercaseDirective,\r\n UtcDatePickerComponent,\r\n FormStepperComponent,\r\n FormStepperMenuComponent,\r\n DaterangeComponent,\r\n RoundProgressModule,\r\n SupportingDocumentsItemComponent,\r\n SupportingDocumentsSummaryComponent,\r\n Banner2Component,\r\n StripHtmlPipe,\r\n DobDatePipe,\r\n InputValidator\r\n ],\r\n providers: [\r\n { provide: ErrorHandler, useClass: CustomErrorHandler },\r\n CaseSplitPipe, StripHtmlPipe,\r\n DatePipe\r\n ]\r\n})\r\nexport class SharedModule { }\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-spinner',\r\n moduleId: module.id,\r\n template: `\r\n
    \r\n `,\r\n styleUrls: ['./spinner.scss']\r\n})\r\nexport class SpinnerComponent implements OnInit {\r\n\r\n @Input() light = false;\r\n @Input() large = false;\r\n @Input() small = false;\r\n @Input() tiny = false;\r\n @Input() diameter = 100;\r\n color = 'accent';\r\n\r\n ngOnInit() {\r\n if (this.light) {\r\n this.color = 'primary';\r\n }\r\n if (this.small) {\r\n this.diameter = 50;\r\n }\r\n if (this.tiny) {\r\n this.diameter = 30;\r\n }\r\n if (this.large) {\r\n this.diameter = 120;\r\n }\r\n }\r\n\r\n\r\n}\r\n","import { Component, Input, HostListener, Inject, ElementRef, OnInit } from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n\r\n@Component({\r\n selector: 'app-sticky',\r\n moduleId: module.id,\r\n templateUrl: 'sticky.component.html',\r\n styleUrls: ['./sticky.scss']\r\n})\r\nexport class StickyComponent implements OnInit {\r\n\r\n public isFixed = false;\r\n el: any;\r\n container: any;\r\n containerTop: number;\r\n width: number;\r\n\r\n constructor( @Inject(DOCUMENT) private document: Document, private elRef: ElementRef) { }\r\n\r\n @HostListener('window:scroll', [])\r\n onWindowScroll() {\r\n\r\n let scrollTop;\r\n if (this.document.documentElement) {\r\n scrollTop = this.document.documentElement.scrollTop;\r\n } else {\r\n scrollTop = this.document.body.scrollTop;\r\n }\r\n\r\n if (scrollTop > this.containerTop) {\r\n this.isFixed = true;\r\n } else if (this.isFixed && scrollTop < this.containerTop) {\r\n this.isFixed = false;\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.el = this.elRef.nativeElement;\r\n this.container = this.el.parentNode;\r\n this.containerTop = this.container.offsetTop; // this.getBoundingClientRectValue(this.container, 'top');\r\n this.width = this.getBoundingClientRectValue(this.container, 'width');\r\n }\r\n\r\n\r\n private getBoundingClientRectValue(element: any, property: string): number {\r\n let result = 0;\r\n if (element.getBoundingClientRect) {\r\n const rect = element.getBoundingClientRect();\r\n result = (typeof rect[property] !== 'undefined') ? rect[property] : 0;\r\n }\r\n return result;\r\n }\r\n\r\n}\r\n","
    \r\n \r\n
    ","import { Injectable } from '@angular/core';\r\nimport { AttachmentType } from '../model/AttachmentType';\r\n\r\n@Injectable()\r\nexport class SupportingDocumentsService {\r\n validators: Array<{type: AttachmentType, validate: () => Array}> = [];\r\n\r\n clear() {\r\n this.validators = [];\r\n }\r\n add(type: AttachmentType, validate: () => Array) {\r\n if (!this.validators.find(v => v.type === type)) {\r\n this.validators.push({type, validate});\r\n }\r\n }\r\n\r\n validate(): Array {\r\n let messages = [];\r\n this.validators.forEach(validator => {\r\n messages = messages.concat(validator.validate());\r\n });\r\n return messages;\r\n }\r\n\r\n}\r\n","import { Input, Output, Component, EventEmitter, OnInit } from '@angular/core';\r\nimport { UploadType } from '../model/UploadType';\r\nimport { FileUpload } from '../model/FileUpload';\r\nimport { AttachmentType } from '../model/AttachmentType';\r\nimport { Tooltip } from '../../core/tooltip/Tooltip';\r\nimport { SupportingDocumentsService } from './supportingDocuments.service';\r\nimport { isTemplateExpression } from 'typescript';\r\n\r\n@Component({\r\n selector: 'app-supporting-documents-item',\r\n templateUrl: './supportingDocumentsItem.component.html',\r\n styleUrls: ['./supportingDocumentsItem.scss']\r\n}) export class SupportingDocumentsItemComponent implements OnInit {\r\n @Input() isStudent = false;\r\n @Input() isTechnician = false;\r\n @Input() isAssessmentReport = false;\r\n @Input() isAssessmentRegistration = false;\r\n @Input() isRTR = false;\r\n @Input() sessionId;\r\n @Input() touched;\r\n uploadType = UploadType.RegistrationFormSupportingDocuments;\r\n showHelp = false;\r\n deleteUrl='v1.0/registrationform/attachment';\r\n titleOptions = ['Passport', 'Photo driving license', 'NI card', 'NHS card', 'Photo ID card'];\r\n @Input() min = 1;\r\n @Input() max = 1;\r\n @Input() mandatory = false;\r\n @Input() attachments: { [key: number]: Array };\r\n @Input() attachmentType: AttachmentType;\r\n @Input() requireTitle = false;\r\n @Input() requireExpiryDate = false;\r\n @Input() requireCertifier = true;\r\n @Input() requirePOCertifier = true;\r\n @Input() isPostOfficeSelected = false;\r\n @Input() title;\r\n @Output() uploaded = new EventEmitter<{ uploads: Array, type: AttachmentType }>();\r\n @Output() registered = new EventEmitter();\r\n @Input() requiresAdditionalQuestion = false;\r\n @Input() qualificationType;\r\n isInEnglish = false;\r\n @Input() certifierTypes = [];\r\n @Input() isCCPS = false;\r\n\r\n constructor(private service: SupportingDocumentsService) {\r\n\r\n }\r\n\r\n helpTooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click for help on
    how to fill in this section',\r\n width: 230,\r\n placement: 'right',\r\n order: -1\r\n };\r\n\r\n onUploaded($event) {\r\n const uploads = $event;\r\n this.uploaded.emit({ uploads, type: this.attachmentType });\r\n }\r\n\r\n get valid() {\r\n return !this.mandatory || (this.attachments[this.attachmentType] && !!this.attachments[this.attachmentType].length);\r\n }\r\n\r\n get PTValid() {\r\n return !(this.mandatory && (this.attachments[this.attachmentType] && !!this.attachments[this.attachmentType].length));\r\n }\r\n\r\n ngOnInit() {\r\n if (this.isStudent) {\r\n this.uploadType = UploadType.PreRegistrationFormSupportingDocuments;\r\n }\r\n if (this.isRTR) {\r\n this.uploadType = UploadType.ReturnToRegisterSupportingDocuments;\r\n this.deleteUrl= 'v1.0/pharmacistform/attachment';\r\n }\r\n if (this.isTechnician) {\r\n this.uploadType = UploadType.PharmacyTechnicianSupportingDocuments;\r\n this.titleOptions = ['Passport or EEA ID card', 'Photo drivers licence'];\r\n }\r\n if (this.isAssessmentReport) {\r\n this.uploadType = UploadType.ProgressReportSupportingDocuments;\r\n this.titleOptions = ['Photo ID card'];\r\n }\r\n if (this.isAssessmentRegistration) {\r\n this.uploadType = UploadType.AssessmentRegistrationDocuments;\r\n this.titleOptions = ['Photo ID card', 'Passport or EEA ID card'];\r\n }\r\n if( this.isCCPS ) {\r\n this.uploadType = UploadType.ProfessionalStandingSupportingDocuments;\r\n this.deleteUrl = 'v1.0/pharmacistform/attachment';\r\n }\r\n this.service.add(this.attachmentType, this.validate.bind(this));\r\n this.registered.emit(this.attachmentType);\r\n }\r\n\r\n validate(): Array {\r\n const messages = [];\r\n const hasUploads = (this.attachments[this.attachmentType] && this.attachments[this.attachmentType].length);\r\n const title = this.title.toLowerCase();\r\n\r\n if (this.mandatory && !hasUploads) {\r\n messages.push(`You haven't uploaded your ${title}`);\r\n }\r\n if (hasUploads) {\r\n if (this.attachments[this.attachmentType].length < this.min) {\r\n messages.push(`You must upload ${this.min} documents`);\r\n }\r\n this.attachments[this.attachmentType].forEach(doc => {\r\n if (this.requireExpiryDate) {\r\n if (!doc.expiryDate) {\r\n messages.push(`You must enter an expiry date for ${title} documents`);\r\n }\r\n if (new Date(doc.expiryDate) < new Date()) {\r\n messages.push(`Expiry date for ${title} must be in the future`);\r\n }\r\n }\r\n\r\n if (this.requireTitle && !doc.title) {\r\n messages.push(`You must enter a title for ${title} documents`);\r\n }\r\n if (this.requireCertifier ) {\r\n const hasCertifier = item =>\r\n item.certifier &&\r\n item.certifier.companyName &&\r\n item.certifier.companyName.trim().length &&\r\n item.certifier.date &&\r\n item.certifier.name &&\r\n item.certifier.name.trim().length &&\r\n item.certifier.number && item.certifier.number.trim().length &&\r\n item.certifier.type;\r\n const hasPOCertifierTypeSelected = doc.certifier.type === 'Post Office';\r\n const hasCertifiedDate = doc.certifier.date;\r\n const hasPOCertifier = item => {\r\n item.certifier.name = '',\r\n item.certifier.companyName = '',\r\n item.certifier.number = '';\r\n };\r\n\r\n switch (this.attachmentType) {\r\n case AttachmentType.BirthCertificate:\r\n const hasSelectedIsDuplicateCopy = doc.isDuplicateCopy !== undefined;\r\n if (doc.isDuplicateCopy === true) {\r\n doc.certifier.type = 'Solicitor';\r\n }\r\n if (!hasSelectedIsDuplicateCopy) {\r\n messages.push(`You must specify whether your birth certificate is a duplicate copy or not`);\r\n } else {\r\n if (doc.isDuplicateCopy !== null) {\r\n if (!hasCertifier(doc)) {\r\n messages.push(`You haven't entered all the certifier details for your ${title}`);\r\n }\r\n }\r\n }\r\n break;\r\n case AttachmentType.ProofOfIdentity:\r\n if (hasPOCertifierTypeSelected) {\r\n hasPOCertifier(doc);\r\n !hasCertifier(doc);\r\n if (!hasCertifiedDate) {\r\n messages.push(`You haven't entered certified date for your ${title}`);\r\n }\r\n }\r\n break;\r\n case AttachmentType.KnowledgeBasedQualification:\r\n if (hasPOCertifierTypeSelected) {\r\n hasPOCertifier(doc);\r\n !hasCertifier(doc);\r\n if (!hasCertifiedDate) {\r\n messages.push(`You haven't entered certified date for your ${title}`);\r\n }\r\n }\r\n break;\r\n case AttachmentType.CompetencyBasedQualification:\r\n if (hasPOCertifierTypeSelected) {\r\n hasPOCertifier(doc);\r\n !hasCertifier(doc);\r\n if (!hasCertifiedDate) {\r\n messages.push(`You haven't entered certified date for your ${title}`);\r\n }\r\n }\r\n break;\r\n case AttachmentType.CombinedQualification:\r\n if (hasPOCertifierTypeSelected) {\r\n doc.certifier.name = '';\r\n doc.certifier.companyName = '';\r\n doc.certifier.number = '';\r\n if (!hasCertifiedDate) {\r\n messages.push(`You haven't entered certified date for your ${title}`);\r\n }\r\n }\r\n break;\r\n // implement if required\r\n default:\r\n if (doc.isDuplicateCopy !== null && !hasCertifier(doc)) {\r\n messages.push(`You haven't entered all the certifier details for your ${title}`);\r\n }\r\n }\r\n\r\n }\r\n });\r\n\r\n }\r\n\r\n return messages;\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n\r\n

    \r\n {{title}}

    \r\n\r\n

    \r\n {{title}}

    \r\n\r\n
    Mandatory
    \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 { Input, Component, OnInit } from '@angular/core';\r\nimport { AttachmentType } from '../model/AttachmentType';\r\nimport { PreregService } from '../../core/service/prereg.service';\r\n\r\nimport { AuthService } from '../../core/service/auth.service';\r\nimport { TechnicianService } from '../../core/service/technician.service';\r\nimport { AssessmentReportService } from '../../core/service/assessmentReport.service';\r\nimport { AssessmentRegistrationService } from '../../core/service/assessmentRegistration.service';\r\nimport { ReturnToRegisterService } from '../../core/service/returnToRegister.service';\r\n\r\n@Component({\r\n selector: 'app-supporting-documents-summary',\r\n templateUrl: './supportingDocumentsSummary.component.html',\r\n styleUrls: ['./supportingDocumentsSummary.scss']\r\n}) export class SupportingDocumentsSummaryComponent implements OnInit {\r\n\r\n @Input() application;\r\n @Input() formId;\r\n @Input() isStudent;\r\n @Input() isAros;\r\n @Input() isRTR;\r\n @Input() isTechnician;\r\n @Input() isAssessmentRegistration;\r\n @Input() isCountersignerView = false;\r\n @Input() removeAllButPhotos = false;\r\n attachments: Array;\r\n AttachmentType = AttachmentType;\r\n\r\n constructor(\r\n private service: PreregService,\r\n\r\n private technicianService: TechnicianService,\r\n\r\n private arosService: AssessmentReportService,\r\n\r\n private assessmentService: AssessmentRegistrationService,\r\n\r\n private rtrService: ReturnToRegisterService\r\n ) { }\r\n\r\n ngOnInit() {\r\n\r\n if (this.formId) {\r\n this.attachments = this.putInAlphabeticalOrder(this.application.pastApplications\r\n .find(val => val.id === this.formId).attachments);\r\n } else {\r\n this.attachments = this.putInAlphabeticalOrder(this.application.activeForm.attachments);\r\n }\r\n // remove the photo docs when countersignatory is reviewing the application\r\n if (this.isCountersignerView) {\r\n this.attachments = this.attachments.filter(this.removePhotoDocsFromSupportingDocs);\r\n }\r\n\r\n if (this.removeAllButPhotos) {\r\n this.attachments = this.attachments.filter(this.removeAllButPhotoDocsFromSupportingDocs);\r\n }\r\n }\r\n\r\n putInAlphabeticalOrder(arr) {\r\n if (arr.isArray) {\r\n arr.sort((a, b) => {\r\n return (AttachmentType[a.type] < AttachmentType[b.type]) ? -1 : 1;\r\n });\r\n } else {\r\n arr = Object.keys(arr).map((key) => arr[key]);\r\n }\r\n return arr;\r\n }\r\n\r\n removeAllButPhotoDocsFromSupportingDocs(element, index, array) {\r\n return element.type === AttachmentType.Photo;\r\n }\r\n\r\n removePhotoDocsFromSupportingDocs(element, index, array) {\r\n return element.type !== AttachmentType.Photo;\r\n }\r\n\r\n getIcon(file) {\r\n const bits = file.filename.split('.');\r\n const extension = bits[bits.length - 1];\r\n switch (extension) {\r\n case 'pdf':\r\n return 'fa fa-file-pdf-o';\r\n case 'png':\r\n case 'jpg':\r\n case 'bmp':\r\n case 'gif':\r\n return 'fa fa-file-image-o';\r\n case 'doc':\r\n case 'docx':\r\n return 'fa fa-file-word-o';\r\n case 'zip':\r\n case 'rar':\r\n return 'fa fa-file-archive-o';\r\n default:\r\n return 'fa fa-file-o';\r\n }\r\n }\r\n\r\n download(file) {\r\n // this.downloading = true;\r\n const createDownload = (blob) => {\r\n // console.log(blob);\r\n // this.downloading = false;\r\n // if (window.navigator.msSaveOrOpenBlob) { // stupid IE\r\n // window.navigator.msSaveOrOpenBlob(blob, file.filename);\r\n // } else {\r\n const url = URL.createObjectURL(blob);\r\n const element = document.createElement('a');\r\n element.href = url;\r\n element.setAttribute('download', file.filename);\r\n document.body.appendChild(element); // Append the element to work in firefox\r\n element.click();\r\n // }\r\n };\r\n\r\n\r\n if (this.isTechnician) {\r\n this.technicianService.getSupportingDocuments(file).subscribe(blob => {\r\n createDownload(blob);\r\n });\r\n } else if (this.isStudent) {\r\n this.service.getStudentSupportingDocs(file).subscribe(blob => {\r\n createDownload(blob);\r\n });\r\n } \r\n else if (this.isRTR) {\r\n this.rtrService.getSupportingDocument(file).subscribe(blob => {\r\n createDownload(blob);\r\n });\r\n }\r\n else if (this.isAros) {\r\n this.arosService.getProgressReportSupportingDocs(file).subscribe(blob => {\r\n createDownload(blob);\r\n });\r\n }\r\n else if (this.isAssessmentRegistration) {\r\n this.assessmentService.getAssessmentRegistrationSupportingDocs(file).subscribe(blob => {\r\n createDownload(blob);\r\n });\r\n }\r\n else {\r\n this.service.getSupportingDocument(file).subscribe(blob => {\r\n createDownload(blob);\r\n });\r\n }\r\n\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n No supporting documents\r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    {{file.filename}}
    \r\n \r\n {{file.title}} - expires {{file.expiryDate | utcDate}}
    \r\n
    \r\n \r\n
    \r\n
    ","import { Component, Input, Output, AfterViewInit, ViewChild, EventEmitter } from '@angular/core';\r\n\r\ndeclare function require(moduleName: string): any;\r\nconst sanitizeHtml = require('sanitize-html');\r\ndeclare var Squire: any;\r\n\r\n@Component({\r\n selector: 'app-text-editor',\r\n moduleId: module.id,\r\n templateUrl: 'textEditor.component.html',\r\n styleUrls: ['./textEditor.scss']\r\n})\r\nexport class TextEditorComponent implements AfterViewInit {\r\n\r\n private editor: any;\r\n wordCount: number;\r\n @ViewChild('editor') editorElement;\r\n content;\r\n @Input('content') set setContent(content) {\r\n this.content = content || '';\r\n if (this.editor) {\r\n this.editor.setHTML(this.content);\r\n }\r\n }\r\n\r\n @Input() readonly = false;\r\n @Input() error = false;\r\n @Input() description;\r\n @Input() prompt;\r\n @Input() placeholder;\r\n @Input() inputId;\r\n @Output() contentChanged = new EventEmitter();\r\n @Output() infoChanged = new EventEmitter();\r\n focussed = false;\r\n @Input('hasFocus') set setFocus(value) {\r\n if (this.readonly) { return; }\r\n if (value) {\r\n setTimeout(() => { this.editorElement.nativeElement.focus(); }, 50);\r\n this.focussed = true;\r\n } else {\r\n this.focussed = false;\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.readonly) { return; }\r\n\r\n this.editor = new Squire(this.editorElement.nativeElement);\r\n if (this.content) {\r\n this.editor.setHTML(this.content);\r\n if (this.focussed) {\r\n setTimeout(() => { this.editorElement.nativeElement.focus(); }, 50);\r\n }\r\n setTimeout(this.isEmpty.bind(this), 0);\r\n }\r\n\r\n\r\n this.editor.addEventListener('willPaste', (data) => {\r\n const div = document.createElement('DIV');\r\n div.appendChild(data.fragment.cloneNode(true));\r\n const dirty = div.innerHTML.replace(/ /g, '');\r\n const clean = sanitizeHtml(dirty, {\r\n allowedTags: [ 'b', 'i', 'p', 'div', 'ul', 'ol', 'li', 'h1', 'h2', 'h3', 'h4', 'h6', 'h6', 'strong', 'em' ],\r\n selfClosing: [],\r\n allowedAttributes: []\r\n });\r\n const cleanDiv = document.createElement('DIV');\r\n cleanDiv.innerHTML = clean;\r\n const cleanFragment = document.createDocumentFragment();\r\n cleanFragment.appendChild(cleanDiv);\r\n data.fragment = cleanFragment;\r\n });\r\n\r\n this.editor.addEventListener('focus', () => {\r\n this.focussed = true;\r\n });\r\n this.editor.addEventListener('blur', () => {\r\n\r\n if (this.isEmpty()) {\r\n this.contentChanged.emit('');\r\n } else {\r\n this.contentChanged.emit(this.editor.getHTML());\r\n }\r\n\r\n this.focussed = false;\r\n });\r\n }\r\n\r\n isEmpty() {\r\n if (this.readonly) { return; }\r\n const content = this.editor.getHTML();\r\n let withoutTags = content.replace(/<[^>]*>/g, ' ');\r\n withoutTags = withoutTags.replace(/\\s+/g, ' ');\r\n withoutTags = withoutTags.trim();\r\n // const count = withoutTags.split(' ').length;\r\n // this.wordCount = withoutTags ? count : 0;\r\n // this.infoChanged.emit({wordCount: this.wordCount});\r\n return withoutTags === '';\r\n }\r\n\r\n\r\n bold() {\r\n if (this.editor.hasFormat('b')) {\r\n this.editor.removeBold();\r\n } else {\r\n this.editor.bold();\r\n }\r\n }\r\n\r\n italic() {\r\n if (this.editor.hasFormat('i')) {\r\n this.editor.removeItalic();\r\n } else {\r\n this.editor.italic();\r\n }\r\n }\r\n\r\n unorderedList() {\r\n if (this.editor.hasFormat('ul')) {\r\n this.editor.removeList();\r\n } else {\r\n this.editor.makeUnorderedList();\r\n }\r\n }\r\n orderedList() {\r\n if (this.editor.hasFormat('ol')) {\r\n this.editor.removeList();\r\n } else {\r\n this.editor.makeOrderedList();\r\n }\r\n }\r\n\r\n align(alignment) {\r\n this.editor.setTextAlignment(alignment);\r\n }\r\n\r\n underline() {\r\n if (this.editor.hasFormat('u')) {\r\n this.editor.removeUnderline();\r\n } else {\r\n this.editor.underline();\r\n }\r\n }\r\n\r\n makeHeading() {\r\n this.editor.setFontSize('2em');\r\n }\r\n\r\n\r\n action(type) {\r\n this.editor[type]();\r\n }\r\n\r\n}\r\n","\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n","
    \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
    ","import { Component, OnInit, Input, AfterViewInit } from '@angular/core';\r\nimport { LayoutService } from '../core/service/layout.service';\r\n\r\n@Component({\r\n selector: 'app-toolbar',\r\n moduleId: module.id,\r\n templateUrl: './toolbar.component.html',\r\n styleUrls: ['./toolbar.scss']\r\n})\r\nexport class ToolbarComponent {\r\n\r\n @Input() loading = false;\r\n @Input() title = '';\r\n @Input() titleCentered = true;\r\n\r\n constructor(private layout: LayoutService) { }\r\n\r\n}\r\n","import { Address } from '../../account/model/Address';\r\n\r\nexport enum HomeNationTypes {\r\n England = 717750000,\r\n Wales = 717750001,\r\n Scotland = 717750002,\r\n Other = 717750003,\r\n}\r\n\r\nexport const CountriesOfUK = [\r\n {country: 'England', homeNation: HomeNationTypes.England},\r\n {country: 'Wales', homeNation: HomeNationTypes.Wales},\r\n {country: 'Scotland', homeNation: HomeNationTypes.Scotland},\r\n {country: 'Other', homeNation: HomeNationTypes.Other}\r\n] as const;\r\n\r\nexport const UK = 'United Kingdom' as const;\r\n\r\nexport const patternToTestLatinAlphabets = new RegExp('^[\\x00-\\x7F]*$');\r\n\r\nexport function getCountryName(homeNation) {\r\n switch(Number(homeNation)){\r\n case HomeNationTypes.England:\r\n return CountriesOfUK[0].country;\r\n case HomeNationTypes.Wales:\r\n return CountriesOfUK[1].country;\r\n case HomeNationTypes.Scotland:\r\n return CountriesOfUK[2].country;\r\n case HomeNationTypes.Other:\r\n return CountriesOfUK[3].country;\r\n default:\r\n return '';\r\n }\r\n}\r\n\r\nexport function inputValidator(val): boolean {\r\n const pattern = patternToTestLatinAlphabets;\r\n return pattern.test(val) ? true : false;\r\n}","import { Component, Input, forwardRef,\r\n ViewChild, ChangeDetectorRef } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\r\nimport { MatDatepicker } from '@angular/material/datepicker';\r\n\r\n\r\nimport { LayoutService } from '../core/service/layout.service';\r\nimport utils from './service/utils';\r\n\r\n@Component({\r\n selector: 'app-utc-date-picker',\r\n templateUrl: './utcDatePicker.component.html',\r\n styleUrls: ['./utcDatePicker.scss'],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => UtcDatePickerComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class UtcDatePickerComponent implements ControlValueAccessor {\r\n\r\n constructor(private cd: ChangeDetectorRef, public layout: LayoutService) { }\r\n \r\n @ViewChild('picker') datePicker : MatDatepicker;\r\n dateValue: Date;\r\n @Input() whiteBackground = false;\r\n @Input() readonly = false;\r\n @Input() name = 'date';\r\n @Input() error = false;\r\n @Input() min;\r\n @Input() max;\r\n @Input() width = '200px';\r\n @Input() question;\r\n isExtendUntilQuestionId = false;\r\n\r\n setDateToUndefined() {\r\n this.datePicker.select(undefined);\r\n }\r\n\r\n dateChange(date) {\r\n const adjustedDateString = utils.formatDate(date);\r\n this.propagateChange(adjustedDateString);\r\n }\r\n\r\n writeValue(value: any) {\r\n if (value) {\r\n if (!(value instanceof Date)) {\r\n value = new Date(value.split('T')[0]);\r\n }\r\n this.dateValue = value;\r\n this.cd.detectChanges();\r\n }\r\n }\r\n propagateChange = (model: any) => {};\r\n registerOnChange(fn) {\r\n this.propagateChange = fn;\r\n }\r\n registerOnTouched() {}\r\n\r\n\r\n onClose() {\r\n // Datepicker in EC request form(Extend until date), requires triggering of validity check on close of datepicker.\r\n this.isExtendUntilQuestionId = this.name === '2cea08a3-46bf-47e4-94b5-fdb590854da6' ? true: false;\r\n if(this.isExtendUntilQuestionId) {\r\n this.propagateChange(utils.formatDate(this.dateValue));\r\n } \r\n }\r\n}\r\n","
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n\r\n\r\n\r\n
    {{ dateValue | utcDate }}
    \r\n","

    \r\n \r\n Server validation error: {{error.property}}: {{ error.errors.join(', ') }}\r\n \r\n \r\n Server validation error: {{ error.errors.join(', ') }}\r\n \r\n

    \r\n","import { Component, Input } from '@angular/core';\r\nimport { ValidationError } from '../core/model/ValidationError';\r\n\r\n@Component({\r\n selector: 'app-validation-errors',\r\n templateUrl: './validationErrors.component.html'\r\n}\r\n) export class ValidationErrorsComponent {\r\n\r\n @Input() errors: Array = [];\r\n @Input() block = false;\r\n\r\n get className() {\r\n if (this.block) {\r\n return 'form-error-block';\r\n }\r\n return 'form-error';\r\n }\r\n @Input() showAsServerError = false;\r\n}\r\n\r\n","\r\n
      \r\n
    • i}\" \r\n >\r\n \r\n 0\" class=\"fa fa-long-arrow-right\">\r\n {{step.name}}\r\n
    • \r\n
    \r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-wizard-steps',\r\n moduleId: module.id,\r\n templateUrl: './wizardSteps.component.html',\r\n styleUrls: ['wizardSteps.component.scss']\r\n})\r\nexport class WizardStepsComponent {\r\n @Input() steps;\r\n @Input() currentStep;\r\n @Input() sticky = false;\r\n\r\n}\r\n","export enum ApplicationProcessType {\r\n TwoYears = 981360000,\r\n LessThanTwoYears = 981360001,\r\n}","export enum ApplicationStatus {\r\n\r\n NotStarted = 1,\r\n InProgress = 2,\r\n\r\n // ROS\r\n CounterSigned = 4,\r\n\r\n // ROS (= trainees) Registration Application was submitted to CRM \r\n // PROS (= students) Pre-Registration Application was submitted to CRM \r\n Submitted = 3,\r\n\r\n // ROS:Means that the countersigner has been selected for this form, and that the\r\n // from is ready to be countersigned by that pharmacist.\r\n ReadyForCountersigning = 5,\r\n\r\n // ROS: If ApplicationForRegistration status is changing to 'approved\r\n // pending first year fee', FormStatus is set to\r\n // ApprovedPendingFirstYearFee by PreEntry subscriber\r\n // If this flag is true then 'First Year Payment should be available in UI'.\r\n ApprovedPendingFirstYearFee = 6,\r\n\r\n // ROS: If ApplicationForRegistration status is changing to 'Ineligible', FormStatus is set to Ineligible by PreEntry subscriber\r\n // PROS: If PreRegStatus is changing to 'Ineligible' in CRM, the form should be read-only https://mygphc.atlassian.net/browse/PROS-279\r\n Ineligible = 7,\r\n\r\n // ROS: First Year Fee was paid but the form was not approved in CRM\r\n PendingProcessing = 10,\r\n\r\n // ROS (= trainees) Registration Application was approved in CRM and both\r\n // payments were made; at this stage user is ready to be a\r\n // pharmacist/pharmacy technician\r\n // PROS (= students) Pre-Registration Application was approved in CRM\r\n Approved = 11,\r\n\r\n // PROS (= students) Pre-Registration Application was marked as 'Waiting for applicant' in CRM\r\n // https://mygphc.atlassian.net/browse/PROS-281\r\n WaitingForApplicant = 12,\r\n\r\n // PROS (= students) Pre-Registration Application was marked as terminated in CRM\r\n // https://mygphc.atlassian.net/browse/PROS-61\r\n Terminated = 13,\r\n\r\n // PROS: If PreRegStatus is changing to 'Ceased Training' in CRM, the\r\n // form should be read-only https://mygphc.atlassian.net/browse/PROS-279\r\n CeasedTraining = 14\r\n\r\n}\r\n","export enum CountersignatureOutcome {\r\n Unknown = 0,\r\n Pending = 1,\r\n Approved = 2,\r\n /// \r\n /// Refused to be reviewed by the reviewer. Could be because he was asked to\r\n /// review or counter-sign in err.\r\n /// \r\n Refused = 998,\r\n /// \r\n /// Rejected by the reviewer.\r\n /// \r\n Rejected = 999\r\n}\r\n","export enum EvidenceType {\r\n standardUK = 0,\r\n NonEEA = 1, \r\n}","export enum PreviousRegistrationType {\r\n Pharmacist = 981360000,\r\n PharmacyTechnician = 981360001\r\n}","import { RegistrantStatus } from '../../registration/model/RegistrantStatus';\r\nimport { RegistrantType } from '../../registration/model/RegistrantType';\r\n\r\nexport class Technician {\r\n registrationNumber: string;\r\n status: RegistrantStatus;\r\n type: RegistrantType;\r\n postalTown: string;\r\n prescriberStatuses: string;\r\n superIntendentPosition: { ownerName: string, startDate: string, endDate: string };\r\n superintendent = '';\r\n\r\n // for registrants who are both pharmacists and pharmacy technicians\r\n // this will be true when they sign into their pharmacy technician account\r\n // v1.0/registrant/revalidation will return null so should not be called\r\n exemptFromRevalidationSubmissions: boolean;\r\n\r\n title: string;\r\n forenames: string;\r\n surname: string;\r\n\r\n expiryDate: string;\r\n renewalDate: string;\r\n joinedDate: string;\r\n\r\n constructor(data) {\r\n Object.assign(this, data);\r\n\r\n if (this.superIntendentPosition && this.superIntendentPosition.ownerName) {\r\n this.superintendent = this.superIntendentPosition.ownerName;\r\n }\r\n\r\n }\r\n\r\n toString() {\r\n return this.title +\r\n ' ' + this.forenames +\r\n ' ' + this.surname;\r\n }\r\n\r\n}\r\n","import { Applicant } from '../../account/model/Applicant';\r\nimport { ApplicationStatus } from '../../prereg/model/ApplicationStatus';\r\nimport { TechnicianApplicationForm } from './TechnicianApplicationForm';\r\nimport { RegistrantStatus } from '../../registration/model/RegistrantStatus';\r\nimport { Application } from '../../prereg/model/Application';\r\nimport { AssessmentReport } from '../../prereg/assessment-report/models/AssessmentReport';\r\n\r\n\r\nexport class TechnicianApplication implements Application {\r\n\r\n trainee: Applicant; // student\r\nform;\r\n forms: Array = [];\r\n status: ApplicationStatus;\r\n activeForm: TechnicianApplicationForm;\r\n pastApplications: Array = [];\r\n isFirstYearPaymentAvailable: boolean;\r\n\r\n registrationFees: {\r\n applicationFee: number;\r\n registrationFee: number;\r\n };\r\n\r\n preRegistrationApplicationScheme: {\r\n isOpened: boolean;\r\n startDateForCurrentYear: string;\r\n endDateForCurrentYear: string;\r\n };\r\n\r\n constructor(data, registrantStatus: RegistrantStatus) {\r\n\r\n Object.assign(this, data);\r\n\r\n\r\n this.status = this.forms[0].formStatus;\r\n this.activeForm = new TechnicianApplicationForm(this.forms[0], registrantStatus);\r\n this.pastApplications = this.forms.filter((form, i) => {\r\n return i > 0;\r\n });\r\n\r\n/*\r\n this.preRegistrationApplicationScheme = {\r\n isOpened: false,\r\n startDateForCurrentYear: '4/1/2019',\r\n endDateForCurrentYear: '11/8/2019'\r\n };\r\n */\r\n }\r\n\r\n}\r\n","import { ApplicationStatus } from '../../prereg/model/ApplicationStatus';\r\nimport { FormAnswer } from '../../dynamic/model/FormAnswer';\r\nimport { FileUpload } from '../../shared/model/FileUpload';\r\nimport { TechnicianApplicationStep } from './TechnicianApplicationStep';\r\nimport { RegistrantStatus } from '../../registration/model/RegistrantStatus';\r\nimport { ApplicationFormMode } from '../../prereg/model/ApplicationFormMode';\r\nimport { ApplicationForm } from '../../prereg/model/ApplicationForm';\r\nimport { ApplicationProcessType } from './ApplicationProcessType';\r\nimport { EducationDetails } from './EducationDetails';\r\nimport { WorkExperience } from './WorkExperience';\r\n\r\nimport { PreviousApplicationsAndRegistrations } from './PreviousApplicationsAndRegistrations';\r\nimport { AttachmentType } from '../../shared/model/AttachmentType';\r\n\r\nexport class TechnicianApplicationForm implements ApplicationForm {\r\n\r\n id: string;\r\n formStatus: ApplicationStatus;\r\n declarations: Array<{ dynamicFormId: string, answers: Array }> = [];\r\n attachments: Array = [];\r\n isOverallDeclarationConfirmed: boolean;\r\n applicationType: ApplicationProcessType;\r\n educationDetails: EducationDetails;\r\n\r\n workExperiences: Array = [new WorkExperience()];\r\n previousApplicationsAndRegistrations: PreviousApplicationsAndRegistrations;\r\n\r\n isSupportingDocumentsForwardedConfirmed: boolean;\r\n\r\n step: TechnicianApplicationStep;\r\n minStep: TechnicianApplicationStep;\r\n mode: ApplicationFormMode;\r\n registrantStatus: RegistrantStatus;\r\n requirePayment: boolean;\r\n\r\n getTrainingWeeks() {\r\n let totalWeeks = 0;\r\n this.workExperiences.forEach(experience => {\r\n if (experience.endDate && experience.startDate) {\r\n const ms = new Date(experience.endDate).getTime() - new Date(experience.startDate).getTime();\r\n const weeks = ms / 1000 / 60 / 60 / 24 / 7;\r\n totalWeeks += weeks;\r\n }\r\n });\r\n return Math.round(totalWeeks);\r\n }\r\n\r\n getHoursWorked() {\r\n let totalHours = 0;\r\n const totalWeeks = this.getTrainingWeeks();\r\n this.workExperiences.forEach(experience => {\r\n totalHours += experience.workedHoursPerWeek;\r\n });\r\n totalHours = (totalHours / this.workExperiences.length) * totalWeeks;\r\n return Math.round(totalHours);\r\n }\r\n\r\n get readonly() {\r\n return !(this.formStatus === ApplicationStatus.NotStarted ||\r\n this.formStatus === ApplicationStatus.InProgress ||\r\n this.formStatus === ApplicationStatus.CounterSigned ||\r\n this.formStatus === ApplicationStatus.ReadyForCountersigning ||\r\n this.registrantStatus === RegistrantStatus.IneligibleToRegister);\r\n }\r\n\r\n\r\n constructor(data, registrantStatus) {\r\n if (data) {\r\n const hasWorkExperiences = !!data.workExperiences.length;\r\n if (hasWorkExperiences) {\r\n data.workExperiences = data.workExperiences.map(experience => new WorkExperience(experience));\r\n }\r\n Object.assign(this, data);\r\n } else {\r\n this.workExperiences = [new WorkExperience()];\r\n this.declarations = [];\r\n }\r\n\r\n this.registrantStatus = registrantStatus;\r\n\r\n if (this.formStatus === ApplicationStatus.ReadyForCountersigning ||\r\n this.formStatus === ApplicationStatus.CounterSigned) {\r\n this.step = TechnicianApplicationStep.Countersigning;\r\n this.minStep = TechnicianApplicationStep.Countersigning;\r\n }\r\n\r\n if (this.formStatus === ApplicationStatus.InProgress && this.step > TechnicianApplicationStep.Countersigning) {\r\n this.step = TechnicianApplicationStep.Countersigning;\r\n }\r\n\r\n\r\n }\r\n\r\n clearWorkExperience() {\r\n this.workExperiences = [];\r\n }\r\n\r\n clearAttachments() {\r\n this.attachments = [];\r\n }\r\n\r\n clearQualificationDocs() {\r\n if (this.attachments.length) {\r\n if (this.educationDetails.combined.qualificationId !== null) {\r\n this.attachments = this.attachments.filter(\r\n this.removeTechnicianApplicationCombinedQualificationDocs);\r\n } else if (this.educationDetails.combined.qualificationId === null) {\r\n this.attachments = this.attachments.filter(\r\n this.removeTechnicianApplicationKnowledgeCOmpetencyQualificationDocs);\r\n }\r\n }\r\n }\r\n\r\n removeTechnicianApplicationCombinedQualificationDocs(element, index, array) {\r\n return element.type !== AttachmentType.CombinedQualification;\r\n }\r\n\r\n removeTechnicianApplicationKnowledgeCOmpetencyQualificationDocs(element, index, array) {\r\n return (element.type !== AttachmentType.KnowledgeBasedQualification && element.type !== AttachmentType.CompetencyBasedQualification);\r\n }\r\n\r\n clearPreviousApplicationAndRegistrations() {\r\n for (const prop in this.previousApplicationsAndRegistrations) {\r\n if (prop === 'ukRegistration' || prop === 'outsideUKRegistration') {\r\n for (const appProp in this.previousApplicationsAndRegistrations[prop]) {\r\n this.previousApplicationsAndRegistrations[prop][appProp] = null;\r\n }\r\n }\r\n }\r\n\r\n for (const prop in this.previousApplicationsAndRegistrations.applications.preRegistrationTraining) {\r\n this.previousApplicationsAndRegistrations.applications.preRegistrationTraining[prop] = null;\r\n }\r\n\r\n for (const prop in this.previousApplicationsAndRegistrations.applications.registration) {\r\n this.previousApplicationsAndRegistrations.applications.registration[prop] = null;\r\n }\r\n\r\n this.isSupportingDocumentsForwardedConfirmed = null;\r\n\r\n }\r\n\r\n clearStepsDependentOnApplicationType() {\r\n this.clearWorkExperience();\r\n this.clearAttachments();\r\n this.clearPreviousApplicationAndRegistrations();\r\n }\r\n\r\n clearQualificationAttachments() {\r\n this.clearQualificationDocs();\r\n }\r\n\r\n\r\n\r\n}\r\n","export enum TechnicianApplicationStep {\r\n Guidance = 1,\r\n PersonalDetails = 2,\r\n Education = 3,\r\n EvidenceType = 4,\r\n WorkExperience = 5,\r\n PreviousApplicationsAndRegistrations = 6,\r\n SupportingDocuments = 7,\r\n Edi = 8,\r\n FtpDeclaration1 = 9,\r\n FtpDeclaration2 = 10,\r\n OverallDeclaration = 11,\r\n InitialReview = 12,\r\n Countersigning = 13,\r\n Review = 14,\r\n Payment = 15\r\n}\r\n","export enum TechnicianQualificationType {\r\n Knowledge = 0,\r\n Competency = 1,\r\n Combined = 2\r\n}","\r\nimport { Premise } from './Premise';\r\nimport { Subject, BehaviorSubject } from 'rxjs';\r\nimport { UnregisteredPremise } from './UnregisteredPremise';\r\nimport { SupervisingPharmacist } from './SupervisingPharmacist';\r\n\r\nexport class WorkExperience {\r\n\r\n startDate: string;\r\n endDate: string;\r\n id: string;\r\n supervisingPharmacists: Array;\r\n supervisingPharmacist: SupervisingPharmacist;\r\n premise: Premise | UnregisteredPremise;\r\n\r\n updated$ = new Subject();\r\n overlap$ = new BehaviorSubject(false);\r\n placementId: string;\r\n isAllocated?: boolean;\r\n allocationReference?: string;\r\n workedHoursPerWeek: number;\r\n jobTitle = '';\r\n\r\n trainingWindow: {\r\n start: {\r\n from: Date,\r\n to: Date\r\n },\r\n end: {\r\n to: Date\r\n }\r\n };\r\n\r\n\r\n constructor(data?) {\r\n if (data) {\r\n // if (!data.jobTitle) {\r\n // data.jobTitle = '';\r\n // }\r\n if (data.supervisingPharmacist) {\r\n this.supervisingPharmacists = [data.supervisingPharmacist];\r\n }\r\n if (data.id) {\r\n this.id = data.id;\r\n }\r\n Object.assign(this, data);\r\n } else {\r\n this.supervisingPharmacists = [undefined];\r\n }\r\n\r\n }\r\n\r\n updatePremises(premise: Premise | UnregisteredPremise) {\r\n this.premise = premise;\r\n this.updated$.next('premise');\r\n }\r\n\r\n updateSupervisor(superviser: SupervisingPharmacist, index) {\r\n this.supervisingPharmacists[index] = superviser;\r\n this.supervisingPharmacist = superviser;\r\n if (!!this.supervisingPharmacist) {\r\n this.supervisingPharmacist.id = superviser.gphcId || superviser.gPhCId;\r\n }\r\n this.updated$.next('Supervisor');\r\n }\r\n\r\n updateWorkingHours(hours: string) {\r\n this.workedHoursPerWeek = +hours;\r\n this.updated$.next('workingHours');\r\n }\r\n\r\n updateJobTitle(title: string) {\r\n this.jobTitle = title;\r\n this.updated$.next('job title');\r\n }\r\n\r\n\r\n toJson() {\r\n const payload = Object.assign({}, this);\r\n\r\n\r\n if (!!payload.premise) {\r\n if (!!payload.premise.accreditedTo) {\r\n delete payload.premise.accreditedTo;\r\n delete payload.premise.eligibleAsTrainingSite;\r\n }\r\n }\r\n\r\n if (!!payload.supervisingPharmacist) {\r\n if (!!payload.supervisingPharmacist.gphcId &&\r\n !!payload.supervisingPharmacist.eligibleAsTutor) {\r\n delete payload.supervisingPharmacist.gphcId;\r\n delete payload.supervisingPharmacist.gPhCId;\r\n delete payload.supervisingPharmacist.eligibleAsTutor;\r\n }\r\n }\r\n\r\n \r\n delete payload.supervisingPharmacists;\r\n delete payload.updated$;\r\n delete payload.overlap$;\r\n return payload;\r\n\r\n }\r\n\r\n setDaterange(daterange) {\r\n if (this.startDate !== daterange.from || this.endDate !== daterange.to) {\r\n\r\n this.startDate = daterange.from;\r\n this.endDate = daterange.to;\r\n this.updated$.next('dates');\r\n }\r\n\r\n }\r\n\r\n\r\n get workingHoursValid() {\r\n return this.workedHoursPerWeek >= 14;\r\n }\r\n\r\n get jobTitleValid() {\r\n return !!this.jobTitle;\r\n }\r\n\r\n \r\n get supervisorValid() {\r\n const hasSupervisor = this.supervisingPharmacists.filter(supervisor => supervisor !== undefined).length > 0;\r\n return hasSupervisor;\r\n }\r\n \r\n\r\n get datesValid() {\r\n return !!this.startDate && !!this.endDate;\r\n }\r\n\r\n get isWithinPermittedRange() {\r\n const start = new Date(this.startDate);\r\n const end = new Date(this.endDate);\r\n return start >= this.trainingWindow.start.from && start <= this.trainingWindow.start.to && end <= this.trainingWindow.end.to;\r\n }\r\n\r\n\r\n get premiseValid() {\r\n return !!this.premise;\r\n }\r\n\r\n get allocationValid() {\r\n return true;\r\n /* return this.isAllocated === false || (this.isAllocated === true && !!this.allocationReference);*/\r\n }\r\n\r\n get isValid() {\r\n return this.premiseValid &&\r\n this.supervisorValid &&\r\n this.datesValid &&\r\n this.workingHoursValid &&\r\n this.jobTitleValid;\r\n }\r\n\r\n}\r\n","import { Component, forwardRef, AfterViewInit, ViewChild, Output, EventEmitter } from '@angular/core';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\nimport { TechnicianApplicationStep } from '../../model/TechnicianApplicationStep';\r\nimport { Tooltip } from '../../../core/tooltip/Tooltip';\r\nimport { ApplicationProcessType } from '../../model/ApplicationProcessType';\r\nimport { EvidenceType } from '../../model/EvidenceType';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ConfirmDialogComponent } from '../../../shared/confirmDialog.component';\r\nimport { TechnicianApplication } from '../../model/TechnicianApplication';\r\n\r\n\r\n@Component({\r\n selector: 'app-application-type-step',\r\n templateUrl: './applicationTypeStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => ApplicationTypeStepComponent)\r\n }\r\n ],\r\n styleUrls: ['./applicationTypeStep.component.scss']\r\n})\r\nexport class ApplicationTypeStepComponent extends FormStepComponent implements AfterViewInit {\r\n showDetailsHelp = false;\r\n stepId = TechnicianApplicationStep.EvidenceType;\r\n ApplicationProcessType = ApplicationProcessType;\r\n @Output() dependentStepsCleared = new EventEmitter();\r\n EvidenceType = EvidenceType;\r\n title = 'Application type';\r\n viewReady = false;\r\n showHelp = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n\r\n\r\n constructor(service: FormStepperService, private dialog: MatDialog) {\r\n super(service);\r\n }\r\n\r\n\r\n beforePrev() {\r\n this.dirty = false;\r\n return true;\r\n }\r\n\r\n load() {\r\n if (this.viewReady) {\r\n this.ready$.next(true);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.ready$.next(true);\r\n this.viewReady = true;\r\n });\r\n }\r\n\r\n\r\n update($value) {\r\n const hasWorkExperiences = !!this.application.activeForm.workExperiences.length;\r\n const hasSupportingDocs = !!this.application.activeForm.attachments.length;\r\n if (hasWorkExperiences || hasSupportingDocs) {\r\n this.warnForChangeAppType().afterClosed().subscribe(confirmed => {\r\n confirmed ?\r\n this.clearDependentSteps() :\r\n ($value === ApplicationProcessType.TwoYears) ?\r\n this.application.activeForm.applicationType = ApplicationProcessType.LessThanTwoYears :\r\n this.application.activeForm.applicationType = ApplicationProcessType.TwoYears;\r\n });\r\n }\r\n\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n clearDependentSteps() {\r\n (this.application).activeForm.clearStepsDependentOnApplicationType();\r\n this.dependentStepsCleared.emit('cleared');\r\n }\r\n\r\n warnForChangeAppType() {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n title: 'Please confirm',\r\n message:\r\n `Changing the data on this step will clear the following steps if they are filled:\r\n - Work experience\r\n - Previous applications and registrations\r\n - Supporting documents. Do you wish to continue ?\r\n `\r\n }\r\n });\r\n return dialogRef;\r\n }\r\n\r\n validate() {\r\n // console.log(this.application.activeForm);\r\n const messages = [];\r\n const hasApplicationTypeValue = !!this.application.activeForm.applicationType;\r\n\r\n if (!hasApplicationTypeValue) {\r\n messages.push('You must choose one of the options displayed');\r\n }\r\n\r\n this.validity$.next({ valid: !messages.length, messages, touched: this.touched });\r\n }\r\n\r\n populateForm() { }\r\n}\r\n\r\n","\r\n
    \r\n

    \r\n
    Application type
    \r\n \r\n \r\n

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

    \r\n To register as a pharmacy technician with recognised UK qualifications you will need to successfully complete:\r\n

    \r\n
      \r\n
    • \r\n either one of the recognised competency-based qualifications and one of the recognised knowledge-based \r\n qualifications listed in the criteria, or a combined competency qualification, also listed in the criteria\r\n
    • \r\n
    • \r\n a minimum of two years’ work-based experience in the UK, or a shorter period if either:\r\n
        \r\n
      • \r\n you have qualified as a pharmacy technician or a pharmacist in a country outside the UK; or\r\n
      • \r\n
      • \r\n you have completed a recent period of pre-registration pharmacist training in the UK.\r\n
      • \r\n
      \r\n
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Tell us how you meet the criteria for registration so that we can assess your\r\n application appropriately
    \r\n
    \r\n\r\n
    \r\n

    \r\n \r\n \r\n \r\n recognised UK qualifications and a two-year period of relevant work\r\n experience\r\n \r\n \r\n \r\n \r\n recognised UK qualifications, a reduced period of work experience, \r\n and either a non-UK pharmacy qualification or a recent period of pre-registration pharmacist training in the UK.\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    ","import {\r\n Component, forwardRef, ViewChildren, ViewChild, QueryList, ElementRef\r\n} from '@angular/core';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\nimport { RegistrationService } from '../../../core/service/registration.service';\r\nimport { RegisterSearchParams, RegisterSearchBy, RegisterSearchResult } from '../../../registration/model/RegisterSearchParams';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ConfirmDialogComponent } from '../../../shared/confirmDialog.component';\r\nimport { ApplicationStatus } from '../../model/ApplicationStatus';\r\nimport { CountersignatureResult } from '../../model/CountersignatureResult';\r\nimport { CountersignatureOutcome } from '../../model/CountersignatureOutcome';\r\nimport { environment } from '../../../../environments/environment.cblocal';\r\nimport { LogService } from '../../../core/service/log.service';\r\nimport { TechnicianApplicationStep } from '../../model/TechnicianApplicationStep';\r\nimport { TechnicianService } from '../../../core/service/technician.service';\r\n\r\n@Component({\r\n selector: 'app-countersigning-step',\r\n templateUrl: './countersigningStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => CountersigningStepComponent)\r\n }\r\n ],\r\n styleUrls: ['./countersigningStep.scss']\r\n})\r\nexport class CountersigningStepComponent extends FormStepComponent {\r\n\r\n showHelp = false;\r\n stepId = TechnicianApplicationStep.Countersigning;\r\n title = 'Countersignature';\r\n searchParams: RegisterSearchParams = new RegisterSearchParams();\r\n RegisterSearchBy = RegisterSearchBy;\r\n pharmacists: Array;\r\n selectedPharmacist: RegisterSearchResult;\r\n searching = false;\r\n loadingMore = false;\r\n showLoadMore = false;\r\n noResultsVisible = false;\r\n sending = false;\r\n recalling = false;\r\n sent = false;\r\n serverErrors;\r\n lastResult: CountersignatureResult;\r\n CountersignatureOutcome = CountersignatureOutcome;\r\n\r\n @ViewChildren('focus') focus: QueryList;\r\n @ViewChild('resultsList') resultsListRef: ElementRef;\r\n\r\n load() {\r\n this.serverErrors = undefined;\r\n this.loadResults();\r\n if (!this.lastResult) {\r\n this.setFocus();\r\n }\r\n this.ready$.next(true);\r\n }\r\n\r\n get inProgress() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.InProgress;\r\n }\r\n\r\n get _prevDisabled() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.CounterSigned ||\r\n this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning;\r\n }\r\n set _prevDisabled(disabled) { }\r\n\r\n get showCountersigningResult() {\r\n return this.inProgress && this.lastResult !== undefined && this.lastResult.decision !== CountersignatureOutcome.Approved &&\r\n this.lastResult.decision !== CountersignatureOutcome.Unknown &&\r\n this.lastResult.decision !== CountersignatureOutcome.Pending;\r\n }\r\n loadResults() {\r\n if (this.application.activeForm.countersignatures &&\r\n this.application.activeForm.countersignatures.length) {\r\n const countersignatures = this.application.activeForm.countersignatures.sort((a, b) => {\r\n return new Date(a.decisionMadeAt) < new Date(b.decisionMadeAt) ? 1 : -1;\r\n });\r\n this.lastResult = countersignatures[0];\r\n this.selectedPharmacist = this.lastResult;\r\n }\r\n }\r\n\r\n constructor(service: FormStepperService, private technicianService: TechnicianService,\r\n public regService: RegistrationService, private dialog: MatDialog, private log: LogService) {\r\n super(service);\r\n }\r\n\r\n get _waiting() {\r\n return this.awaitingCountersigning;\r\n }\r\n\r\n search() {\r\n this.searchParams.skip = 0;\r\n this.searching = true;\r\n this.searchParams.applicationType = 'IncludePharmacyTechnician';\r\n this.regService.searchRegister(this.searchParams)\r\n .subscribe(results => {\r\n this.pharmacists = results;\r\n this.searching = false;\r\n this.showLoadMore = results.length === this.searchParams.take;\r\n this.resultsListRef.nativeElement.scrollTop = 0;\r\n this.noResultsVisible = results.length === 0;\r\n }, error => {\r\n this.searching = false;\r\n this.showLoadMore = false;\r\n });\r\n }\r\n\r\n\r\n clearNoResults() {\r\n this.noResultsVisible = false;\r\n }\r\n\r\n loadMore() {\r\n this.searchParams.skip += this.searchParams.take;\r\n this.loadingMore = true;\r\n this.searchParams.applicationType = 'IncludePharmacyTechnician';\r\n this.regService.searchRegister(this.searchParams)\r\n .subscribe(results => {\r\n this.showLoadMore = results.length === this.searchParams.take;\r\n this.pharmacists = this.pharmacists.concat(results);\r\n this.loadingMore = false;\r\n }, error => {\r\n this.loadingMore = false;\r\n });\r\n }\r\n\r\n cancelSelection() {\r\n this.selectedPharmacist = undefined;\r\n this.touched = false;\r\n this.validate();\r\n }\r\n\r\n sendForCountersigning() {\r\n\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n confirmText: 'Yes',\r\n cancelText: 'No',\r\n title: `Send for countersigning`,\r\n message: `

    Are you sure you are ready to have your application countersigned ?

    `\r\n }\r\n });\r\n\r\n dialogRef.afterClosed().subscribe(confirmed => {\r\n if (confirmed) {\r\n this.serverErrors = undefined;\r\n this.sending = true;\r\n this.technicianService.sendToCountersigner(this.selectedPharmacist.registrationNumber).subscribe(() => {\r\n this.log.info('Send to countersigner response - success');\r\n this.lastResult = undefined;\r\n this.sending = false;\r\n this.log.info('Updating form status to ReadyForCountersigning');\r\n this.application.activeForm.formStatus = ApplicationStatus.ReadyForCountersigning;\r\n this.log.info('Updating form step validity');\r\n this.validity$.next({ valid: false, messages: [], touched: this.touched });\r\n\r\n setTimeout(() => {\r\n this.log.info('Locking form');\r\n this.service.disableAllStepsExcept(TechnicianApplicationStep.Countersigning);\r\n }, 50);\r\n\r\n }, error => {\r\n this.log.error('Send to countersigner response - fail', error);\r\n this.serverErrors = error.validationErrors;\r\n this.sending = false;\r\n });\r\n }\r\n });\r\n return false;\r\n\r\n }\r\n\r\n recall() {\r\n this.recalling = true;\r\n // to be added when we have the recall endpoint\r\n this.technicianService.recallFromCountersigner().subscribe(() => {\r\n this.recalling = false;\r\n this.application.activeForm.formStatus = ApplicationStatus.InProgress;\r\n this.service.setStepRange(1, TechnicianApplicationStep.Countersigning);\r\n this.validity$.next({ valid: false, messages: [], touched: false });\r\n }, error => {\r\n\r\n this.recalling = false;\r\n });\r\n }\r\n\r\n get searchByName() {\r\n return this.searchParams.searchBy === RegisterSearchBy.Name;\r\n }\r\n get searchByNumber() {\r\n return this.searchParams.searchBy === RegisterSearchBy.Number;\r\n }\r\n\r\n setFocus() {\r\n setTimeout(function () {\r\n if (this.focus.first && this.focus.first.nativeElement) {\r\n this.focus.first.nativeElement.focus();\r\n }\r\n }.bind(this), 50);\r\n }\r\n\r\n setSelectedPharmacist(pharmacist: RegisterSearchResult) {\r\n this.selectedPharmacist = pharmacist;\r\n this.validate();\r\n }\r\n\r\n validate() {\r\n if (this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning) {\r\n this.validity$.next({\r\n valid: false, messages: [`Waiting for a response from your countersigning pharmacist.\r\n You cannot proceed until your application has been countersigned.`], touched: this.touched\r\n });\r\n return;\r\n }\r\n const valid = this.application.activeForm.formStatus === ApplicationStatus.CounterSigned;\r\n const messages = [];\r\n if (!valid) {\r\n if (!this.selectedPharmacist) {\r\n messages.push('You must choose a countersigning pharmacist');\r\n }\r\n messages.push('You cannot proceed until your application has been countersigned');\r\n }\r\n\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n get isDirty() {\r\n return false;\r\n }\r\n\r\n populateForm() {\r\n }\r\n\r\n get awaitingCountersigning() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.ReadyForCountersigning;\r\n }\r\n\r\n get countersigned() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.CounterSigned;\r\n }\r\n\r\n get showDiagnosticsLink() {\r\n return environment.target !== 'PROD';\r\n }\r\n}\r\n","\r\n
    \r\n

    \r\n
    Countersigning your application
    \r\n \r\n \r\n

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

    \r\n Your application must be reviewed and countersigned by a registered pharmacist or pharmacy technician, who\r\n is\r\n currently registered, to help to verify you meet the criteria to be registered as a pharmacy technician.\r\n

    \r\n

    \r\n The countersigning pharmacist or pharmacy technician must confirm that they have read your application,\r\n and seen your uploaded supporting documents.\r\n

    \r\n

    \r\n Based on this information, they must confirm that they have no issues to raise with us, in relation to the\r\n standards for pharmacy professionals, about your actions, professional performance or health, which would\r\n stop\r\n you being registered as a pharmacy technician.\r\n

    \r\n

    \r\n The pharmacist or pharmacy technician you nominate will receive a notification when your application has\r\n been sent to them for sign off.\r\n

    \r\n

    \r\n You will receive a notification once your selected pharmacist or pharmacy technician has either\r\n countersigned or refused to countersign your application.\r\n

    \r\n

    \r\n Once we receive your fee, and your supporting documents in the post, we will start to process your\r\n application\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n {{ lastResult?.feedback }}\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n\r\n

    Select a pharmacist or pharmacy technician for countersigning

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

    \r\n Your application must be reviewed and countersigned by a registered pharmacist/pharmacy technician,\r\n preferably your pre-registration tutor,\r\n to help to verify you meet the criteria to be registered as a pharmacy technician.\r\n

    \r\n

    \r\n The countersigning pharmacist/pharmacy technician will receive your full application as shown on the\r\n review\r\n screen. It will not include any equality information you have provided.\r\n

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

    Please search for a pharmacist/pharmacy technician to countersign your\r\n application using the search box below.

    \r\n \r\n \r\n Registration number\r\n \r\n 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 Please enter a registration number\r\n

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

    \r\n You must provide a last 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
    Searching for pharmacist/pharmacy technicians...
    \r\n
    \r\n
    \r\n 0\">\r\n
    \r\n \r\n
      \r\n
    • \r\n \r\n
    • \r\n
    • \r\n \r\n
      \r\n \r\n
      \r\n
    • \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n

    \r\n Couldn't find any pharmacist/pharmacy technicians with registration number '{{searchParams.regNumber}}'.\r\n

    \r\n

    \r\n Couldn't find any pharmacist/pharmacy technicians called '{{ (searchParams.firstName ? searchParams.firstName + ' ' : '') + searchParams.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 {{ selectedPharmacist?.registrationNumber}} -\r\n {{ selectedPharmacist?.forenames + ' ' + selectedPharmacist?.surname }} - {{\r\n selectedPharmacist?.town }}\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n \r\n

    \r\n {{ 'Server validation error: ' + error.errors.join(',') }}\r\n

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

    Once your application has been countersigned, you will no longer be able to change it.\r\n

    \r\n

    If you change your mind you can recall your application from the countersigning pharmacist/pharmacist\r\n technician, as long as it hasn't\r\n been countersigned yet.\r\n

    \r\n
    \r\n\r\n\r\n
    \r\n\r\n\r\n \r\n
    \r\n\r\n \r\n \r\n
    \r\n Recalling application...\r\n Sending to countersigning pharmacist...\r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n
    \r\n Your application has now been countersigned\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n\r\n \r\n
    \r\n Your application is now waiting to be countersigned\r\n
    \r\n \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, ErrorHandler } from '@angular/core';\r\nimport { AuthService } from '../../../core/service/auth.service';\r\nimport { User } from '../../../account/model/User';\r\nimport { TechnicianService } from '../../../core/service/technician.service';\r\nimport { TechnicianApplication } from '../../model/TechnicianApplication';\r\nimport { ApplicationStatus } from '../../../prereg/model/ApplicationStatus';\r\n\r\n@Component({\r\n selector: 'app-technician-dashboard',\r\n moduleId: module.id,\r\n templateUrl: './technicianDashboard.component.html',\r\n styleUrls: ['../../../style/dashboard.scss']\r\n})\r\nexport class TechnicianDashboardComponent implements OnInit {\r\n\r\n user: User;\r\n loadingApplication = false;\r\n application: TechnicianApplication;\r\n ApplicationStatus = ApplicationStatus;\r\n isApplicationOpen;\r\n applicationClosedMessage;\r\n showNoticeOfEntry = false;\r\n error = false;\r\n preEntryNumber : string;\r\n constructor(private auth: AuthService,\r\n private service: TechnicianService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.user = this.auth.user;\r\n this.loadApplication();\r\n }\r\n\r\n get threeColumns() {\r\n return this.showFirstYearPayment || this.showNoticeOfEntry;\r\n }\r\n\r\n get twoColumns() {\r\n return !this.threeColumns;\r\n }\r\n\r\n get showFirstYearPayment() {\r\n return this.application && this.application.isFirstYearPaymentAvailable;\r\n }\r\n\r\n loadApplication() {\r\n this.loadingApplication = true;\r\n this.service.getApplication(this.auth.user.registrationStatus)\r\n .subscribe(application => {\r\n this.application = application;\r\n this.showNoticeOfEntry = this.auth.user.showNoticeOfEntry;\r\n this.isApplicationOpen = true;\r\n this.loadingApplication = false;\r\n this.preEntryNumber = this.application.trainee.preEntryNumber;\r\n }, error => {\r\n this.error = error;\r\n this.loadingApplication = false;\r\n });\r\n }\r\n\r\n}\r\n","\r\n\r\n
    \r\n

    Home

    \r\n

    \r\n A summary of the status of your application to register as a pharmacy technician.\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n \r\n \r\n
    Error
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n \r\n Application\r\n\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n {{ ApplicationStatus[application?.status] | caseSplit }}\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n \r\n
    \r\n {{ applicationClosedMessage }}\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n\r\n \r\n {{ user }}\r\n
    \r\n
    {{ preEntryNumber }}
    \r\n
    \r\n
    \r\n\r\n\r\n \r\n Notice of entry\r\n
    \r\n \r\n
    \r\n View or print\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n \r\n First year fee\r\n\r\n
    \r\n\r\n
    \r\n \r\n
    \r\n Make payment now\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n","import { Input, Component, OnInit } from '@angular/core';\r\nimport { FormValidator } from '../../../dynamic/service/FormValidator';\r\nimport { FormValidationService } from '../../../dynamic/service/formValidationService';\r\nimport { FormQuestion } from '../../../dynamic/model/FormQuestion';\r\nimport { map } from 'rxjs/operators';\r\nimport { TechnicianService } from '../../../core/service/technician.service';\r\nimport { TechnicianApplication } from '../../model/TechnicianApplication';\r\nimport { TechnicianApplicationForm } from '../../model/TechnicianApplicationForm';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-declaration-summary',\r\n templateUrl: './declarationSummary.component.html',\r\n providers: [\r\n FormValidationService,\r\n { provide: FormValidator, useExisting: FormValidationService }\r\n ],\r\n styleUrls: ['./declarationSummary.scss']\r\n}) export class DeclarationSummaryComponent implements OnInit {\r\n empty = false;\r\n form$ = this.validator.state$.pipe(map(forms => forms[0]));\r\n formIndex = 0;\r\n @Input() application: TechnicianApplication;\r\n @Input() formId;\r\n applicationForm: TechnicianApplicationForm;\r\n dynamicFormId;\r\n hasToDeclare: Array = [];\r\n constructor(\r\n private technicianService: TechnicianService,\r\n private validator: FormValidationService\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n this.setForm();\r\n this.load();\r\n }\r\n\r\n setForm() {\r\n if (this.formId) {\r\n this.applicationForm = this.application.pastApplications\r\n .find(pastApp => pastApp.id === this.formId);\r\n } else {\r\n this.applicationForm = this.application.activeForm;\r\n }\r\n }\r\n\r\n load() {\r\n this.technicianService.getDeclarationFormTemplates().subscribe(formTemplates => {\r\n const formTemplate = formTemplates[this.formIndex];\r\n const form = this.validator.addForm(formTemplate);\r\n this.dynamicFormId = form.dynamicFormId;\r\n const saved = this.applicationForm.declarations.find(dec => dec.dynamicFormId === form.dynamicFormId);\r\n if (!saved) {\r\n this.empty = true;\r\n return;\r\n }\r\n this.validator.loadAnswers(form, saved.answers);\r\n this.hasToDeclare = form.questionGroups.reduce((acc, group) => {\r\n acc = acc.concat(group.questions.filter(q => this.validator.hasAnsweredYes(q)));\r\n return acc;\r\n }, []);\r\n });\r\n }\r\n}\r\n\r\n\r\n","
    \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n
    \r\n I have nothing to declare\r\n
    \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n Declarations not completed\r\n
    \r\n
    ","import { Input, Component, forwardRef, OnInit } from '@angular/core';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\nimport { FormValidator } from '../../../dynamic/service/FormValidator';\r\nimport { FormValidationService } from '../../../dynamic/service/formValidationService';\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\nimport { map, tap } from 'rxjs/operators';\r\nimport { TechnicianApplicationStep } from '../../model/TechnicianApplicationStep';\r\nimport { TechnicianService } from '../../../core/service/technician.service';\r\n\r\n@Component({\r\n selector: 'app-ftp-declaration-step',\r\n templateUrl: './ftpDeclarationStep.component.html',\r\n styleUrls: ['./ftpDeclarationStep.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => FtpDeclarationStepComponent)\r\n },\r\n FormValidationService,\r\n { provide: FormValidator, useExisting: FormValidationService }\r\n ]\r\n}) export class FtpDeclarationStepComponent extends FormStepComponent implements OnInit {\r\n declarationHeading;\r\n form$ = this.validator.state$.pipe(map(forms => forms[0]));\r\n formIndex: number;\r\n @Input('formIndex') set setFormIndex(value) {\r\n this.formIndex = parseInt(value, 10);\r\n }\r\n title;\r\n stepId;\r\n dynamicFormId;\r\n valid;\r\n constructor(private technicianService: TechnicianService, private validator: FormValidationService, service: FormStepperService) {\r\n super(service);\r\n this.form$.subscribe(form => {\r\n if (form) {\r\n this.dirty = form.dirty;\r\n this.valid = !form.invalid && form.completed;\r\n this.validate();\r\n }\r\n });\r\n }\r\n\r\n beforeNext() {\r\n return this.populateForm();\r\n }\r\n\r\n beforePrev() {\r\n return this.populateForm();\r\n }\r\n\r\n populateForm() {\r\n this.application.activeForm.declarations = this.application.activeForm.declarations\r\n .filter(d => d.dynamicFormId !== this.dynamicFormId);\r\n this.application.activeForm.declarations.push(this.validator.getPayload()[0]);\r\n return true;\r\n }\r\n\r\n ngOnInit() {\r\n this.title = 'Declaration (' + (this.formIndex + 1) + ')';\r\n if (this.formIndex === 0) {\r\n this.stepId = TechnicianApplicationStep.FtpDeclaration1;\r\n this.declarationHeading = 'Declaration of fitness to practise';\r\n }\r\n if (this.formIndex === 1) {\r\n this.stepId = TechnicianApplicationStep.FtpDeclaration2;\r\n this.declarationHeading = 'Declarations on joining the register';\r\n }\r\n\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n if (!this.valid) {\r\n messages.push('You must answer all the questions to continue');\r\n }\r\n this.validity$.next({ valid: this.valid, messages, touched: this.touched });\r\n }\r\n\r\n load() {\r\n\r\n this.technicianService.getDeclarationFormTemplates().subscribe(formTemplates => {\r\n const formTemplate = formTemplates[this.formIndex];\r\n const form = this.validator.addForm(formTemplate);\r\n this.dynamicFormId = form.dynamicFormId;\r\n const saved = this.application.activeForm.declarations.find(dec => dec.dynamicFormId === form.dynamicFormId);\r\n if (saved) {\r\n this.validator.loadAnswers(form, saved.answers);\r\n }\r\n\r\n const currentDynamicFormIds = formTemplates.map(template => template.dynamicFormId);\r\n this.application.activeForm.declarations = this.application.activeForm.declarations\r\n .filter(f => currentDynamicFormIds.indexOf(f.dynamicFormId) > -1 );\r\n\r\n this.validator.updateState();\r\n this.dirty = false;\r\n this.touched = false;\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n}\r\n\r\n\r\n","\r\n

    {{ declarationHeading }}

    \r\n

    \r\n You must meet these requirements in order to continue with your application. \r\n If you are accepted to join the register you will have obligations in law to tell us if any of your circumstances change.\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, forwardRef } from '@angular/core';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\nimport { TechnicianApplicationStep } from '../../model/TechnicianApplicationStep';\r\n\r\n@Component({\r\n selector: 'app-overall-declaration-step',\r\n templateUrl: './overallDeclarationStep.component.html',\r\n styleUrls: ['./overallDeclarationStep.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => OverallDeclarationStepComponent)\r\n }\r\n ]\r\n}) export class OverallDeclarationStepComponent extends FormStepComponent {\r\n\r\n title = 'Declaration (3)';\r\n stepId = TechnicianApplicationStep.OverallDeclaration;\r\n\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n update() {\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n const valid = this.application.activeForm.isOverallDeclarationConfirmed;\r\n if (!valid) {\r\n messages.push('You must tick the box to continue');\r\n }\r\n this.validity$.next({ valid, messages, touched: this.touched});\r\n }\r\n populateForm() {}\r\n\r\n}\r\n","\r\n

    \r\n Declaration Confirmation\r\n

    \r\n
    \r\n

    \r\n I confirm that I fully understand the declarations I have made.\r\n

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

    I have read and understand the declaration

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { Component, OnInit, forwardRef, AfterViewInit, Input, Output, ChangeDetectorRef, AfterContentChecked, ViewEncapsulation } from '@angular/core';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\nimport { TechnicianApplicationStep } from '../../model/TechnicianApplicationStep';\r\nimport { Tooltip } from '../../../core/tooltip/Tooltip';\r\nimport { TechnicianService } from '../../../core/service/technician.service';\r\nimport { TechnicianQualificationType } from '../../model/TechnicianQualificationType';\r\nimport { QualificationType } from '../../model/QualificationType';\r\nimport { EducationDetails } from '../../model/EducationDetails';\r\nimport { TechnicianApplication } from '../../model/TechnicianApplication';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ConfirmDialogComponent } from '../../../shared/confirmDialog.component';\r\nimport { EventEmitter } from '@angular/core';\r\nimport { TechnicianApplicationForm } from '../../model/TechnicianApplicationForm';\r\nimport { AttachmentType } from '../../../shared/model/AttachmentType';\r\n@Component({\r\n selector: 'app-education-details-step',\r\n templateUrl: './educationDetailsStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => EducationDetailsStepComponent)\r\n }\r\n ],\r\n styleUrls: ['./educationDetailsStep.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class EducationDetailsStepComponent extends FormStepComponent implements AfterViewInit, AfterContentChecked, OnInit {\r\n knowledgeQualifications: Array = [];\r\n competencyQualifications: Array = [];\r\n combinedQualifications: Array = [];\r\n @Input() readonly = false;\r\n @Output() navigate = new EventEmitter();\r\n @Output() dependentDocsStepsCleared = new EventEmitter();\r\n\r\n stepId = TechnicianApplicationStep.Education;\r\n title = 'Education details';\r\n viewReady = false;\r\n knowledgeDateNotSet = false;\r\n competencyDatesNotSet = false;\r\n combinedDatesNotSet = false;\r\n educationDetails: EducationDetails;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n showHelp = false;\r\n isDisabled = false;\r\n attachments = [];\r\n\r\n constructor(service: FormStepperService,\r\n private technicianService: TechnicianService,\r\n private dialog: MatDialog, private ref: ChangeDetectorRef\r\n ) {\r\n super(service);\r\n }\r\n\r\n ngOnInit() {\r\n this.educationDetails = (this.application).activeForm.educationDetails;\r\n this.loadKnowledgeQualifications();\r\n this.loadCompetencyQualifications();\r\n this.loadCombinedQualifications();\r\n }\r\n ngAfterContentChecked() {\r\n this.ref.detectChanges();\r\n }\r\n\r\n loadKnowledgeQualifications() {\r\n this.technicianService.getQualificationList(TechnicianQualificationType.Knowledge).subscribe(qualifications => {\r\n this.knowledgeQualifications = qualifications;\r\n });\r\n }\r\n\r\n loadCompetencyQualifications() {\r\n this.technicianService.getQualificationList(TechnicianQualificationType.Competency).subscribe(qualifications => {\r\n this.competencyQualifications = qualifications;\r\n });\r\n }\r\n\r\n loadCombinedQualifications() {\r\n this.technicianService.getQualificationList(TechnicianQualificationType.Combined).subscribe(qualifications => {\r\n this.combinedQualifications = qualifications;\r\n });\r\n }\r\n\r\n updateKnowledgeDates(dates) {\r\n this.application.activeForm.educationDetails.knowledge.dateCommenced = dates.from;\r\n this.application.activeForm.educationDetails.knowledge.dateAwarded = dates.to;\r\n this.knowledgeDateNotSet = false;\r\n this.update();\r\n }\r\n\r\n updateCompetencyDates(dates) {\r\n if ((this.hasValidWorkExperiences && this.hasValidDocs) || this.hasValidWorkExperiences) {\r\n this.warnForChangeOfDates();\r\n return;\r\n }\r\n\r\n this.application.activeForm.educationDetails.competency.dateCommenced = dates.from;\r\n this.application.activeForm.educationDetails.competency.dateAwarded = dates.to;\r\n this.competencyDatesNotSet = false;\r\n this.update();\r\n }\r\n\r\n updateCombinedDates(dates) {\r\n this.application.activeForm.educationDetails.combined.dateCommenced = dates.from;\r\n this.application.activeForm.educationDetails.combined.dateAwarded = dates.to;\r\n this.combinedDatesNotSet = false;\r\n this.update();\r\n }\r\n\r\n get hasValidWorkExperiences() {\r\n const hasWorkExperiences = !!(this.application.activeForm).workExperiences.length;\r\n if (hasWorkExperiences) {\r\n const hasValidExperiences = (this.application.activeForm).workExperiences.every(experience => {\r\n return experience.isValid;\r\n });\r\n return hasValidExperiences;\r\n }\r\n }\r\n\r\n get hasValidDocs() {\r\n const hasdocs = !!(this.application.activeForm).attachments.length;\r\n if (hasdocs) {\r\n const hasValidDocTypes = (this.application.activeForm).attachments.every(docType => {\r\n return docType.type;\r\n });\r\n return hasValidDocTypes;\r\n }\r\n }\r\n\r\n\r\n warnForChangeOfDates() {\r\n const dialog = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n title: 'Please confirm',\r\n message: `Changing the data on this step will clear the following steps if they are filled:\r\n - Work experience\r\n - Qualification Supporting document. Do you wish to continue ?\r\n `\r\n }\r\n });\r\n dialog.afterClosed().subscribe((confirmed) => {\r\n if (confirmed) {\r\n this.application.activeForm.clearWorkExperience();\r\n if (this.hasValidDocs) {\r\n this.clearQualificationDocs();\r\n }\r\n } else {\r\n this.navigate.emit(this.service.getFurthestStep());\r\n }\r\n });\r\n }\r\n\r\n\r\n beforePrev() {\r\n this.dirty = false;\r\n return true;\r\n }\r\n\r\n load() {\r\n if (this.viewReady) {\r\n this.ready$.next(true);\r\n this.populateForm();\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.educationDetails = (this.application).activeForm.educationDetails;\r\n this.attachments = (this.application).activeForm.attachments;\r\n this.ready$.next(true);\r\n this.viewReady = true;\r\n });\r\n\r\n }\r\n\r\n update() {\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n clearQualificationDocs() {\r\n if (this.attachments.length) {\r\n if (this.educationDetails.combined.qualificationId !== null) {\r\n this.attachments = this.application.activeForm.attachments.filter(\r\n this.removeTechnicianApplicationCombinedQualificationDocs);\r\n } else if (this.educationDetails.combined.qualificationId === null) {\r\n this.attachments = this.application.activeForm.attachments.filter(\r\n this.removeTechnicianApplicationKnowledgeCOmpetencyQualificationDocs);\r\n }\r\n }\r\n }\r\n\r\n removeTechnicianApplicationCombinedQualificationDocs(element, index, array) {\r\n return element.type !== AttachmentType.CombinedQualification;\r\n }\r\n\r\n removeTechnicianApplicationKnowledgeCOmpetencyQualificationDocs(element, index, array) {\r\n return (element.type !== AttachmentType.KnowledgeBasedQualification && element.type !== AttachmentType.CompetencyBasedQualification);\r\n }\r\n\r\n clearDependentSteps() {\r\n this.application.activeForm.clearQualificationAttachments();\r\n this.dependentDocsStepsCleared.emit('cleared');\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n const today = new Date();\r\n this.application.activeForm.attachments = this.attachments;\r\n \r\n //console.log('attachnments in validate', this.attachments);\r\n \r\n const hasKnowledgeQualificationSet = !!this.educationDetails.knowledge.qualificationId;\r\n const hasCompetencyQualificationSet = !!this.educationDetails.competency.qualificationId;\r\n const hasCombinedQualificationSet = !!this.educationDetails.combined.qualificationId;\r\n\r\n const hasKnowledgeDateCommencedSet = !!this.educationDetails.knowledge.dateCommenced;\r\n const hasKnowledgeDateAwardedSet = !!this.educationDetails.knowledge.dateAwarded;\r\n\r\n const hasCompetencyDateCommencedSet = !!this.educationDetails.competency.dateCommenced;\r\n const hasCompetencyDateAwardedSet = !!this.educationDetails.competency.dateAwarded;\r\n\r\n const hasCombinedDateCommencedSet = !!this.educationDetails.combined.dateCommenced;\r\n const hasCombinedDateAwardedSet = !!this.educationDetails.combined.dateAwarded;\r\n\r\n const { dateAwarded: knowledgeDateAwarded_ } = this.application.activeForm.educationDetails.knowledge;\r\n const { dateAwarded: competencyDateAwarded_ } = this.application.activeForm.educationDetails.competency;\r\n const { dateAwarded: combinedDateAwarded_ } = this.application.activeForm.educationDetails.combined;\r\n\r\n\r\n if (this.educationDetails.knowledge.qualificationId === null) {\r\n \r\n this.application.activeForm.educationDetails.knowledge.dateCommenced = null;\r\n this.application.activeForm.educationDetails.knowledge.dateAwarded = null;\r\n }\r\n if (this.educationDetails.competency.qualificationId === null) {\r\n \r\n this.application.activeForm.educationDetails.competency.dateCommenced = null;\r\n this.application.activeForm.educationDetails.competency.dateAwarded = null;\r\n }\r\n if (this.educationDetails.combined.qualificationId === null) {\r\n this.application.activeForm.educationDetails.combined.id = null;\r\n this.application.activeForm.educationDetails.combined.dateCommenced = null;\r\n this.application.activeForm.educationDetails.combined.dateAwarded = null;\r\n } else if (this.educationDetails.combined.qualificationId !== null) {\r\n this.application.activeForm.educationDetails.knowledge.id = null;\r\n this.application.activeForm.educationDetails.competency.id = null;\r\n }\r\n\r\n if (new Date(knowledgeDateAwarded_) > today) {\r\n this.knowledgeDateNotSet = true;\r\n messages.push(`Knowledge date awarded must not be after today`);\r\n }\r\n\r\n if (new Date(competencyDateAwarded_) > today) {\r\n this.competencyDatesNotSet = true;\r\n messages.push(`Competency date awarded must not be after today`);\r\n }\r\n\r\n if (new Date(combinedDateAwarded_) > today) {\r\n this.combinedDatesNotSet = true;\r\n messages.push(`combined date awarded must not be after today`);\r\n }\r\n\r\n if ((hasKnowledgeQualificationSet && hasCombinedQualificationSet) ||\r\n (hasCompetencyQualificationSet && hasCombinedQualificationSet)) {\r\n messages.push('Please select either knowledge & competency qualification (or) combined qualification');\r\n }\r\n\r\n if (!hasKnowledgeQualificationSet &&\r\n !hasCompetencyQualificationSet && !hasCombinedQualificationSet) {\r\n messages.push('Please select either knowledge & competency qualification (or) combined qualification');\r\n }\r\n if ((hasKnowledgeDateCommencedSet &&\r\n hasKnowledgeDateAwardedSet &&\r\n hasCompetencyDateCommencedSet &&\r\n hasCompetencyDateAwardedSet)) {\r\n\r\n const knowledgeDateCommenced = this.application.activeForm.educationDetails.knowledge.dateCommenced;\r\n const knowledgeDateAwarded = this.application.activeForm.educationDetails.knowledge.dateAwarded;\r\n const competencyDateCommenced = this.application.activeForm.educationDetails.competency.dateCommenced;\r\n const competencyDateAwarded = this.application.activeForm.educationDetails.competency.dateAwarded;\r\n\r\n this.validateQualificationDates(knowledgeDateCommenced, knowledgeDateAwarded,\r\n competencyDateCommenced, competencyDateAwarded, messages);\r\n }\r\n\r\n if (hasCombinedDateCommencedSet && hasCombinedDateAwardedSet) {\r\n const combinedDateCommenced = this.application.activeForm.educationDetails.combined.dateCommenced;\r\n const combinedDateAwarded = this.application.activeForm.educationDetails.combined.dateAwarded;\r\n\r\n this.validateCombinedQualificationDates(combinedDateCommenced, combinedDateAwarded, messages);\r\n }\r\n this.validity$.next({ valid: !messages.length, messages, touched: this.touched });\r\n }\r\n validateQualificationDates(knowledgeDateCommenced, knowledgeDateAwarded, competencyDateCommenced, competencyDateAwarded, messages) {\r\n let commencedDateForFirst: Date, awardDateForLast: Date, awardDateForLastPlusTwoYears: Date, commencedDateForFirstPlusFiveYears: Date;\r\n\r\n if (knowledgeDateCommenced !== null && knowledgeDateAwarded !== null &&\r\n competencyDateCommenced !== null && competencyDateAwarded !== null) {\r\n commencedDateForFirst = (knowledgeDateCommenced >= competencyDateCommenced ? new Date(competencyDateCommenced) :\r\n new Date(knowledgeDateCommenced));\r\n awardDateForLast = knowledgeDateAwarded >= competencyDateAwarded ? new Date(knowledgeDateAwarded) : new Date(competencyDateAwarded);\r\n awardDateForLast.setHours(0, 0, 0, 0);\r\n\r\n awardDateForLastPlusTwoYears = awardDateForLast;\r\n awardDateForLastPlusTwoYears.setMonth(awardDateForLast.getMonth() + 24);\r\n awardDateForLastPlusTwoYears.setHours(0, 0, 0, 0);\r\n\r\n commencedDateForFirstPlusFiveYears = commencedDateForFirst;\r\n commencedDateForFirstPlusFiveYears.setMonth(commencedDateForFirst.getMonth() + 60);\r\n commencedDateForFirstPlusFiveYears.setHours(0, 0, 0, 0);\r\n\r\n const lastDateOfCommencedPlusFiveYears = new Date(commencedDateForFirstPlusFiveYears.getFullYear(), 12, 31);\r\n lastDateOfCommencedPlusFiveYears.setHours(0, 0, 0, 0);\r\n const todayDate = new Date();\r\n todayDate.setHours(0, 0, 0, 0);\r\n\r\n if ((commencedDateForFirstPlusFiveYears < todayDate && todayDate > lastDateOfCommencedPlusFiveYears)) {\r\n messages.push(`You do not appear to meet the eligibility criteria to register as a\r\n pharmacy technician, please contact the GPhC for further information.`);\r\n }\r\n const lastDateOfAwardPlusTwoYear = new Date(awardDateForLastPlusTwoYears.getFullYear(), 12, 31);\r\n lastDateOfAwardPlusTwoYear.setHours(0, 0, 0, 0);\r\n if (awardDateForLastPlusTwoYears < todayDate && todayDate > lastDateOfAwardPlusTwoYear) {\r\n messages.push(`You do not appear to meet the eligibility criteria to register as a pharmacy technician,\r\n please contact the GPhC for further information.`);\r\n }\r\n }\r\n }\r\n\r\n validateCombinedQualificationDates(combinedDateCommenced, combinedDateAwarded, messages) {\r\n let combinedCommencedDateForFirst: Date, combinedAwardDateForLast: Date,\r\n combinedAwardDateForLastPlusTwoYears: Date, combinedCommencedDateForFirstPlusFiveYears: Date;\r\n\r\n if (combinedDateCommenced !== null && combinedDateAwarded !== null) {\r\n combinedCommencedDateForFirst = new Date(combinedDateCommenced);\r\n combinedAwardDateForLast = new Date(combinedDateAwarded);\r\n combinedAwardDateForLast.setHours(0, 0, 0, 0);\r\n\r\n combinedAwardDateForLastPlusTwoYears = combinedAwardDateForLast;\r\n combinedAwardDateForLastPlusTwoYears.setMonth(combinedAwardDateForLast.getMonth() + 24);\r\n combinedAwardDateForLastPlusTwoYears.setHours(0, 0, 0, 0);\r\n\r\n combinedCommencedDateForFirstPlusFiveYears = combinedCommencedDateForFirst;\r\n combinedCommencedDateForFirstPlusFiveYears.setMonth(combinedCommencedDateForFirst.getMonth() + 60);\r\n combinedCommencedDateForFirstPlusFiveYears.setHours(0, 0, 0, 0);\r\n\r\n const lastDateOfCommencedPlusFiveYears = new Date(combinedCommencedDateForFirstPlusFiveYears.getFullYear(), 12, 31);\r\n lastDateOfCommencedPlusFiveYears.setHours(0, 0, 0, 0);\r\n const todayDate = new Date();\r\n todayDate.setHours(0, 0, 0, 0);\r\n\r\n if ((combinedCommencedDateForFirstPlusFiveYears < todayDate && todayDate > lastDateOfCommencedPlusFiveYears)) {\r\n messages.push(`You do not appear to meet the eligibility criteria to register as a\r\n pharmacy technician, please contact the GPhC for further information.`);\r\n }\r\n const lastDateOfAwardPlusTwoYear = new Date(combinedAwardDateForLastPlusTwoYears.getFullYear(), 12, 31);\r\n lastDateOfAwardPlusTwoYear.setHours(0, 0, 0, 0);\r\n if (combinedAwardDateForLastPlusTwoYears < todayDate && todayDate > lastDateOfAwardPlusTwoYear) {\r\n messages.push(`You do not appear to meet the eligibility criteria to register as a pharmacy technician,\r\n please contact the GPhC for further information.`);\r\n }\r\n }\r\n }\r\n\r\n populateForm() { }\r\n}\r\n\r\n","\r\n
    \r\n

    \r\n
    Education details
    \r\n \r\n \r\n

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

    \r\n Please select the GPhC approved knowledge and competency qualifications you have completed.\r\n Your certificate will have the full course title and a code printed on it, and the date on which you were\r\n awarded the qualification.\r\n

    \r\n

    \r\n See the application form guidance notes for further information. The start date of each qualification is the\r\n date you formally started studying.\r\n Your course provider should be able to remind you of this if you are unsure.\r\n

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

    Knowledge based qualification

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n choose a course provider\r\n \r\n \r\n {{ knowledgeQualification.courseName }}\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n

    Competency based qualification

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n choose a course provider\r\n \r\n \r\n {{ competencyQualification.courseName }}\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    or

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

    Combined programme/qualification (single\r\n certificate)

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n choose a course provider\r\n \r\n \r\n {{ combinedQualification.courseName }}\r\n \r\n \r\n
    \r\n
    \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 { AfterContentChecked, AfterViewInit, ChangeDetectorRef, Component, forwardRef, OnInit } from '@angular/core';\r\nimport { EdiService } from '../../../account/service/edi.service';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\nimport { EqualityDiversity } from '../../../account/model/EqualityDiversity';\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\nimport { Tooltip } from '../../../core/tooltip/Tooltip';\r\nimport { Applicant } from '../../../account/model/Applicant';\r\nimport { TechnicianApplicationStep } from '../../model/TechnicianApplicationStep';\r\n\r\n@Component({\r\n selector: 'app-equality-diversity-step',\r\n templateUrl: './equalityDiversityStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => EqualityDiversityStepComponent)\r\n }\r\n ]\r\n}) export class EqualityDiversityStepComponent extends FormStepComponent implements OnInit, AfterViewInit, AfterContentChecked {\r\n\r\n equalityDiversity: EqualityDiversity;\r\n constructor(public ediService: EdiService, service: FormStepperService, private ref: ChangeDetectorRef) {\r\n super(service);\r\n }\r\n title = 'Equality and diversity';\r\n stepId = TechnicianApplicationStep.Edi;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n showDetailsHelp = false;\r\n prevDisabled = true;\r\n applicant: Applicant;\r\n\r\n ngOnInit() {\r\n this.applicant = this.application.trainee;\r\n this.applicant.equalityDiversity = this.applicant.equalityDiversity || {\r\n ethnicity: undefined,\r\n ethnicityOther: '',\r\n nationality: undefined,\r\n religion: undefined,\r\n religionOther: '',\r\n disabled: undefined,\r\n disabilityDetails: '',\r\n gender: undefined,\r\n sexualOrientation: undefined\r\n };\r\n this.equalityDiversity = this.applicant.equalityDiversity;\r\n }\r\n\r\n ngAfterContentChecked() {\r\n this.ref.detectChanges();\r\n } \r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.equalityDiversity = this.applicant.equalityDiversity;\r\n });\r\n }\r\n\r\n validate() {\r\n this.validity$.next(Object.assign(this.ediService.validate(this.equalityDiversity), { touched: this.touched }));\r\n }\r\n\r\n update($event) {\r\n const nationality = this.applicant.equalityDiversity.nationality;\r\n this.applicant.equalityDiversity = Object.assign($event, { nationality });\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n load() {\r\n this.ediService.load().subscribe(() => {\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n populateForm() { }\r\n\r\n}\r\n","\r\n\r\n
    \r\n

    \r\n
    \r\n Equality and diversity\r\n
    \r\n \r\n

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

    \r\n At the GPhC, we are committed to promoting equality, valuing diversity and being inclusive in all our work as a health professions\r\n regulator, and to making sure we meet our equality duties.\r\n

    \r\n

    \r\n This equality monitoring form will provide us with useful information to check that this happens, as defined under the Equality\r\n Act 2010. We will use your answers to compile statistics and to facilitate research to support this work. We sometimes share\r\n data with third parties to help us carry out research into particular issues and will have a confidentiality agreement in\r\n place if this happens.\r\n

    \r\n

    \r\n It does not form part of the application process. If you do not want to give us any information, click on ‘prefer not to say’ in response to each section.\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \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, ViewChild, ElementRef, Renderer2 } from '@angular/core';\r\nimport { creditCards, CreditCard } from '../../../renewal/model/CreditCard';\r\nimport { RenewalService } from '../../../core/service/renewal.service';\r\nimport { PreregService } from '../../../core/service/prereg.service';\r\nimport { AuthService } from '../../../core/service/auth.service';\r\nimport { TechnicianService } from '../../../core/service/technician.service';\r\n\r\n@Component({\r\n templateUrl: './firstYearPayment.component.html',\r\n styleUrls: ['./firstYearPayment.scss']\r\n})\r\nexport class FirstYearPaymentComponent implements OnInit {\r\n\r\n fee;\r\n cartId;\r\n selectedCard: CreditCard;\r\n creditCards = creditCards;\r\n worldpayConfig;\r\n loading = false;\r\n messages = [];\r\n serverErrors = [];\r\n\r\n @ViewChild('worldpayForm') worldpayForm: ElementRef;\r\n\r\n constructor(private renderer: Renderer2,\r\n private service: TechnicianService,\r\n private renewalService: RenewalService,\r\n private auth: AuthService\r\n\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n this.loading = true;\r\n this.service.getApplication(this.auth.user.registrationStatus).subscribe(application => {\r\n this.fee = application.registrationFees.registrationFee;\r\n\r\n this.renewalService.getWordpayConfig().subscribe(config => {\r\n this.worldpayConfig = config;\r\n this.loading = false;\r\n });\r\n\r\n });\r\n\r\n }\r\n\r\n next() {\r\n\r\n this.messages = [];\r\n this.serverErrors = [];\r\n const valid = !!this.selectedCard;\r\n if (!valid) {\r\n this.messages.push('You must select a card type to proceed to payment');\r\n return;\r\n }\r\n this.service.saveFirstYearPayment().subscribe((result) => {\r\n this.cartId = JSON.stringify(result.paymentIdentifier);\r\n setTimeout(() => {\r\n //this.renderer.setProperty(this.worldpayForm.nativeElement, 'value', 'submit');\r\n this.worldpayForm.nativeElement.submit();\r\n }, 100);\r\n }, error => {\r\n this.serverErrors = error.validationErrors;\r\n });\r\n\r\n }\r\n\r\n\r\n}\r\n","
    \r\n\r\n \r\n
    \r\n

    First year registration fee

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

    Fees to be paid\r\n \"Worldpay\r\n\r\n

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

    \r\n First year registration fee: {{fee | currency: 'GBP': 'symbol' :'.2'}}\r\n

    \r\n
    \r\n

    \r\n Now your application has been approved, you must pay the fee of {{fee | currency: 'GBP': 'symbol' :'.2'}} to cover your first year of registration before you\r\n can join the register.\r\n

    \r\n

    \r\n Important: do not practise as a pharmacy technician until you have received your GPhC registration number\r\n and your name appears on the online register.\r\n\r\n It is your responsibility to check this before you practice. Your registration payment receipt is not proof\r\n of your registration. Practising as a pharmacy technician while not on the register is breaking the law and\r\n you can be prosecuted.\r\n

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

    Please select your card type

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

    \r\n We can only accept payments made in pounds sterling (GBP). Payments are processed using worldpay, for more information please\r\n review their privacy policy.\r\n

    \r\n

    \r\n When you make a card payment, you may be redirected to your card provider’s site to enter another password before they authorise\r\n your payment. You can find out more about 3-D Secure authentication from your card provider.\r\n

    \r\n
    \r\n\r\n \r\n \r\n \"{{card.name}}\r\n
    {{card.name}}\r\n
    \r\n
    \r\n\r\n \r\n

    \r\n {{message}}\r\n

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

    \r\n {{ 'Server validation error: ' + error.errors.join(',') }}\r\n

    \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n
    \r\n\r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n Proceed to payment\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n \r\n
    \r\n Saving\r\n
    \r\n
    \r\n Saving\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n
    ","import { Component, forwardRef } from '@angular/core';\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\nimport { TechnicianApplicationStep } from '../../model/TechnicianApplicationStep';\r\nimport { TechnicianApplication } from '../../model/TechnicianApplication';\r\n\r\n@Component({\r\n selector: 'app-guidance',\r\n templateUrl: './guidance.component.html',\r\n styleUrls: ['./guidance.component.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => GuidanceComponent)\r\n } \r\n ]\r\n})\r\nexport class GuidanceComponent extends FormStepComponent {\r\n title = 'Guidance on completing this application';\r\n application : TechnicianApplication;\r\n stepId = TechnicianApplicationStep.Guidance;\r\n fee = '106';\r\n\r\n constructor(private formStepperService: FormStepperService) { \r\n super(formStepperService);\r\n }\r\n\r\n populateForm() {}\r\n\r\n validate() {\r\n this.validity$.next({ valid: true, messages : [] , touched: false });\r\n }\r\n}\r\n","\r\n

    {{ title }}

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

    \r\n Use this application to apply to register as a pharmacy technician after\r\n you have obtained recognised pharmacy technician qualifications and have\r\n completed two years work-based experience in the UK, Isle of Man, or\r\n Channel Islands.\r\n

    \r\n

    \r\n Before continuing any further make sure that you have\r\n read our full application guidance. If you do not follow the full instructions in the guidance your\r\n registration may be delayed.\r\n

    \r\n

    \r\n To apply to register as a pharmacy technician you must submit this\r\n online application and post us supporting identity documents. Your\r\n application is not complete until you have submitted this online\r\n application and we have received your posted supporting documents.\r\n

    \r\n \r\n
    \r\n
    \r\n
    \r\n","import { Component, forwardRef, ElementRef, ViewChild, Renderer2 } from \"@angular/core\";\r\nimport { FormStepComponent } from \"../../../shared/formStepper/formStep.component\";\r\nimport { creditCards, CreditCard } from \"../../../renewal/model/CreditCard\";\r\nimport { RenewalService } from \"../../../core/service/renewal.service\";\r\nimport { FormStepperService } from \"../../../shared/formStepper/formStepper.service\";\r\nimport { TechnicianApplicationStep } from \"../../model/TechnicianApplicationStep\";\r\nimport { TechnicianService } from \"../../../core/service/technician.service\";\r\n\r\n@Component({\r\n selector: \"app-payment-step\",\r\n templateUrl: \"./paymentStep.component.html\",\r\n styleUrls: [\"./paymentStep.scss\"],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => PaymentStepComponent)\r\n }\r\n ]\r\n})\r\nexport class PaymentStepComponent extends FormStepComponent {\r\n title = \"Payment\";\r\n stepId = TechnicianApplicationStep.Payment;\r\n fee;\r\n cartId;\r\n selectedCard: CreditCard;\r\n creditCards = creditCards;\r\n worldpayConfig;\r\n @ViewChild(\"worldpayForm\") worldpayForm: ElementRef;\r\n constructor(\r\n private renewalService: RenewalService,\r\n private renderer: Renderer2,\r\n stepper: FormStepperService,\r\n private technicianService: TechnicianService\r\n ) {\r\n super(stepper);\r\n }\r\n load() {\r\n this.fee = this.application.registrationFees.applicationFee;\r\n // console.log(this.application);\r\n this.renewalService.getWordpayConfig().subscribe(config => {\r\n this.worldpayConfig = config;\r\n this.ready$.next(true);\r\n });\r\n }\r\n\r\n validate() {\r\n const messages = [];\r\n const valid = !!this.selectedCard;\r\n if (!valid) {\r\n messages.push(\"You must select a card type to proceed to payment\");\r\n }\r\n\r\n this.validity$.next({ valid, messages, touched: this.touched });\r\n }\r\n\r\n beforeNext() {\r\n this.technicianService.saveApplicationPayment().subscribe(result => {\r\n this.cartId = JSON.stringify(result.paymentIdentifier);\r\n setTimeout(() => {\r\n // this.renderer.setProperty(this.worldpayForm.nativeElement, 'value',\"submit\");\r\n this.worldpayForm.nativeElement.submit();\r\n }, 100);\r\n });\r\n return false;\r\n }\r\n\r\n populateForm() { }\r\n}\r\n","\r\n

    \r\n Application fee\r\n \"Worldpay

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

    Fees to be paid

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

    \r\n Technician application fee: {{fee | currency: 'GBP': 'symbol' :'.2'}}\r\n

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

    \r\n This fee covers the processing of your application for pharmacy technician, and is non-refundable.\r\n

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

    Please select your card type

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

    \r\n We can only accept payments made in pounds sterling (GBP). Payments are processed using worldpay, for more information please\r\n review their\r\n privacy policy.\r\n

    \r\n

    \r\n When you make a card payment, you may be redirected to your card provider’s site to enter another password before they authorise\r\n your payment. You can find out more about 3-D Secure authentication from your card provider.\r\n

    \r\n
    \r\n\r\n \r\n \r\n \"{{card.name}}\r\n
    {{card.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
    ","import { Component, Input, AfterViewInit, ViewChildren, forwardRef, OnInit, ViewChild } from '@angular/core';\r\nimport { Address } from '../../../account/model/Address';\r\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor, ControlContainer, NgForm } from '@angular/forms';\r\nimport { AccountService } from '../../../account/service/account.service';\r\nimport { CountriesOfUK, getCountryName, HomeNationTypes, UK } from '../../../shared/user-address/userAddress';\r\nimport { Tooltip } from '../../../core/tooltip/Tooltip';\r\n\r\n@Component({\r\n selector: 'app-address-technician',\r\n moduleId: module.id,\r\n templateUrl: './address.component.html',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => AddressComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class AddressComponent implements ControlValueAccessor, OnInit {\r\n address: Address = new Address();\r\n @ViewChildren('focus') vc;\r\n @ViewChild('form') form: NgForm;\r\n @Input() touched = false;\r\n @Input('address') set setAddress(value) {\r\n this.address = value || {};\r\n }\r\n manualInput = false;\r\n @Input('manualInput') set setManualInput(manualInput) {\r\n this.manualInput = manualInput;\r\n }\r\n @Input() lineOneEditable = false;\r\n @Input() set lineOneFocussed(value) {\r\n if (value) {\r\n this.setFocus();\r\n }\r\n }\r\n countries = [];\r\n\r\n UKcountries = CountriesOfUK;\r\n countryChange = false;\r\n currentAddress;\r\n uk_fullForm = UK;\r\n\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n\r\n constructor(private service: AccountService) {}\r\n\r\n ngOnInit() {\r\n this.getCountries();\r\n }\r\n\r\n getCountries() {\r\n if (!this.countries.length) {\r\n this.service.getCountries().subscribe(data => {\r\n this.countries = data;\r\n });\r\n }\r\n }\r\n\r\n setFocus() {\r\n setTimeout(function () {\r\n if (this.vc.first && this.vc.first.nativeElement) {\r\n this.vc.first.nativeElement.focus();\r\n }\r\n }.bind(this), 300);\r\n }\r\n\r\n\r\n propagate() {\r\n if (this.form.valid) {\r\n this.propagateChange(this.address);\r\n }\r\n this.checkIfAddressWasChanged(this.address);\r\n }\r\n\r\n get valid() {\r\n return this.form && this.form.valid;\r\n }\r\n\r\n writeValue(value: any) {\r\n if (value) {\r\n \r\n const emptyObj = {};\r\n this.currentAddress = Object.assign(emptyObj, this.address);\r\n\r\n this.address = value;\r\n }\r\n }\r\n propagateChange = (model: any) => { };\r\n registerOnChange(fn) {\r\n this.propagateChange = fn;\r\n }\r\n registerOnTouched() { }\r\n\r\n onCountryChange() {\r\n if(this.address?.country === this.uk_fullForm) {\r\n this.address.homeNation = null;\r\n } else {\r\n this.address.homeNation = HomeNationTypes.Other;\r\n }\r\n this.address.latitude = null;\r\n this.address.longitude = null;\r\n }\r\n\r\n residentCountry() {\r\n return getCountryName(this.address.homeNation);\r\n }\r\n\r\n checkIfAddressWasChanged(updateAddress) {\r\n if(this.currentAddress !==undefined && this.currentAddress) {\r\n if(JSON.stringify(this.currentAddress) !== JSON.stringify(updateAddress) ) {\r\n this.erasePreviousDetails();\r\n }\r\n }\r\n }\r\n\r\n erasePreviousDetails() {\r\n if(this.address?.countryCode) {\r\n this.address.countryCode = null;\r\n }\r\n if(this.address?.id) {\r\n this.address.id = null;\r\n }\r\n this.address.latitude = null;\r\n this.address.longitude = null;\r\n }\r\n}\r\n","
    \r\n
    \r\n

    Enter address manually

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

    \r\n Line 1 is mandatory\r\n

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

    \r\n {{line1?.errors?.inputValidator}}\r\n

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

    \r\n {{line2?.errors?.inputValidator}}\r\n

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

    \r\n {{line3?.errors?.inputValidator}}\r\n

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

    \r\n {{town?.errors?.inputValidator}}\r\n

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

    \r\n Town is mandatory\r\n

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

    \r\n {{county?.errors?.inputValidator}}\r\n

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

    \r\n Postcode is mandatory\r\n

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

    \r\n {{postcode?.errors?.inputValidator}}\r\n

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

    \r\n Country is mandatory\r\n

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

    \r\n {{country?.errors?.inputValidator}}\r\n

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

    We will use this information in analysis of the register.

    \r\n

    If you are resident of Northern Ireland, Isle of Man or Channel Islands, please select option 'Other'

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

    \r\n Resident country is mandatory\r\n

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

    \r\n Line 1 is mandatory\r\n

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

    \r\n {{line1?.errors?.inputValidator}}\r\n

    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n","import { Component, Input, OnInit, forwardRef, ViewChild } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\r\nimport { Address } from '../../../account/model/Address';\r\nimport { AddressComponent } from './address.component';\r\n\r\n@Component({\r\n selector: 'app-address-edit-technician',\r\n moduleId: module.id,\r\n templateUrl: './addressEdit.component.html',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => AddressEditComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class AddressEditComponent {\r\n address: Address;\r\n @Input() manualInput = false;\r\n editing = false;\r\n lineOneFocussed = false;\r\n @Input() touched = false;\r\n @ViewChild('addressedit') addressedit: AddressComponent;\r\n\r\n reselect() {\r\n this.address = undefined;\r\n if (this.addressedit.valid) {\r\n this.propagateChange(this.address);\r\n }\r\n this.manualInput = false;\r\n this.editing = true;\r\n this.lineOneFocussed = false;\r\n }\r\n\r\n enableManualInput() {\r\n this.manualInput = true;\r\n this.lineOneFocussed = true;\r\n }\r\n\r\n writeValue(value: any) {\r\n if (value) {\r\n this.address = value;\r\n }\r\n }\r\n propagateChange = (model: any) => { };\r\n registerOnChange(fn) {\r\n this.propagateChange = fn;\r\n }\r\n registerOnTouched() { }\r\n\r\n onSelect(address) {\r\n this.address = address;\r\n this.lineOneFocussed = true;\r\n if (this.addressedit.valid) {\r\n this.propagateChange(address);\r\n }\r\n }\r\n\r\n update() {\r\n\r\n }\r\n\r\n}\r\n","\r\n \r\n \r\n\r\n\r\n\r\n \r\n

    \r\n \r\n

    \r\n

    \r\n \r\n

    \r\n
    ","import { Component, Input, OnInit, ViewChildren, ElementRef, AfterViewInit} from '@angular/core';\r\nimport { Address } from '../../../account/model/Address';\r\nimport { FormControl } from '@angular/forms';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { AccountService } from '../../../account/service/account.service';\r\nimport { AuthService } from '../../../core/service/auth.service';\r\nimport { LogService } from '../../../core/service/log.service';\r\nimport { inputValidator, UK } from '../../../shared/user-address/userAddress';\r\n\r\n@Component({\r\n selector: 'app-address-editable-technician',\r\n moduleId: module.id,\r\n templateUrl: './addressEditable.component.html',\r\n styleUrls: ['./addressEditable.scss']\r\n})\r\nexport class AddressEditableComponent {\r\n @Input() address: Address;\r\n selectedAddress = false;\r\n manualInput = false;\r\n editingAddress: Address;\r\n countries = [];\r\n @Input() creating = false;\r\n editing = false;\r\n saving = false;\r\n searching = false;\r\n confirmed = false;\r\n townChanged = false;\r\n\r\n constructor(private service: AccountService, private log: LogService, private auth: AuthService) { }\r\n\r\n\r\n cancel() {\r\n if (this.selectedAddress) {\r\n this.selectedAddress = undefined;\r\n } else {\r\n this.editing = false;\r\n }\r\n }\r\n\r\n get valid() {\r\n if(!this.editingAddress) {\r\n return;\r\n }\r\n let isValid = !!(this.editingAddress) &&\r\n (!!(this.editingAddress.line1) && inputValidator(this.editingAddress.line1)) &&\r\n (!!(this.editingAddress.town) && inputValidator(this.editingAddress.town)) &&\r\n !!(this.editingAddress.country);\r\n\r\n if(this.editingAddress.line2) {\r\n isValid = isValid && inputValidator(this.editingAddress.line2);\r\n }\r\n\r\n if(this.editingAddress.line3) {\r\n isValid = isValid && inputValidator(this.editingAddress.line3);\r\n }\r\n\r\n if(this.editingAddress.postcode) {\r\n isValid = isValid && inputValidator(this.editingAddress.postcode);\r\n }\r\n\r\n if(this.editingAddress.county) {\r\n isValid = isValid && inputValidator(this.editingAddress.county);\r\n }\r\n\r\n if((this.editingAddress?.country !== UK) ||\r\n (this.editingAddress?.country === UK &&\r\n this.editingAddress?.homeNation &&\r\n this.editingAddress?.latitude &&\r\n this.editingAddress?.longitude) ) {\r\n return isValid;\r\n }\r\n return isValid && this.editingAddress.homeNation;\r\n }\r\n\r\n enableManualInput() {\r\n this.manualInput = true;\r\n this.selectedAddress = false;\r\n this.editingAddress = new Address();\r\n }\r\n\r\n addressSelected(address) {\r\n this.selectedAddress = true;\r\n this.manualInput = false;\r\n this.editingAddress = address;\r\n }\r\n\r\n onEdit() {\r\n this.editing = true;\r\n }\r\n\r\n save() {\r\n if (this.selectedAddress) {\r\n this.saving = true;\r\n this.service.saveAddress(this.editingAddress)\r\n .subscribe(result => {\r\n this.townChanged = this.editingAddress.town !== this.address.town;\r\n this.address = this.editingAddress;\r\n this.auth.updateCachedAddress(this.address);\r\n this.selectedAddress = false;\r\n this.manualInput = false;\r\n this.editing = false;\r\n this.saving = false;\r\n }, error => {\r\n console.log(error);\r\n });\r\n\r\n }\r\n }\r\n\r\n}\r\n","\r\n Address\r\n
    \r\n
    \r\n
    Your entry on the public register will be updated to show the changes you have made to your postal town. The update may take up to 24 hours to show.
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    ","import { Component, Input, Output, EventEmitter, OnInit, ViewChildren } from '@angular/core';\r\nimport { Address } from '../../../account/model/Address';\r\nimport { Validators, FormGroup, FormControl } from '@angular/forms';\r\nimport { AccountService } from '../../../account/service/account.service';\r\nimport { AuthService } from '../../../core/service/auth.service';\r\nimport { LogService } from '../../../core/service/log.service';\r\nimport { debounceTime } from 'rxjs/operators';\r\n\r\ninterface AddressSearch {\r\n countryCode?: string;\r\n postcode?: string;\r\n results?: any;\r\n}\r\n\r\n@Component({\r\n selector: 'app-address-search-technician',\r\n moduleId: module.id,\r\n templateUrl: './addressSearch.component.html',\r\n styleUrls: ['./addressSearch.scss']\r\n})\r\nexport class AddressSearchComponent implements OnInit {\r\n\r\n @ViewChildren('focus') vc;\r\n countries = [];\r\n search: AddressSearch = {\r\n countryCode: 'GB'\r\n };\r\n\r\n @Input() set editing(editing) {\r\n if (this.postcode) {\r\n this.postcode.markAsUntouched();\r\n }\r\n\r\n if (editing) {\r\n this.setFocus();\r\n }\r\n }\r\n @Output() selected = new EventEmitter
    ();\r\n @Output() manualInput = new EventEmitter();\r\n\r\n searching = false;\r\n addressForm: FormGroup;\r\n\r\n isUK = true;\r\n\r\n constructor(private service: AccountService, private log: LogService, private auth: AuthService) { }\r\n\r\n get postcode() {\r\n return this.addressForm && this.addressForm.get('postcode');\r\n }\r\n get countryCode() {\r\n return this.addressForm && this.addressForm.get('countryCode');\r\n }\r\n\r\n ngOnInit() {\r\n /* tslint:disable: max-line-length*/\r\n const ukPostcodePattern = /([Gg][Ii][Rr] 0[Aa]{2})|((([A-Za-z][0-9]{1,2})|(([A-Za-z][A-Ha-hJ-Yj-y][0-9]{1,2})|(([A-Za-z][0-9][A-Za-z])|([A-Za-z][A-Ha-hJ-Yj-y][0-9]?[A-Za-z]))))\\s?[0-9][A-Za-z]{2})/g;\r\n\r\n this.addressForm = new FormGroup(\r\n {\r\n countryCode: new FormControl(this.search.countryCode),\r\n postcode: new FormControl(this.search.postcode, [Validators.required, Validators.pattern(ukPostcodePattern)])\r\n }\r\n );\r\n\r\n // debounce keystroke events\r\n this.postcode.valueChanges\r\n .pipe(debounceTime(1000))\r\n .subscribe(newValue => this.searchAddress());\r\n\r\n this.countryCode.valueChanges\r\n .subscribe(newValue => {\r\n \r\n if (newValue === 'GB') {\r\n this.addressForm.controls['postcode'].setValidators([Validators.required, Validators.pattern(ukPostcodePattern)]);\r\n } else {\r\n this.addressForm.controls['postcode'].setValidators([Validators.required]);\r\n }\r\n this.addressForm.controls['postcode'].setValue('');\r\n this.addressForm.controls['postcode'].markAsUntouched();\r\n });\r\n\r\n this.getCountries();\r\n\r\n }\r\n\r\n setFocus() {\r\n setTimeout(function () {\r\n if (this.vc.first) {\r\n this.vc.first.nativeElement.focus();\r\n }\r\n }.bind(this), 100);\r\n }\r\n\r\n getCountries() {\r\n if (!this.countries.length) {\r\n this.service.getCountries().subscribe(data => {\r\n this.countries = data;\r\n });\r\n }\r\n }\r\n\r\n enableManualInput() {\r\n this.manualInput.emit();\r\n }\r\n\r\n searchAddress() {\r\n this.postcode.markAsTouched();\r\n if (this.countryCode.value && this.postcode.valid) {\r\n this.searching = true;\r\n this.service.searchAddress(this.countryCode.value, this.postcode.value).subscribe(results => {\r\n this.search.results = results.filter(result => result.type === 'Address');\r\n this.searching = false;\r\n });\r\n }\r\n }\r\n\r\n select(id) {\r\n this.service.getAddress(id).subscribe(address => {\r\n this.selected.emit(address);\r\n });\r\n }\r\n}\r\n","
    \r\n\r\n \r\n
    \r\n \r\n \r\n\r\n \r\n

    \r\n Please check that you have entered your full postcode correctly\r\n

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

    \r\n You must provide your postcode\r\n

    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    Searching for addresses...
    \r\n
    \r\n
    \r\n \r\n \r\n
      \r\n
    • \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 { OnInit, Component, forwardRef, ViewChild, AfterViewInit } from '@angular/core';\r\nimport { Applicant } from '../../../account/model/Applicant';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\nimport { ContactEditComponent } from '../../../account/contactEdit.component';\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\nimport { Tooltip } from '../../../core/tooltip/Tooltip';\r\nimport { TechnicianApplicationStep } from '../../model/TechnicianApplicationStep';\r\nimport { inputValidator, UK } from '../../../shared/user-address/userAddress';\r\n\r\n@Component({\r\n selector: 'app-personal-details-step',\r\n templateUrl: './personalDetailsStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => PersonalDetailsStepComponent)\r\n }\r\n ]\r\n}) export class PersonalDetailsStepComponent extends FormStepComponent implements OnInit, AfterViewInit {\r\n\r\n showDetailsHelp = false;\r\n showContactHelp = false;\r\n applicant: Applicant;\r\n contactValid;\r\n hasAddress;\r\n hasTitle;\r\n hasNationality;\r\n selection;\r\n title = 'Personal details';\r\n stepId = TechnicianApplicationStep.PersonalDetails;\r\n viewReady = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n @ViewChild('contact') contact: ContactEditComponent;\r\n ngOnInit() {\r\n this.applicant = this.application.trainee;\r\n }\r\n\r\n load() {\r\n if (this.viewReady) {\r\n this.ready$.next(true);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.ready$.next(true);\r\n this.viewReady = true;\r\n });\r\n }\r\n\r\n update() {\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n validate() {\r\n this.hasTitle = !!this.applicant.title && !!this.applicant.title.name && !!this.applicant.title.name.trim().length;\r\n this.hasAddress = !!this.applicant.address &&\r\n !!this.applicant.address.line1 && !!this.applicant.address.line1.trim().length && inputValidator(this.applicant.address.line1) &&\r\n !!this.applicant.address.town && !!this.applicant.address.town.trim().length && inputValidator(this.applicant.address.town) &&\r\n !!this.applicant.address.country && !!this.applicant.address.country.trim().length;\r\n\r\n if(this.applicant?.address?.line2) {\r\n this.hasAddress = this.hasAddress && inputValidator(this.applicant.address.line2);\r\n }\r\n \r\n if(this.applicant?.address?.line3) {\r\n this.hasAddress = this.hasAddress && inputValidator(this.applicant.address.line3);\r\n }\r\n \r\n if(this.applicant?.address?.postcode) {\r\n this.hasAddress = this.hasAddress && inputValidator(this.applicant.address.postcode);\r\n }\r\n \r\n if(this.applicant?.address?.county) {\r\n this.hasAddress = this.hasAddress && inputValidator(this.applicant.address.county);\r\n }\r\n\r\n if(this.applicant.address && this.applicant.address.country && \r\n this.applicant.address.country === UK &&\r\n !this.applicant.address.homeNation) {\r\n this.hasAddress = this.hasAddress && !!this.applicant.address.homeNation;\r\n } \r\n\r\n const messages = [];\r\n\r\n if (!this.hasTitle) {\r\n messages.push('You haven\\'t entered a title');\r\n }\r\n\r\n if (this.contact) {\r\n this.contactValid = this.contact.valid;\r\n if (!this.contactValid) {\r\n messages.push('Please check that the UK mobile phone number you have entered is correct');\r\n }\r\n }\r\n\r\n this.applicant.equalityDiversity.nationality = parseInt((this.applicant.equalityDiversity.nationality), 10);\r\n this.hasNationality = !!this.applicant.equalityDiversity.nationality;\r\n if (!this.hasNationality) {\r\n messages.push('You haven\\'t selected your nationality');\r\n }\r\n\r\n if (!this.hasAddress) {\r\n if (!this.applicant.address) {\r\n messages.push('You haven\\'t provided your address');\r\n } else if(this.applicant.address.country === UK) {\r\n messages.push('Your address must have a line 1, town, country and residence details');\r\n } else {\r\n messages.push('Your address must have a line 1, town and country');\r\n }\r\n }\r\n const valid = this.hasTitle &&\r\n this.hasAddress &&\r\n this.contactValid &&\r\n this.hasNationality;\r\n\r\n this.validity$.next({\r\n valid,\r\n messages, touched: this.touched\r\n });\r\n }\r\n\r\n populateForm() { }\r\n\r\n}\r\n","\r\n
    \r\n

    \r\n Personal details\r\n

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

    \r\n Tell us your personal details so that we can identify you and verify that you meet the criteria for\r\n registration as a\r\n pharmacy technician.\r\n

    \r\n

    \r\n If your name as shown below is different from your name as stated on your identity documents, make sure that\r\n you\r\n have read the guidance about the supporting documents you will need to provide.\r\n

    \r\n

    \r\n Your first name, middle name and last name will appear on the public register as they are shown below, as well as the \r\n postal town you provide in your address. These are the only details about your identity which will appear on \r\n the public register.\r\n

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

    \r\n
    \r\n Contact details\r\n
    \r\n \r\n

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

    \r\n We will use your email address and the phone number(s) you give to contact you about your application if\r\n necessary.\r\n

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

    \r\n Enter a mobile number 8 - 11 numbers long, which begins with 07. We may use this number to contact you by\r\n SMS in future,\r\n if you agree to this in your communication preferences. You can manage these in the 'account' tab.\r\n

    \r\n

    \r\n We will use your email address and the phone number(s) you give to contact you about your application if\r\n necessary.\r\n

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

    Home address

    \r\n
    \r\n

    Please enter your home address below. We may use this address to contact you about your application

    \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, forwardRef, AfterViewInit, OnInit, ViewChild } from '@angular/core';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\nimport { TechnicianApplicationStep } from '../../model/TechnicianApplicationStep';\r\nimport { PreviousRegistrationType } from '../../model/PreviousRegistrationType';\r\nimport { ApplicationProcessType } from '../../model/ApplicationProcessType';\r\nimport { PreviousRegs } from '../../model/PreviousRegs';\r\nimport { RegistrantApplicationType } from '../../model/RegApplicationType';\r\nimport { PreRegistrationApplicationType } from '../../model/PreRegApplicationType';\r\nimport { UtcDatePickerComponent } from '../../../shared/utcDatePicker.component';\r\n\r\n@Component({\r\n selector: 'app-previous-applications-and-registrations-step',\r\n templateUrl: './previousApplicationsAndRegistrations.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => PreviousApplicationsAndRegistrationsComponent)\r\n }\r\n ],\r\n styleUrls: ['./previousApplicationsAndRegistrations.component.scss']\r\n})\r\nexport class PreviousApplicationsAndRegistrationsComponent extends FormStepComponent implements AfterViewInit, OnInit {\r\n stepId = TechnicianApplicationStep.PreviousApplicationsAndRegistrations;\r\n title = 'Previous registrations';\r\n viewReady = false;\r\n PreviousRegistrationType = PreviousRegistrationType;\r\n @ViewChild('firstDatePicker') firstDatePicker: UtcDatePickerComponent;\r\n @ViewChild('secondDatePicker') secondDatePicker: UtcDatePickerComponent;\r\n\r\n hasReducedWorkExperience: boolean;\r\n\r\n constructor(service: FormStepperService) {\r\n super(service);\r\n }\r\n\r\n ngOnInit() {\r\n this.populateForm();\r\n }\r\n\r\n beforePrev() {\r\n this.dirty = false;\r\n return true;\r\n }\r\n\r\n load() {\r\n if (this.viewReady) {\r\n this.ready$.next(true);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.ready$.next(true);\r\n this.viewReady = true;\r\n });\r\n }\r\n\r\n\r\n update() {\r\n const { undertaken: hasUndertaken } = this.application.activeForm.previousApplicationsAndRegistrations.\r\n applications.preRegistrationTraining;\r\n const { applied: hasApplied } = this.application.activeForm.previousApplicationsAndRegistrations.\r\n applications.registration;\r\n if (!hasUndertaken) {\r\n this.secondDatePicker.setDateToUndefined();\r\n }\r\n if (!hasApplied) {\r\n this.firstDatePicker.setDateToUndefined();\r\n }\r\n\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n nullifyDetail(prevAppAndRegDetail: PreviousRegs |\r\n RegistrantApplicationType | PreRegistrationApplicationType, confirmed: string) {\r\n for (const prop in prevAppAndRegDetail) {\r\n if (prop !== confirmed && prop !== 'type') {\r\n prevAppAndRegDetail[prop] = null;\r\n }\r\n }\r\n }\r\n\r\n isAnswerValid(answer) {\r\n return (answer || !answer) && (answer !== null) && (answer !== undefined);\r\n }\r\n\r\n get isFirstQDetailValid() {\r\n const registration = this.application.activeForm.previousApplicationsAndRegistrations.applications.registration;\r\n const { type: hasType} = registration;\r\n return !!hasType;\r\n }\r\n\r\n get isSecondQDetailValid() {\r\n return true;\r\n }\r\n\r\n get isThirdQDetailValid() {\r\n const firstRegistration = this.application.activeForm.previousApplicationsAndRegistrations.ukRegistration;\r\n const { registrationNumber: hasRegNumber, nameOfBody: hasNameOfBody, wasCertificateRequested: wasCertReq } = firstRegistration;\r\n return !!hasNameOfBody;\r\n }\r\n\r\n get isThirdConfirmed() {\r\n const firstRegistration = this.application.activeForm.previousApplicationsAndRegistrations.ukRegistration;\r\n const { wasCertificateRequested: wasCertReq } = firstRegistration;\r\n return !!wasCertReq;\r\n }\r\n\r\n\r\n get isFourthQNameOfBodyEntered() {\r\n const secondRegistration = this.application.activeForm.previousApplicationsAndRegistrations.outsideUKRegistration;\r\n const { registrationNumber: hasRegNumber, nameOfBody: hasNameOfBody, wasCertificateRequested: wasCertReq } = secondRegistration;\r\n return !!hasNameOfBody ;\r\n }\r\n\r\n get isFourthQConfirmed() {\r\n const secondRegistration = this.application.activeForm.previousApplicationsAndRegistrations.outsideUKRegistration;\r\n const { registrationNumber: hasRegNumber, nameOfBody: hasNameOfBody, wasCertificateRequested: wasCertReq } = secondRegistration;\r\n return !!wasCertReq;\r\n }\r\n\r\n\r\n\r\n validate() {\r\n const messages = [];\r\n // this is just validating that there is an answer, not what the answer is\r\n // console.log(this.application);\r\n\r\n const { applied: hasApplied } = this.application.activeForm.previousApplicationsAndRegistrations.applications.registration;\r\n const { undertaken: hasUndertaken } = this.application.activeForm.previousApplicationsAndRegistrations.applications.\r\n preRegistrationTraining;\r\n const { registered: hasRegisteredInUk } = this.application.activeForm.previousApplicationsAndRegistrations.ukRegistration;\r\n const { registered: hasRegisteredOutsideUK } = this.application.activeForm.previousApplicationsAndRegistrations.outsideUKRegistration;\r\n\r\n const firstQValid = this.isAnswerValid(hasApplied);\r\n const secondQValid = this.isAnswerValid(hasUndertaken);\r\n const thirdQValid = this.isAnswerValid(hasRegisteredInUk);\r\n const fourthQValid = this.isAnswerValid(hasRegisteredOutsideUK);\r\n\r\n const invalid = !firstQValid || !secondQValid || !thirdQValid || !fourthQValid;\r\n\r\n\r\n if (invalid) {\r\n messages.push(`These fields are mandatory`);\r\n }\r\n\r\n\r\n if (firstQValid) {\r\n\r\n if (hasApplied && !this.isFirstQDetailValid) {\r\n messages.push(`Please indicate what type of application you have previously applied for.`);\r\n }\r\n\r\n if (!hasApplied) {\r\n this.nullifyDetail(this.application.activeForm.\r\n previousApplicationsAndRegistrations.\r\n applications.registration, 'applied');\r\n }\r\n }\r\n\r\n\r\n if (secondQValid) {\r\n if (hasUndertaken && !this.isSecondQDetailValid) {\r\n messages.push(`Please put in the required detail for the second question`);\r\n }\r\n\r\n if (hasUndertaken && this.application.activeForm.\r\n previousApplicationsAndRegistrations.\r\n applications.preRegistrationTraining.startDate === '') {\r\n this.application.activeForm.\r\n previousApplicationsAndRegistrations.\r\n applications.preRegistrationTraining.startDate = null;\r\n }\r\n\r\n if (!hasUndertaken) {\r\n this.nullifyDetail(this.application.activeForm.\r\n previousApplicationsAndRegistrations.\r\n applications.preRegistrationTraining, 'undertaken');\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n if (thirdQValid) {\r\n if (hasRegisteredInUk && !this.isThirdQDetailValid) {\r\n messages.push(`Please provide the required details for the overseas health regulatory body`);\r\n }\r\n\r\n if (hasRegisteredInUk && !this.isThirdConfirmed) {\r\n messages.push(`Please confirm that you have, or will request a certificate of current professional status from your regulatory body`);\r\n }\r\n\r\n if (!hasRegisteredInUk) {\r\n this.nullifyDetail(this.application.activeForm.\r\n previousApplicationsAndRegistrations.ukRegistration, 'registered');\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n if (fourthQValid) {\r\n if (hasRegisteredOutsideUK && !this.isFourthQNameOfBodyEntered) {\r\n messages.push(`Please provide the required details for the overseas health regulatory body`);\r\n }\r\n\r\n if (hasRegisteredOutsideUK && !this.isFourthQConfirmed) {\r\n messages.push(`Please confirm that you have, or will request a certificate of current professional status from your regulatory body`);\r\n }\r\n\r\n\r\n if (!hasRegisteredOutsideUK) {\r\n this.nullifyDetail(this.application.activeForm.previousApplicationsAndRegistrations.outsideUKRegistration, 'registered');\r\n }\r\n }\r\n this.validity$.next({ valid: !messages.length, messages, touched: this.touched });\r\n }\r\n\r\n populateForm() {\r\n this.hasReducedWorkExperience = this.application.activeForm.applicationType === ApplicationProcessType.LessThanTwoYears;\r\n }\r\n\r\n\r\n}\r\n\r\n","\r\n
    \r\n

    \r\n Previous applications and registrations with other bodies\r\n

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

    \r\n Tell us about any:\r\n

    \r\n

    \r\n

  • previous pharmacy pre-registration training applications
  • \r\n
  • current or previous registrations with other healthcare bodies
  • \r\n

    \r\n

    so that we can verify that you are fit to practise as a pharmacy professional. We may contact the\r\n regulatory body\r\n for more information.\r\n

    \r\n

    \r\n Important: If you have completed a reduced work experience requirement, you must\r\n fill in this section\r\n

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

    Previous training applications

    \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n Yes\r\n \r\n \r\n No\r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Details

    \r\n
    \r\n \r\n \r\n Pharmacist\r\n \r\n Pharmacy Technician\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    15\">\r\n \r\n \r\n
    \r\n 15\">\r\n
    \r\n

    \r\n Registration number cannot be greater than 15 characters.\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n\r\n \r\n \r\n Yes\r\n \r\n \r\n No\r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Details

    \r\n
    \r\n
    \r\n
    15\">\r\n \r\n \r\n
    \r\n 15\">\r\n
    \r\n

    \r\n Pre-registration number cannot be greater than 15 characters.\r\n

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

    Registration with other bodies

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

    \r\n Are you currently or have you previously been registered with any UK statutory health regulatory body\r\n (any member\r\n body of the Professional Standards Authority) ?\r\n

    \r\n \r\n \r\n Yes\r\n \r\n \r\n No\r\n \r\n \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n

    Details

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    15\">\r\n \r\n \r\n \r\n
    \r\n 15\">\r\n
    \r\n

    \r\n Registration number cannot be greater than 15 characters.\r\n

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n I confirm that I have or will arrange for a certificate of current professional status to be\r\n sent from this organisation to the GPhC\r\n \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n

    \r\n Are you currently or have you previously been registered with a health regulatory body outside the UK\r\n ?\r\n

    \r\n \r\n \r\n Yes\r\n \r\n \r\n No\r\n \r\n \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n

    Details

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    15\">\r\n \r\n \r\n
    \r\n 15\">\r\n
    \r\n

    \r\n Registration number cannot be greater than 15 characters.\r\n

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n \r\n I confirm that I have or will arrange for a certificate of current professional status to be\r\n sent from this organisation to the GPhC\r\n \r\n
    \r\n\r\n
    \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 { Input, Component, OnInit, EventEmitter, Output, ViewChild } from '@angular/core';\r\nimport { Applicant } from '../../../account/model/Applicant';\r\nimport { TechnicianApplication } from '../../model/TechnicianApplication';\r\nimport { ApplicationProcessType } from '../../model/ApplicationProcessType';\r\nimport { TechnicianApplicationStep } from '../../model/TechnicianApplicationStep';\r\nimport { WorkExperience } from '../../model/WorkExperience';\r\nimport { AttachmentType } from '../../../shared/model/AttachmentType';\r\nimport { TechnicianService } from '../../../core/service/technician.service';\r\nimport { SupportingDocumentsStepComponent } from '../supportingDocuments/supportingDocumentsStep.component';\r\nimport { FileUpload } from '../../../shared/model/FileUpload';\r\n\r\n@Component({\r\n selector: 'app-technician-application-review',\r\n templateUrl: './technicianApplicationReview.component.html',\r\n styleUrls: ['./technicianApplicationReview.scss']\r\n}) export class TechnicianApplicationReviewComponent implements OnInit {\r\n\r\n applicant: Applicant;\r\n @Input() application: TechnicianApplication;\r\n @Input() readonly = false;\r\n @Input() showEdi = true;\r\n @Input() showOverallDeclaration = true;\r\n @Input() formId;\r\n @Input() pastApplication = false;\r\n @Input() showContactDetails = true;\r\n @Input() isCountersignerView = false;\r\n workExperiences: Array;\r\n ApplicationType = ApplicationProcessType;\r\n TechnicianApplicationStep = TechnicianApplicationStep;\r\n AttachmentType = AttachmentType;\r\n attachments: Array = [];\r\n downloading = false;\r\n \r\n constructor(private service: TechnicianService) { }\r\n\r\n @Output() navigate = new EventEmitter();\r\n ngOnInit() {\r\n this.applicant = this.application.trainee;\r\n this.workExperiences = this.application.activeForm.workExperiences;\r\n this.attachments = this.application.forms[0].attachments;\r\n }\r\n\r\n nth(i) {\r\n return i === 0 ? 'first' : (i === 1 ? 'second' : (i === 2 ? 'third' : 'fourth'));\r\n }\r\n\r\n goToStep(stepId) {\r\n this.navigate.emit(stepId);\r\n }\r\n\r\n download(file) {\r\n this.downloading = true;\r\n this.service.getSupportingDocuments(file).subscribe(blob => {\r\n const url = URL.createObjectURL(blob);\r\n const element = document.createElement('a');\r\n element.href = url;\r\n element.setAttribute('download', file.filename);\r\n document.body.appendChild(element); \r\n element.click();\r\n \r\n });\r\n }\r\n}\r\n","
    \r\n
    \r\n

    \r\n
    Personal details
    \r\n \r\n \r\n

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

    \r\n
    Contact details
    \r\n \r\n \r\n

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

    \r\n
    Home address
    \r\n \r\n

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

    \r\n
    Application type
    \r\n \r\n \r\n

    \r\n\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n recognised UK knowledge and competency based qualifications, a non-UK pharmacy qualification and a\r\n period of relevant work experience.\r\n
    \r\n
    \r\n recognised UK knowledge and competency based qualifications and a two-year period of relevant work\r\n experience.\r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n

    \r\n
    Education details
    \r\n \r\n \r\n

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

    \r\n
    Your {{nth(i)}} placement
    \r\n \r\n \r\n

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

    \r\n
    Previous registrations
    \r\n \r\n \r\n

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

    \r\n
    Equality and diversity
    \r\n \r\n \r\n

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

    \r\n
    Declaration of fitness to practise
    \r\n \r\n

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

    \r\n
    Overall declaration
    \r\n \r\n

    \r\n
    \r\n
    \r\n I have read and understand the overall declaration\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n

    \r\n
    Supporting documents
    \r\n \r\n

    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    {{file.filename}}
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n\r\n\r\n
    ","import { Input, Component, forwardRef, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport { Applicant } from '../../../account/model/Applicant';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\n\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\n\r\nimport { StudentService } from '../../../core/service/student.service';\r\nimport { TechnicianApplicationStep } from '../../model/TechnicianApplicationStep';\r\n\r\n\r\n@Component({\r\n selector: 'app-technician-review-step',\r\n templateUrl: './technicianReviewStep.component.html',\r\n styleUrls: ['./technicianReviewStep.scss'],\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => TechnicianReviewStepComponent)\r\n }\r\n ]\r\n}) export class TechnicianReviewStepComponent extends FormStepComponent implements OnInit {\r\n title;\r\n @Input() stepId = TechnicianApplicationStep.Review;\r\n applicant: Applicant;\r\n @Input() readonly = false;\r\n\r\n constructor(service: FormStepperService, private studentService: StudentService) {\r\n super(service);\r\n }\r\n\r\n @Output() navigate = new EventEmitter();\r\n\r\n ngOnInit() {\r\n this.applicant = this.application.trainee;\r\n this.title = this.readonly ? 'Final review' : 'Review';\r\n }\r\n\r\n validate() {\r\n this.validity$.next({ valid: true, messages: [], touched: this.touched });\r\n }\r\n\r\n goToStep(stepId) {\r\n this.navigate.emit(stepId);\r\n }\r\n\r\n\r\n load() {\r\n this.ready$.next(true);\r\n }\r\n\r\n populateForm() { }\r\n\r\n}\r\n","\r\n

    Review your application

    \r\n\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, Input } from '@angular/core';\r\nimport { TechnicianApplicationStep } from '../../model/TechnicianApplicationStep';\r\n\r\nimport { TechnicianService } from '../../../core/service/technician.service';\r\nimport { TechnicianQualificationType } from '../../model/TechnicianQualificationType';\r\nimport { QualificationType } from '../../model/QualificationType';\r\nimport { EducationDetails } from '../../model/EducationDetails';\r\nimport { TechnicianApplication } from '../../model/TechnicianApplication';\r\n\r\n@Component({\r\n selector: 'app-education-details-step-summary',\r\n templateUrl: './educationDetailsSummray.component.html',\r\n styleUrls: ['./educationDetailsSummary.component.scss']\r\n})\r\nexport class EducationDetailsSummaryComponent implements OnInit {\r\n knowledgeQualifications: Array = [];\r\n competencyQualifications: Array = [];\r\n combinedQualifications: Array = [];\r\n @Input() readonly = false;\r\n @Input() application: TechnicianApplication;\r\n\r\n stepId = TechnicianApplicationStep.Education;\r\n title = 'Education details';\r\n viewReady = false;\r\n knowledgeDateNotSet = false;\r\n competencyDatesNotSet = false;\r\n combinedQualificationDateNotSet = false;\r\n educationDetails;\r\n isCombinedQualification : boolean;\r\n\r\n\r\n constructor(private technicianService: TechnicianService) {\r\n // super(service);\r\n }\r\n\r\n ngOnInit() {\r\n // console.log({application: this.application});\r\n this.educationDetails = (this.application).activeForm.educationDetails;\r\n this.isCombinedQualification = this.application.activeForm.educationDetails.combined.qualificationId !== null ? true : false;\r\n this.loadKnowledgeQualifications();\r\n this.loadCompetencyQualifications();\r\n this.loadCombinedQualifications();\r\n }\r\n\r\n loadKnowledgeQualifications() {\r\n this.technicianService.getQualificationList(TechnicianQualificationType.Knowledge).subscribe(qualifications => {\r\n this.knowledgeQualifications = qualifications;\r\n });\r\n }\r\n\r\n loadCompetencyQualifications() {\r\n this.technicianService.getQualificationList(TechnicianQualificationType.Competency).subscribe(qualifications => {\r\n this.competencyQualifications = qualifications;\r\n });\r\n }\r\n\r\n loadCombinedQualifications() {\r\n this.technicianService.getQualificationList(TechnicianQualificationType.Combined).subscribe(qualifications => {\r\n this.combinedQualifications = qualifications;\r\n });\r\n }\r\n\r\n\r\n\r\n\r\n populateForm() { }\r\n}\r\n\r\n","
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    \r\n Knowledge \r\n

    \r\n
    \r\n \r\n
    \r\n \r\n \r\n {{ knowledgeQualification.courseName }}\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Competency

    \r\n
    \r\n \r\n
    \r\n \r\n \r\n {{ competencyQualification.courseName }}\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    \r\n Combined Qualification \r\n

    \r\n
    \r\n \r\n
    \r\n \r\n \r\n {{ combinedQualification.courseName }}\r\n \r\n \r\n
    \r\n
    \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, forwardRef, AfterViewInit, OnInit, ViewChild, Input } from '@angular/core';\r\n\r\n\r\nimport { TechnicianApplicationStep } from '../../model/TechnicianApplicationStep';\r\nimport { PreviousRegistrationType } from '../../model/PreviousRegistrationType';\r\nimport { UtcDatePickerComponent } from '../../../shared/utcDatePicker.component';\r\nimport { TechnicianApplication } from '../../model/TechnicianApplication';\r\n\r\n@Component({\r\n selector: 'app-previous-applications-and-registrations-summary',\r\n templateUrl: './previousApplicationsAndRegistrationsSummary.component.html',\r\n styleUrls: ['./previousApplicationsAndRegistrationsSummary.component.scss']\r\n})\r\nexport class PreviousApplicationsAndRegistrationsSummaryComponent implements OnInit {\r\n stepId = TechnicianApplicationStep.PreviousApplicationsAndRegistrations;\r\n title = 'Previous registrations';\r\n viewReady = false;\r\n @Input() application: TechnicianApplication;\r\n PreviousRegistrationType = PreviousRegistrationType;\r\n // @ViewChild('firstDatePicker') firstDatePicker: UtcDatePickerComponent;\r\n // @ViewChild('secondDatePicker') secondDatePicker: UtcDatePickerComponent;\r\n\r\n hasReducedWorkExperience: boolean;\r\n outsideTheUkWithReducedExperience = false;\r\n\r\n constructor() {}\r\n\r\n ngOnInit() { }\r\n\r\n\r\n}\r\n\r\n","\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n

    Other bodies

    \r\n
    \r\n\r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n {{ application.activeForm.\r\n previousApplicationsAndRegistrations.\r\n applications.registration.applied ? 'Yes' : 'No'}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n

    Details

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n {{ PreviousRegistrationType[application.activeForm.previousApplicationsAndRegistrations.\r\n applications.registration.type]}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n {{ application.activeForm.\r\n previousApplicationsAndRegistrations.\r\n applications.registration.registrationNumber }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n {{application.activeForm.\r\n previousApplicationsAndRegistrations.\r\n applications.preRegistrationTraining.undertaken ? 'Yes' : 'No'}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n

    Details

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n {{ application.activeForm.previousApplicationsAndRegistrations.applications.preRegistrationTraining.preRegistrationNumber }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n

    Current registration

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n {{ application.activeForm.\r\n previousApplicationsAndRegistrations\r\n .ukRegistration.registered ? 'Yes' : 'No' }}\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Details

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n {{ application.activeForm.previousApplicationsAndRegistrations.ukRegistration.registrationNumber }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n {{ application.activeForm.previousApplicationsAndRegistrations.ukRegistration.nameOfBody }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n {{ application.activeForm.previousApplicationsAndRegistrations.ukRegistration.wasCertificateRequested ? \r\n ' I have requested a certificate of current professional status to be sent from this organisation to the GPhC' : \r\n 'I have not requested a certificate of current professional status to be sent from this organisation to the GPhC'\r\n }}\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n\r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n {{application.activeForm.\r\n previousApplicationsAndRegistrations\r\n .outsideUKRegistration.registered ? 'Yes' : 'No' }}\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n

    Details

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n {{ application.activeForm.previousApplicationsAndRegistrations.outsideUKRegistration.registrationNumber }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n {{ application.activeForm.previousApplicationsAndRegistrations.outsideUKRegistration.nameOfBody }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n {{ application.activeForm.previousApplicationsAndRegistrations.outsideUKRegistration.wasCertificateRequested ? \r\n ' I have requested a certificate of current professional status to be sent from this organisation to the GPhC' : \r\n 'I have not requested a certificate of current professional status to be sent from this organisation to the GPhC'\r\n }}\r\n
    \r\n
    \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, forwardRef, OnInit, Input, OnChanges, AfterViewInit, ChangeDetectorRef, AfterContentChecked, Output, EventEmitter } from '@angular/core';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\nimport { UploadType } from '../../../shared/model/UploadType';\r\nimport { FileUpload } from '../../../shared/model/FileUpload';\r\nimport { AttachmentType } from '../../../shared/model/AttachmentType';\r\nimport utils from '../../../shared/service/utils';\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\nimport { Tooltip } from '../../../core/tooltip/Tooltip';\r\nimport { SupportingDocumentsService } from '../../../shared/supportingDocuments/supportingDocuments.service';\r\nimport { TechnicianApplicationStep } from '../../model/TechnicianApplicationStep';\r\nimport { ApplicationProcessType } from '../../model/ApplicationProcessType';\r\nimport { EducationDetails } from '../../model/EducationDetails';\r\nimport { TechnicianApplication } from '../../model/TechnicianApplication';\r\n\r\n@Component({\r\n selector: 'app-supporting-documents-step',\r\n templateUrl: './supportingDocumentsStep.component.html',\r\n styleUrls: ['./supportingDocumentsStep.scss'],\r\n providers: [\r\n SupportingDocumentsService,\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => SupportingDocumentsStepComponent)\r\n }\r\n ]\r\n})\r\nexport class SupportingDocumentsStepComponent extends FormStepComponent implements OnInit, AfterContentChecked, AfterViewInit {\r\n\r\n constructor(\r\n stepper: FormStepperService,\r\n private docService: SupportingDocumentsService,\r\n private changeDetector: ChangeDetectorRef) {\r\n super(stepper);\r\n }\r\n showDetailsHelp = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n title = 'Supporting documents';\r\n stepId = TechnicianApplicationStep.SupportingDocuments;\r\n hasProofOfId = false;\r\n hasQualification = false;\r\n attachments: { [key: number]: Array } = [];\r\n AttachmentType = AttachmentType;\r\n uploadType = UploadType.PharmacyTechnicianSupportingDocuments;\r\n sessionId = utils.guid();\r\n requireQualificationCertificate = true;\r\n viewReady = false;\r\n registeredDocTypes = [];\r\n docTypes = 1;\r\n applicationTypeLessThanTwoYears;\r\n ApplicationProcessType = ApplicationProcessType;\r\n isCombinedQualification: boolean;\r\n educationDetails: EducationDetails;\r\n removeCombineDocs = false;\r\n @Output() dependentDocs = new EventEmitter();\r\n\r\n\r\n populateForm() { }\r\n\r\n ngOnInit() {\r\n this.educationDetails = (this.application).activeForm.educationDetails;\r\n if (this.application.forms[0].attachments) {\r\n this.application.forms[0].attachments.forEach(attachment => {\r\n this.attachments[attachment.type] = this.attachments[attachment.type] || [];\r\n this.attachments[attachment.type].push(attachment);\r\n });\r\n }\r\n }\r\n\r\n ngAfterContentChecked(): void {\r\n this.changeDetector.detectChanges();\r\n }\r\n\r\n\r\n load() {\r\n this.isCombinedQualification = this.educationDetails.combined.qualificationId !== null ? true : false;\r\n if (this.viewReady) {\r\n this.ready$.next(true);\r\n }\r\n }\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n //this.application.activeForm.attachments = this.attachments;\r\n this.isCombinedQualification = this.educationDetails.combined.qualificationId !== null ? true : false;\r\n this.ready$.next(true);\r\n this.viewReady = true;\r\n });\r\n }\r\n\r\n\r\n onRegistered(type: AttachmentType) {\r\n this.registeredDocTypes.push(type);\r\n if (this.registeredDocTypes.length === this.docTypes) {\r\n setTimeout(() => {\r\n this.viewReady = true;\r\n this.ready$.next(true);\r\n });\r\n }\r\n }\r\n\r\n validate() {\r\n const messages = this.docService.validate();\r\n const appTypeLessThanTwoYears = this.application.activeForm.applicationType === ApplicationProcessType.LessThanTwoYears;\r\n const appTypeTwoYears = this.application.activeForm.applicationType === ApplicationProcessType.TwoYears;\r\n const isSupportingDocumentsForwarded = this.application.activeForm.isSupportingDocumentsForwardedConfirmed;\r\n const hasSupportingDocs = !!this.application.activeForm.attachments.length;\r\n\r\n if (appTypeLessThanTwoYears && !isSupportingDocumentsForwarded) {\r\n messages.push(`This section is mandatory, please confirm that you understand you must forward your\r\n supporting documents to the GPhC in order for your application to be processed.`);\r\n }\r\n\r\n if (appTypeTwoYears && !hasSupportingDocs) {\r\n messages.push('Please upload the necessary documents');\r\n }\r\n\r\n this.validity$.next({ valid: !messages.length, messages, touched: this.touched });\r\n }\r\n\r\n onUploaded($event) {\r\n this.attachments[$event.type] = $event.uploads;\r\n $event.uploads.forEach(upload => upload.type = $event.type);\r\n this.updateApplication();\r\n }\r\n\r\n updateApplication() {\r\n let attachments = [];\r\n this.isCombinedQualification = this.educationDetails.combined.qualificationId !== null ? true : false;\r\n for (const type in this.attachments) {\r\n attachments = attachments.concat(this.attachments[type]);\r\n }\r\n if (this.isCombinedQualification) {\r\n this.application.activeForm.attachments = attachments.filter(item => ((item.type === AttachmentType.KnowledgeBasedQualification) && (item.type === AttachmentType.CompetencyBasedQualification)));\r\n this.application.activeForm.attachments = attachments;\r\n } else if (!this.isCombinedQualification) {\r\n this.application.activeForm.attachments = attachments.filter(item => (item.type === AttachmentType.CombinedQualification));\r\n this.application.activeForm.attachments = attachments;\r\n }\r\n this.application.activeForm.attachments = attachments;\r\n this.validate();\r\n this.makeDirty();\r\n }\r\n\r\n getSupportingDocs() {\r\n this.application.activeForm.attachments = this.attachments;\r\n this.dependentDocs.emit();\r\n }\r\n clearAttachments() {\r\n this.attachments = [];\r\n }\r\n\r\n\r\n}\r\n","\r\n
    \r\n

    \r\n
    \r\n Supporting Documents\r\n
    \r\n

    \r\n
    \r\n\r\n\r\n
    \r\n\r\n
    \r\n Upload scanned copies of all supporting documents. For further information please refer to\r\n \r\n Registering as a pharmacy technician\r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n

    \r\n Upload a scanned copy of your birth certificate\r\n

    \r\n

    \r\n If you were born in England, Wales or Scotland you must submit a birth\r\n certificate issued by the General Registers Office or the General Registers Office of\r\n Scotland.\r\n

    \r\n

    \r\n If you were NOT born in England, Wales or Scotland you must submit a certified copy of your birth\r\n certificate. Any document that is not written in English must be accompanied by a translation.\r\n

    \r\n\r\n

    \r\n If you are not able to provide a birth certificate you can submit Statutory Declaration A, which\r\n needs to be completed with a solicitor.\r\n

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

    \r\n Please upload a scanned copy of your qualification certificate, if you have it\r\n

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

    \r\n Please upload a scanned copy of your qualification certificate, if you have it\r\n

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

    \r\n Please upload a scanned copy of your qualification certificate, if you have it\r\n

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

    \r\n Upload a recent photograph of yourself. It must be taken against a plain background and show your face and\r\n shoulders. We will send this to your supervisor to verify your identity.\r\n

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

    \r\n Upload a scanned version of the certified identity document(s). For further information refer to\r\n registering as a pharmacy\r\n technician\r\n\r\n

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

    \r\n If you are applying to register with less than two years of qualifying UK work experience based on a non-UK\r\n pharmacy qualification,\r\n upload a certified copy of the qualification certificate.\r\n

    \r\n

    \r\n Please note that you will also need to arrange for copies of your academic transcript and evidence that you\r\n are eligible to practice as a\r\n pharmacist or pharmacy technician in your country of qualification to be sent directly to the GPhC from the\r\n relevant authorities.\r\n

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

    \r\n Upload a scanned copy of your birth certificate\r\n

    \r\n

    \r\n If you were born in England, Wales or Scotland you must submit a birth\r\n certificate issued by the General Registers Office or the General Registers Office of\r\n Scotland.\r\n

    \r\n

    \r\n If you were NOT born in England, Wales or Scotland you must submit a certified copy of your birth\r\n certificate. Any document that is not written in English must be accompanied by a translation.\r\n

    \r\n\r\n

    \r\n If you are not able to provide a birth certificate you can submit Statutory Declaration A, which\r\n needs to be completed with a solicitor.\r\n

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

    \r\n Please upload a scanned copy of your qualification certificate, if you have it\r\n

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

    \r\n Please upload a scanned copy of your qualification certificate, if you have it\r\n

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

    \r\n Please upload a scanned copy of your qualification certificate, if you have it\r\n

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

    \r\n Upload a recent photograph of yourself. It must be taken against a plain background and show your face and\r\n shoulders. We\r\n will send this to your supervisor to verify your identity\r\n

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

    \r\n Please upload a scanned version of the certified copy of your identity document(s). See the application\r\n guidance for more information about what you need to provide.\r\n

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n I confirm that I will send the original copies of the documents shown above to the GPhC and I understand\r\n that\r\n my application for registration can not proceed if I do not send them.\r\n \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n\r\n\r\n
    \r\n
    ","import { Component, Input, ViewChildren, QueryList, ViewChild, ElementRef, Output, EventEmitter, AfterViewInit } from '@angular/core';\r\nimport { PremisesSearchBy, PremisesSearchParams, PremisesSearchResult } from '../../../registration/model/PremisesSearchParams';\r\nimport { RegistrationService } from '../../../core/service/registration.service';\r\nimport { Address } from '../../../account/model/Address';\r\n\r\n@Component({\r\n selector: 'app-select-premises',\r\n moduleId: module.id,\r\n templateUrl: './selectPremises.component.html',\r\n styleUrls: ['./selectPremises.component.scss']\r\n})\r\nexport class SelectPremisesComponent {\r\n\r\n @Input() readonly = false;\r\n @Input() touched = false;\r\n\r\n searched = false;\r\n @Input() title = 'pharmacy premises';\r\n @Input() item: PremisesSearchResult;\r\n @Output() selected = new EventEmitter();\r\n\r\n PremisesSearchBy = PremisesSearchBy;\r\n\r\n searchParams: PremisesSearchParams = new PremisesSearchParams();\r\n results: Array;\r\n\r\n premiseSaved = false;\r\n searching = false;\r\n loadingMore = false;\r\n showLoadMore = false;\r\n noResultsVisible = false;\r\n\r\n unregisteredPremiseSearchModel: {\r\n name: string,\r\n address: Address\r\n } = {\r\n name: null,\r\n address: null\r\n }\r\n\r\n @ViewChildren('focus') focus: QueryList;\r\n\r\n constructor(private regService: RegistrationService) { }\r\n\r\n get searchParamsValid() {\r\n if (this.searchParams.searchBy === PremisesSearchBy.Number && !this.searchParams.regNumber) {\r\n return false;\r\n }\r\n if (this.searchParams.searchBy === PremisesSearchBy.Postcode && !this.searchParams.postcode) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n search() {\r\n this.searched = true;\r\n if (!this.searchParamsValid) {\r\n return;\r\n }\r\n this.searchParams.skip = 0;\r\n this.searching = true;\r\n this.regService.searchPremises(this.searchParams)\r\n .subscribe(results => {\r\n this.results = results;\r\n this.searching = false;\r\n this.showLoadMore = results.length === this.searchParams.take;\r\n this.noResultsVisible = results.length === 0;\r\n }, error => {\r\n this.searching = false;\r\n this.showLoadMore = false;\r\n });\r\n }\r\n\r\n update() {\r\n const hasUnregisteredPremiseName = !!this.unregisteredPremiseSearchModel.name;\r\n const hasUnregisteredAddress = !!this.unregisteredPremiseSearchModel.address;\r\n if (hasUnregisteredPremiseName && hasUnregisteredAddress) {\r\n this.selected.emit(this.unregisteredPremiseSearchModel);\r\n }\r\n }\r\n\r\n\r\n get searchByPostcode() {\r\n return this.searchParams.searchBy === PremisesSearchBy.Postcode;\r\n }\r\n get searchByNumber() {\r\n return this.searchParams.searchBy === PremisesSearchBy.Number;\r\n }\r\n\r\n get searchByNotOnRegister() {\r\n return this.searchParams.searchBy === PremisesSearchBy.NotOnRegister;\r\n }\r\n\r\n\r\n setFocus() {\r\n if (this.results) {\r\n this.results.length = 0;\r\n }\r\n setTimeout(function () {\r\n if (this.focus.first && this.focus.first.nativeElement) {\r\n this.focus.first.nativeElement.focus();\r\n }\r\n }.bind(this), 50);\r\n }\r\n\r\n\r\n setSelected(item) {\r\n // if (item.eligibleAsTrainingSite) {\r\n this.item = item;\r\n this.selected.emit(item);\r\n // }\r\n }\r\n\r\n ineligibleTooltip(item) {\r\n if (item.eligibleAsTrainingSite) {\r\n return false;\r\n }\r\n\r\n return {\r\n id: 'ineligible',\r\n content: 'This premises is not eligible as a training site.',\r\n width: 290,\r\n placement: 'top',\r\n order: -1\r\n };\r\n\r\n }\r\n\r\n render(item) {\r\n if (!item) { return ''; }\r\n /*\r\n \"id\": \"5dd68bc4-44b0-e411-80d8-00505685383b\",\r\n \"registrationNumber\": \"1031799\",\r\n \"name\": \"H.J. Everett (Chemist) Ltd.\",\r\n \"owner\": \"H J Everett (Chemist) Ltd\",\r\n \"address\": {\r\n \"line1\": \"58-60 High Street\",\r\n \"line2\": \"Cosham\",\r\n \"line3\": null,\r\n \"town\": \"PORTSMOUTH\",\r\n \"county\": \"Hampshire\",\r\n \"postcode\": \"PO6 3AG\",\r\n \"country\": \"UK\",\r\n \"countryCode\": null\r\n },\r\n \"expiryDate\": \"2018-12-31T00:00:00\",\r\n \"accreditedTo\": \"2020-11-30T00:00:00\",\r\n \"eligibleAsTrainingSite\": true\r\n */\r\n \r\n const newAdd = new Address(item.address);\r\n return `${item.name}, ${newAdd.toString()}`;\r\n }\r\n\r\n clearNoResults() {\r\n this.noResultsVisible = false;\r\n }\r\n\r\n loadMore() {\r\n this.searchParams.skip += this.searchParams.take;\r\n this.loadingMore = true;\r\n this.regService.searchPremises(this.searchParams)\r\n .subscribe(results => {\r\n this.showLoadMore = results.length === this.searchParams.take;\r\n this.results = this.results.concat(results);\r\n this.loadingMore = false;\r\n }, error => {\r\n this.loadingMore = false;\r\n });\r\n }\r\n\r\n cancelSelection() {\r\n this.item = undefined;\r\n this.selected.emit(undefined);\r\n this.searched = false;\r\n\r\n }\r\n\r\n\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n \r\n \r\n Registration number\r\n \r\n Postcode\r\n Not on register\r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n\r\n \r\n

    \r\n Please enter a registration number\r\n

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

    \r\n You must provide a postcode\r\n

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

    \r\n You must provide a unregistered premise\r\n

    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n \r\n
    \r\n \r\n
    Searching for {{title}}s...
    \r\n
    \r\n
    \r\n 0\">\r\n
    \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    NameNumberOwnerAddress
    {{ item.name }}{{ item.registrationNumber }}{{ item.owner }}{{ item.address }}
    \r\n\r\n
    \r\n\r\n \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n

    \r\n Couldn't find any {{title}}s with registration number '{{searchParams.regNumber}}'.\r\n

    \r\n

    \r\n Couldn't find any {{title}}s with postcode '{{searchParams.postcode}}'.\r\n

    \r\n
    \r\n\r\n
    \r\n\r\n\r\n
    \r\n
    \r\n\r\n
    \r\n {{render(item)}}\r\n
    \r\n\r\n
    \r\n
    \r\n\r\n\r\n \r\n\r\n
    \r\n
    \r\n
    ","import { Component, Input, ViewChildren, QueryList, ElementRef, ViewChild, Output, EventEmitter } from '@angular/core';\r\nimport { RegisterSearchBy, RegisterSearchParams, RegisterSearchResult } from '../../../registration/model/RegisterSearchParams';\r\nimport { RegistrationService } from '../../../core/service/registration.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-select-registrant',\r\n moduleId: module.id,\r\n templateUrl: './selectRegistrant.component.html',\r\n styles: [`.results { max-height: 200px; overflow-y: auto}\r\n tr.ineligible { background: #f5f5f5; color: #b7b7b7; }\r\n `]\r\n})\r\nexport class SelectRegistrantComponent {\r\n\r\n constructor(private regService: RegistrationService) { }\r\n\r\n @Input() readonly = false;\r\n @Input() touched = false;\r\n @Input() item: RegisterSearchResult;\r\n @Output() selected = new EventEmitter();\r\n @Input() trainingPlacementStartDate;\r\n\r\n @Input() title = 'registrant';\r\n searched = false;\r\n\r\n RegisterSearchBy = RegisterSearchBy;\r\n\r\n searchParams: RegisterSearchParams = new RegisterSearchParams();\r\n results: Array;\r\n\r\n searching = false;\r\n loadingMore = false;\r\n showLoadMore = false;\r\n noResultsVisible = false;\r\n\r\n\r\n @ViewChildren('focus') focus: QueryList;\r\n @ViewChild('resultsList') resultsListRef: ElementRef;\r\n\r\n get searchParamsValid() {\r\n if (this.searchParams.searchBy === RegisterSearchBy.Number && !this.searchParams.regNumber) {\r\n return false;\r\n }\r\n if (this.searchParams.searchBy === RegisterSearchBy.Name && !this.searchParams.lastName) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n search() {\r\n this.searched = true;\r\n if (!this.searchParamsValid) {\r\n return;\r\n }\r\n this.searchParams.skip = 0;\r\n this.searching = true;\r\n this.searchParams.applicationType = 'IncludePharmacyTechnician';\r\n this.regService.searchRegister(this.searchParams)\r\n .subscribe(results => {\r\n this.calculateIfTutorIsEligible(results);\r\n this.results = results;\r\n this.searching = false;\r\n this.showLoadMore = results.length === this.searchParams.take;\r\n this.resultsListRef.nativeElement.scrollTop = 0;\r\n this.noResultsVisible = results.length === 0;\r\n }, error => {\r\n this.searching = false;\r\n this.showLoadMore = false;\r\n });\r\n }\r\n\r\n calculateIfTutorIsEligible(results) {\r\n const isEligible = (trainingPlacementStartDate, tutorRegistrationDate) => {\r\n return trainingPlacementStartDate > tutorRegistrationDate;\r\n };\r\n \r\n results.forEach((value) => {\r\n const tutorRegDate = new Date(value.initialRegistrationDate);\r\n const trainingStartDate = new Date(this.trainingPlacementStartDate);\r\n // 33 months is 2 years and 9 months\r\n const tutorYear = tutorRegDate.getFullYear() + 2;\r\n const tutorMonth = tutorRegDate.getMonth() + 9;\r\n const tutorDay = tutorRegDate.getDate();\r\n const eligibleTutorDate = new Date(tutorYear, tutorMonth, tutorDay);\r\n value.eligibleAsTutor = isEligible(trainingStartDate, eligibleTutorDate);\r\n });\r\n }\r\n\r\n setSelected(item) {\r\n this.item = item;\r\n this.selected.emit(item);\r\n }\r\n\r\n get searchByName() {\r\n return this.searchParams.searchBy === RegisterSearchBy.Name;\r\n }\r\n get searchByNumber() {\r\n return this.searchParams.searchBy === RegisterSearchBy.Number;\r\n }\r\n\r\n clearNoResults() {\r\n this.noResultsVisible = false;\r\n }\r\n\r\n setFocus() {\r\n setTimeout(function () {\r\n if (this.focus.first && this.focus.first.nativeElement) {\r\n this.focus.first.nativeElement.focus();\r\n }\r\n }.bind(this), 50);\r\n }\r\n\r\n render(item) {\r\n if (!item) {\r\n return '';\r\n }\r\n let name = item.title ? item.title + ' ' : '';\r\n\r\n name += item.forenames + ' ' + item.surname;\r\n\r\n\r\n\r\n return name;\r\n\r\n }\r\n\r\n cancelSelection() {\r\n this.item = undefined;\r\n this.selected.emit(undefined);\r\n this.searched = false;\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n \r\n \r\n Registration number\r\n \r\n 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 Please enter a registration number\r\n

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

    \r\n You must provide a last 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
    Searching for {{title}}s...
    \r\n
    \r\n
    \r\n\r\n 0\">\r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    NameNumberTown
    {{ item.forenames + ' ' + item.surname }}{{ item.registrationNumber }}{{ item.town }}
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n

    \r\n \r\n The registration number that you have entered is incorrect. Please check the details and try again.\r\n

    \r\n

    \r\n Couldn't find any {{title}}s called '{{ (searchParams.firstName ? searchParams.firstName + ' ' : '') +\r\n searchParams.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 {{render(item)}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    ","import { Component, Input, Output, EventEmitter, OnInit } from '@angular/core';\r\nimport { WorkExperience } from '../../model/WorkExperience';\r\n\r\n\r\n@Component({\r\n selector: 'app-work-experience',\r\n moduleId: module.id,\r\n templateUrl: './workExperience.component.html',\r\n styleUrls: ['./workExperience.scss']\r\n})\r\nexport class WorkExperienceComponent implements OnInit {\r\n\r\n @Input() readonly = false;\r\n @Input() touched = false;\r\n @Input() workExperience: WorkExperience;\r\n @Input() index;\r\n @Output() changed = new EventEmitter();\r\n today = new Date();\r\n\tpublic ExtendedDate: number = 30;\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n this.workExperience.updated$.subscribe((field) => {\r\n this.changed.emit(field);\r\n });\r\n this.today.setDate(this.today.getDate() + this.ExtendedDate);\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n

    \r\n Tell us about the work experience you have completed to meet the registration criteria.\r\n

    \r\n

    \r\n If you had more than one placement you should enter the earliest placement first.\r\n

    \r\n

    \r\n If you completed work experience in a GPhC registered pharmacy, please search for it using the pharmacy’s postcode\r\n or GPhC registration number.\r\n

    \r\n

    \r\n If you completed work experience in an organisation which is not a registered pharmacy, for example in a GP practice,\r\n please select the option ‘Not on register’, and search for the placement address by postcode.\r\n

    \r\n
    \r\n

    Work experience placement details

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

    Job description

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

    \r\n Please provide a job 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 To meet the work experience requirement you must work at least 14 hours a week\r\n

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

    Training dates

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

    \r\n The start date of your training must be no earlier than three months before the earliest start date of the\r\n qualifications shown on the education details section.\r\n

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

    Supervising pharmacist or pharmacy technician

    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    ","import { Component, forwardRef, ViewChildren, AfterViewInit } from '@angular/core';\r\nimport { FormStepComponent } from '../../../shared/formStepper/formStep.component';\r\nimport { FormStepperService } from '../../../shared/formStepper/formStepper.service';\r\nimport { Tooltip } from '../../../core/tooltip/Tooltip';\r\nimport { IProgress } from '../../../shared/IProgress';\r\nimport { TechnicianApplicationStep } from '../../model/TechnicianApplicationStep';\r\nimport { TechnicianApplication } from '../../model/TechnicianApplication';\r\nimport { WorkExperience } from '../../model/WorkExperience';\r\nimport { ApplicationProcessType } from '../../model/ApplicationProcessType';\r\nimport { DatePipe } from '@angular/common';\r\nimport { UtcDatePipe } from '../../../shared/pipe/UtcDate.pipe';\r\n\r\n@Component({\r\n selector: 'app-work-experience-step',\r\n templateUrl: './workExperienceStep.component.html',\r\n providers: [\r\n {\r\n provide: FormStepComponent,\r\n useExisting: forwardRef(() => WorkExperienceStepComponent)\r\n }, DatePipe\r\n ],\r\n styleUrls: ['./workExperienceStep.scss']\r\n}) export class WorkExperienceStepComponent extends FormStepComponent implements AfterViewInit {\r\n\r\n showHelp = false;\r\n loaded = false;\r\n title = 'Work experience';\r\n stepId = TechnicianApplicationStep.WorkExperience;\r\n viewReady = false;\r\n tooltip: Tooltip = {\r\n id: 'help',\r\n content: 'Click here for more information.',\r\n width: 250,\r\n placement: 'right',\r\n order: -1\r\n };\r\n\r\n learningContractRejected = false;\r\n tutorIneligible = false;\r\n tutorFeedback;\r\n registrationDateLimit;\r\n feedback = false;\r\n applicationTypeValue: ApplicationProcessType;\r\n ApplicationProcessType = ApplicationProcessType;\r\n\r\n trainingWindow;\r\n\r\n @ViewChildren('focus') vc;\r\n\r\n progressTooltip: Tooltip = {\r\n id: 'progress',\r\n content: `This shows the total number of training weeks you have entered, which must add up to 104/2 years.`,\r\n width: 310,\r\n placement: 'top',\r\n order: -1\r\n };\r\n hourProgressTooltip: Tooltip = {\r\n id: 'progress',\r\n content: `This shows the total number of hours you have entered, which must be\r\n a minumum of 1260hr over a two year period\r\n .`,\r\n width: 310,\r\n placement: 'top',\r\n order: -1\r\n };\r\n\r\n workExperiences: Array = [];\r\n weeksProgress: IProgress = {\r\n progress: 0,\r\n completed: false,\r\n invalid: false,\r\n total: 104\r\n };\r\n hoursProgress: IProgress = {\r\n progress: 0,\r\n completed: false,\r\n invalid: false,\r\n total: 1260\r\n }\r\n constructor(service: FormStepperService, private datePipe: DatePipe) {\r\n super(service);\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.ready$.next(true);\r\n this.viewReady = true;\r\n });\r\n }\r\n\r\n\r\n beforePrev() {\r\n this.dirty = false;\r\n return true;\r\n }\r\n\r\n getProgressTooltip() {\r\n return this.progressTooltip;\r\n }\r\n\r\n getHourProgressTooltip() {\r\n return this.hourProgressTooltip;\r\n }\r\n\r\n\r\n setFocus() {\r\n setTimeout(function () {\r\n if (this.vc.first) {\r\n this.vc.first.nativeElement.focus();\r\n }\r\n }.bind(this), 200);\r\n }\r\n\r\n load() {\r\n this.getWorkExperiences();\r\n this.getApplicationTypeValue();\r\n this.calculateWeeks([]);\r\n this.calculateHoursWorked([]);\r\n this.dirty = false;\r\n this.ready$.next(true);\r\n this.populateForm();\r\n }\r\n\r\n getWorkExperiences() {\r\n const hasWorkExperiences = (this.application).activeForm.workExperiences.length;\r\n if (this.application.activeForm.step === TechnicianApplicationStep.WorkExperience) {\r\n (!hasWorkExperiences) ? this.createNewWorkExperience() : this.mapWorkExperience();\r\n }\r\n }\r\n\r\n createNewWorkExperience() {\r\n (this.application).activeForm.workExperiences = [new WorkExperience()];\r\n this.workExperiences = (this.application).activeForm.workExperiences;\r\n\r\n }\r\n\r\n mapWorkExperience() {\r\n this.workExperiences = (this.application).activeForm\r\n .workExperiences.sort((a, b) => {\r\n return new Date(a.startDate) < new Date(b.startDate) ? -1 : 1;\r\n });\r\n }\r\n\r\n getApplicationTypeValue() {\r\n this.applicationTypeValue = (this.application).activeForm.applicationType;\r\n }\r\n\r\n nth(i) {\r\n return i === 0 ? 'first' : (i === 1 ? 'second' : (i === 2 ? 'third' : 'fourth'));\r\n }\r\n\r\n changed(field?) {\r\n this.touched = true;\r\n this.makeDirty();\r\n this.validate();\r\n }\r\n\r\n\r\n calcEducationDetailsEarliestDate(knowledgeDate, competencyDate) {\r\n const dates = [new Date(knowledgeDate), new Date(competencyDate)]\r\n .sort((a, b) => new Date(a) < new Date(b) ? -1 : 1);\r\n const threeMonthsEarlier = new Date(\r\n dates[0].getFullYear(),\r\n dates[0].getMonth() - 3,\r\n dates[0].getDate()\r\n );\r\n return threeMonthsEarlier;\r\n }\r\n\r\n calcCombinedEducationDetailsEarliestDate(combinedDate) {\r\n const dates = new Date(combinedDate);\r\n const threeMonthsEarlier = new Date(\r\n dates.getFullYear(),\r\n dates.getMonth() - 3,\r\n dates.getDate()\r\n );\r\n return threeMonthsEarlier;\r\n }\r\n\r\n validate() {\r\n\r\n const { dateCommenced: competencyDateCommenced } = this.application.activeForm.educationDetails.competency;\r\n const { dateCommenced: knowledgeDateCommenced } = this.application.activeForm.educationDetails.knowledge;\r\n const { dateCommenced: combinedDateCommenced } = this.application.activeForm.educationDetails.combined;\r\n\r\n const earliestSubmissionDate = this.calcEducationDetailsEarliestDate(knowledgeDateCommenced, competencyDateCommenced);\r\n const earliestCombinedSubmissionDate = this.calcCombinedEducationDetailsEarliestDate(combinedDateCommenced);\r\n\r\n const messages = [];\r\n\r\n this.workExperiences.forEach((workExperience, i) => {\r\n const n = this.nth(i);\r\n const hasWorkingHoursSet = !!workExperience.workedHoursPerWeek;\r\n const hasJobTitle = !!workExperience.jobTitle;\r\n\r\n\r\n if (!hasJobTitle) {\r\n messages.push('You must include a job title');\r\n }\r\n\r\n if (!hasWorkingHoursSet) {\r\n messages.push('You must set your working hours');\r\n }\r\n\r\n if (workExperience.workedHoursPerWeek < 14) {\r\n messages.push('To meet the work experience requirement you must work at least 14 hours a week');\r\n }\r\n\r\n\r\n if (!workExperience.premise) {\r\n messages.push(`You haven't selected a training site for your ${n} placement.`);\r\n return;\r\n }\r\n\r\n if (workExperience.premiseValid) {\r\n\r\n if (workExperience.workingHoursValid) {\r\n\r\n if (!workExperience.startDate) {\r\n messages.push(`You haven't set the start date of your ${n} placement.`);\r\n return;\r\n }\r\n\r\n if (!workExperience.endDate) {\r\n messages.push(`You haven't set the end date of your ${n} placement.`);\r\n return;\r\n }\r\n }\r\n\r\n\r\n if (workExperience.datesValid) {\r\n\r\n if (!workExperience.supervisingPharmacists.length || !workExperience.supervisingPharmacists[0]) {\r\n messages.push(`You haven’t selected a supervising pharmacist or pharmacy technician for your ${n} placement.`);\r\n }\r\n }\r\n\r\n }\r\n\r\n\r\n if (new Date(workExperience.startDate) < earliestSubmissionDate) {\r\n messages.push(`Your start date of the ${n} work experience must be after\r\n ${this.datePipe.transform(earliestSubmissionDate)}`);\r\n }\r\n\r\n\r\n if (new Date(workExperience.startDate) < earliestCombinedSubmissionDate) {\r\n messages.push(`Your start date of the ${n} work experience must be after\r\n ${this.datePipe.transform(earliestCombinedSubmissionDate)}`);\r\n }\r\n \r\n });\r\n\r\n\r\n this.validateDateRanges(messages);\r\n\r\n if (this.workExperiencesValid) {\r\n this.calculateWeeks(messages);\r\n this.calculateHoursWorked(messages);\r\n }\r\n\r\n this.validity$.next({\r\n valid: !messages.length,\r\n messages,\r\n touched: true\r\n });\r\n }\r\n\r\n\r\n calculateWeeks(messages) {\r\n const totalWeeks = (this.application).activeForm.getTrainingWeeks();\r\n let invalid = false;\r\n if (this.applicationTypeValue === ApplicationProcessType.TwoYears) {\r\n invalid = totalWeeks < 104;\r\n if (invalid) {\r\n messages.push('At least 104 weeks (2 years) of work experience must be completed in order to apply for registration.');\r\n }\r\n }\r\n this.weeksProgress = Object.assign({}, this.weeksProgress, { progress: totalWeeks, error: this.touched && invalid });\r\n }\r\n\r\n calculateHoursWorked(messages) {\r\n const totalHours = (this.application).activeForm.getHoursWorked();\r\n const totalWeeks = (this.application).activeForm.getTrainingWeeks();\r\n let invalid;\r\n if (this.workExperiences.length === 1 && this.applicationTypeValue === ApplicationProcessType.TwoYears) {\r\n invalid = (totalHours >= 1260 && totalWeeks === 52);\r\n // if (invalid) {\r\n // messages.push('You cannot do a full 1260hr in one full year, please adjust your dates and times')\r\n // messages.push('You are required to work between 315hr - 1260hr per year') // we will change this error message\r\n // }\r\n } else if (this.workExperiences.length === 1 && this.applicationTypeValue === ApplicationProcessType.LessThanTwoYears) {\r\n invalid = (totalHours <= 315 && totalWeeks >= 52);\r\n if (invalid) {\r\n messages.push('You cannot do a full 1260hr in one full year, please adjust your dates and times')\r\n messages.push('You are required to work between 315hr - 1260hr per year') // we will change this error message\r\n }\r\n }\r\n this.hoursProgress = Object.assign({}, this.hoursProgress, { progress: totalHours, error: this.touched && invalid });\r\n }\r\n\r\n validateDateRanges(messages) {\r\n if (this.workExperiences.length >= 2) {\r\n // return true;\r\n if (new Date(this.workExperiences[0].endDate) > new Date(this.workExperiences[1].startDate)) {\r\n messages.push('The start date of your second placement must be after the end date of your first placement');\r\n this.workExperiences[1].overlap$.next(true);\r\n return false;\r\n }\r\n this.workExperiences[1].overlap$.next(false);\r\n if (this.workExperiences.length === 2) {\r\n return true;\r\n }\r\n\r\n if (new Date(this.workExperiences[1].endDate) > new Date(this.workExperiences[2].startDate)) {\r\n messages.push('The start date of your third placement must be after the end date of your second placement');\r\n this.workExperiences[2].overlap$.next(true);\r\n return false;\r\n }\r\n this.workExperiences[2].overlap$.next(false);\r\n }\r\n return true;\r\n }\r\n\r\n\r\n populateForm() {}\r\n\r\n\r\n\r\n\r\n removePlacement(index) {\r\n if (this.workExperiences.length > 1) {\r\n this.workExperiences.splice(index, 1);\r\n }\r\n this.changed();\r\n }\r\n\r\n\r\n\r\n addWorkExperience() {\r\n const workExperience = new WorkExperience();\r\n this.workExperiences.push(workExperience);\r\n\r\n this.changed();\r\n this.touched = false;\r\n }\r\n\r\n get workExperiencesValid() {\r\n let valid = true;\r\n this.workExperiences.forEach(experience => {\r\n if (!experience.isValid) {\r\n valid = false;\r\n }\r\n });\r\n return valid;\r\n }\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 Please enter the details of two years’ work experience you completed while studying for the UK qualification(s).\r\n You can include work experience completed during your pharmacy technician courses, and up to three months \r\n before the start of your pharmacy technician course, if you were:\r\n

    \r\n
      \r\n
    • \r\n working and carrying out the role of a pre-registration trainee pharmacy technician in the United Kingdom, \r\n Isle of Man or Channel Islands\r\n
    • \r\n
    • \r\n under the supervision, direction or guidance of a pharmacist or pharmacy technician to whom you were \r\n directly accountable\r\n
    • \r\n
    \r\n

    \r\n This is because you must register for, or start, the qualification required to register as a \r\n pharmacy technician within three months of starting to work as a pre-registration trainee pharmacy technician.\r\n

    \r\n

    \r\n Within this two-year period, you must complete at least 1,260 hours of work experience in total. You must \r\n complete at least 315 hours in each of the two years.\r\n

    \r\n

    International qualifications and practice, and the relevant work experience requirement

    \r\n

    \r\n If you have evidence that you have a pharmacist or pharmacy technician qualification from a country from outside the UK,\r\n and are eligible to practise as a pharmacist or pharmacy technician in the country where you qualified, you do\r\n not need to complete a full two-year period of relevant work experience.\r\n

    \r\n

    Recent UK pharmacist pre-registration training and the relevant work experience requirement

    \r\n

    \r\n If you completed work experience in an organisation which is not a registered pharmacy, \r\n for example a GP practice, please select the option ‘Not on register’ and search for the placement address by postcode.\r\n

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

    Your {{nth(i)}} work experience

    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n Total number of training weeks entered\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n Total number of hours worked\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n\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 { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { LoggedInOnlyGuard } from '../guard/LoggedInOnly.guard';\r\nimport { UserLoadedGuard } from '../guard/UserLoaded.guard';\r\nimport { PreregOnlyGuard } from '../guard/PreregOnly.guard';\r\nimport { CanDeactivateGuard } from '../guard/CanDeactivate.guard';\r\nimport { TechnicianOnlyGuard } from '../guard/TechnicianApplicantOnly.guard';\r\nimport { TechnicianDetailsComponent } from './technicianDetails.component';\r\nimport { TechnicianApplicationComponent } from './technicianApplication.component';\r\nimport { FirstYearPaymentComponent } from './steps/firstYearPayment/firstYearPayment.component';\r\n\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'technicianDetails',\r\n canActivate: [ UserLoadedGuard, LoggedInOnlyGuard, TechnicianOnlyGuard ],\r\n component: TechnicianDetailsComponent,\r\n data: { title: 'Technician details' }\r\n },\r\n {\r\n path: 'application',\r\n canActivate: [ UserLoadedGuard, LoggedInOnlyGuard, TechnicianOnlyGuard ],\r\n component: TechnicianApplicationComponent,\r\n data: { title: 'Technician Application' , classname : 'application' }\r\n },\r\n { \r\n path: 'application/first-year-payment',\r\n canActivate: [ UserLoadedGuard, LoggedInOnlyGuard,TechnicianOnlyGuard],\r\n data: { title: 'First year payment', classname : 'application' },\r\n component: FirstYearPaymentComponent },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n providers: [\r\n UserLoadedGuard,\r\n LoggedInOnlyGuard,\r\n PreregOnlyGuard,\r\n CanDeactivateGuard,\r\n TechnicianOnlyGuard\r\n ]\r\n})\r\nexport class TechnicianRoutingModule { }\r\n","import { NgModule, ErrorHandler } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { SharedModule } from '../shared/shared.module';\r\nimport { RouterModule } from '@angular/router';\r\nimport { AccountModule } from '../account/account.module';\r\nimport { CustomErrorHandler } from '../core/service/CustomErrorHandler';\r\n// import { HttpClientModule } from '@angular/common/http';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { PersonalDetailsStepComponent } from './steps/personalDetails/personalDetailsStep.component';\r\nimport { EqualityDiversityStepComponent } from './steps/equalityDiversity/equalityDiversityStep.component';\r\nimport { FtpDeclarationStepComponent } from './steps/declaration/ftpDeclarationStep.component';\r\nimport { RenewalModule } from '../renewal/renewal.module';\r\nimport { DeclarationSummaryComponent } from './steps/declaration/declarationSummary.component';\r\nimport { WorkExperienceStepComponent } from './steps/workExperience/workExperienceStep.component';\r\nimport { WorkExperienceComponent } from './steps/workExperience/workExperience.component';\r\nimport { TechnicianReviewStepComponent } from './steps/review/technicianReviewStep.component';\r\n import { TechnicianApplicationReviewComponent } from './steps/review/technicianApplicationReview.component';\r\nimport { PaymentStepComponent } from './steps/payment/paymentStep.component';\r\nimport { SupportingDocumentsStepComponent } from './steps/supportingDocuments/supportingDocumentsStep.component';\r\nimport { TechnicianDetailsComponent } from './technicianDetails.component';\r\nimport { TechnicianDashboardComponent } from './steps/dashboard/technicianDashboard.component';\r\nimport { TechnicianRoutingModule } from './technician-routing.module';\r\nimport { TechnicianApplicationComponent } from './technicianApplication.component';\r\nimport { SelectPremisesComponent } from './steps/workExperience/selectPremises.component';\r\nimport { SelectRegistrantComponent } from './steps/workExperience/selectRegistrant.component';\r\nimport { ApplicationTypeStepComponent } from './steps/applicationType/applicationTypeStep.component';\r\nimport { EducationDetailsStepComponent } from './steps/educationDetails/educationDetailsStep.component';\r\nimport { AddressComponent } from './steps/personalDetails/address.component';\r\nimport { AddressEditComponent } from './steps/personalDetails/addressEdit.component';\r\nimport { AddressEditableComponent } from './steps/personalDetails/addressEditable.component';\r\nimport { AddressSearchComponent } from './steps/personalDetails/addressSearch.component';\r\nimport { PreviousApplicationsAndRegistrationsComponent } from './steps/prevApplicationAndRegistrations/previousApplicationsAndRegistrations.component';\r\nimport { CountersigningStepComponent } from './steps/countersigning/countersigningStep.component';\r\nimport { OverallDeclarationStepComponent } from './steps/declaration/overallDeclarationStep.component';\r\nimport { EducationDetailsSummaryComponent } from './steps/summary/educationDetailsSummary.component';\r\nimport { PreviousApplicationsAndRegistrationsSummaryComponent } from './steps/summary/previousApplicationsAndRegistrationsSummary.component'\r\nimport { FirstYearPaymentComponent } from './steps/firstYearPayment/firstYearPayment.component';\r\nimport { GuidanceComponent } from './steps/guidance/guidance.component';\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n // HttpClientModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n RouterModule,\r\n SharedModule,\r\n AccountModule,\r\n RenewalModule,\r\n TechnicianRoutingModule\r\n ],\r\n declarations: [\r\n TechnicianDashboardComponent,\r\n TechnicianDetailsComponent,\r\n TechnicianApplicationComponent,\r\n TechnicianApplicationReviewComponent,\r\n PersonalDetailsStepComponent,\r\n EqualityDiversityStepComponent,\r\n FtpDeclarationStepComponent,\r\n DeclarationSummaryComponent,\r\n TechnicianReviewStepComponent,\r\n PaymentStepComponent,\r\n SupportingDocumentsStepComponent,\r\n WorkExperienceStepComponent,\r\n WorkExperienceComponent,\r\n SelectPremisesComponent,\r\n SelectRegistrantComponent,\r\n ApplicationTypeStepComponent,\r\n EducationDetailsStepComponent,\r\n FirstYearPaymentComponent,\r\n AddressComponent,\r\n PreviousApplicationsAndRegistrationsComponent,\r\n AddressEditComponent,\r\n AddressEditableComponent,\r\n AddressSearchComponent,\r\n CountersigningStepComponent,\r\n OverallDeclarationStepComponent,\r\n EducationDetailsSummaryComponent,\r\n PreviousApplicationsAndRegistrationsSummaryComponent,\r\n GuidanceComponent\r\n ],\r\n exports: [\r\n TechnicianDashboardComponent,\r\n TechnicianApplicationReviewComponent\r\n ],\r\n providers: [\r\n { provide: ErrorHandler, useClass: CustomErrorHandler }\r\n ]\r\n})\r\nexport class TechnicianModule { }\r\n","\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '../core/service/auth.service';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { LogService } from '../core/service/log.service';\r\nimport { TechnicianApplication } from './model/TechnicianApplication';\r\nimport { User } from '../account/model/User';\r\nimport { LayoutService } from '../core/service/layout.service';\r\nimport { CanComponentDeactivate } from '../guard/CanDeactivate.guard';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { ConfirmDialogComponent } from '../shared/confirmDialog.component';\r\nimport { TechnicianApplicationStep } from './model/TechnicianApplicationStep';\r\nimport { FormStepperService } from '../shared/formStepper/formStepper.service';\r\nimport { FormStepSummary } from '../shared/formStepper/FormStepSummary';\r\nimport { FormStepperComponent } from '../shared/formStepper/formStepper.component';\r\nimport { mergeMap } from 'rxjs/operators';\r\nimport { of as observableOf, from as observableFrom } from 'rxjs';\r\nimport { TechnicianService } from '../core/service/technician.service';\r\nimport { ApplicationStatus } from '../prereg/model/ApplicationStatus';\r\nimport { DatePipe } from '@angular/common';\r\nimport { tap } from 'rxjs/operators';\r\nimport { SupportingDocumentsStepComponent } from './steps/supportingDocuments/supportingDocumentsStep.component';\r\nimport { EducationDetailsStepComponent } from './steps/educationDetails/educationDetailsStep.component';\r\n\r\n@Component({\r\n selector: 'app-technician-application',\r\n moduleId: module.id,\r\n templateUrl: './technicianApplication.component.html',\r\n styleUrls: ['../student/preregApplication.scss', '../prereg/application-form.scss'],\r\n providers: [FormStepperService]\r\n})\r\nexport class TechnicianApplicationComponent implements OnInit,\r\n CanComponentDeactivate {\r\n\r\n user: User;\r\n loading = false;\r\n ready = false;\r\n saving = false;\r\n loadingError = false;\r\n application: TechnicianApplication;\r\n maxStep: TechnicianApplicationStep;\r\n minStep: TechnicianApplicationStep;\r\n showGuidanceWarning = false;\r\n ApplicationStep = TechnicianApplicationStep;\r\n ignoreBackendSaveErrors = false;\r\n regDateLimit;\r\n TechnicianApplicationStep = TechnicianApplicationStep;\r\n clearDependentSteps = false;\r\n\r\n @ViewChild(FormStepperComponent) formStepper;\r\n @ViewChild(SupportingDocumentsStepComponent) suppDocsComp: SupportingDocumentsStepComponent;\r\n @ViewChild(EducationDetailsStepComponent) eduComp: EducationDetailsStepComponent;\r\n applicationClosedMessage: string;\r\n\r\n constructor(private router: Router, private auth: AuthService, private service: TechnicianService,\r\n public layout: LayoutService,\r\n private dialog: MatDialog,\r\n public formStepperService: FormStepperService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.load();\r\n }\r\n\r\n //cancelling countersigning if application is repoened\r\n reopenApplication() {\r\n this.cancelCountersignature(1);\r\n }\r\n\r\n get ineligible() {\r\n return this.application.activeForm.formStatus === ApplicationStatus.Ineligible;\r\n }\r\n\r\n get allowResubmit() {\r\n return !this.application.activeForm.requirePayment;\r\n }\r\n\r\n resubmitApplication() {\r\n this.layout.setFullscreenSpinner(true, 'Submitting...');\r\n this.service.reSubmitApplication(this.application.activeForm.id).subscribe(() => {\r\n this.router.navigate(['/home']);\r\n // invalidate cache\r\n delete this.service.application;\r\n this.layout.setFullscreenSpinner(false);\r\n }, error => {\r\n this.layout.setFullscreenSpinner(false);\r\n });\r\n }\r\n\r\n load() {\r\n\r\n this.user = this.auth.user;\r\n this.loading = true;\r\n this.loadingError = false;\r\n this.service.getApplication(this.auth.user.registrationStatus)\r\n .subscribe(application => {\r\n this.application = application;\r\n this.loadComplete();\r\n\r\n if (this.application.activeForm.step) {\r\n this.maxStep = this.application.activeForm.step;\r\n }\r\n if (this.application.activeForm.minStep) {\r\n this.minStep = this.application.activeForm.minStep;\r\n }\r\n\r\n }, error => {\r\n this.loading = false;\r\n this.loadingError = true;\r\n });\r\n }\r\n\r\n\r\n\r\n loadComplete() {\r\n this.loading = false;\r\n this.ready = true;\r\n setTimeout(() => {\r\n this.showGuidanceWarning = this.formStepper && this.formStepper.currentStep === TechnicianApplicationStep.PersonalDetails;\r\n });\r\n }\r\n\r\n warnForDirty(): Observable {\r\n\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n title: `Unsaved changes`,\r\n message: `

    Do you want to save your changes before exiting your application form?

    `\r\n }\r\n });\r\n return dialogRef.afterClosed()\r\n .pipe(mergeMap(shouldSave => {\r\n if (shouldSave) {\r\n this.layout.setFullscreenSpinner(true);\r\n return observableFrom(this.save().then(() => {\r\n return true;\r\n }, error => {\r\n // show error messages\r\n this.layout.setFullscreenSpinner(false);\r\n return false;\r\n }));\r\n } else {\r\n return observableOf(true);\r\n }\r\n }));\r\n }\r\n\r\n canDeactivate() {\r\n if (!this.formStepper || !this.formStepper.currentStep || !this.formStepper.currentStep.dirty) { return true; }\r\n return this.warnForDirty();\r\n }\r\n\r\n save() {\r\n this.saving = true;\r\n\r\n this.application.activeForm.step = this.formStepperService.getFurthestStep();\r\n this.formStepper.currentStep.populateForm();\r\n return new Promise((resolve, reject) => {\r\n const start = performance.now();\r\n const minExecution = 300;\r\n function respond(cb) {\r\n const end = performance.now();\r\n const duration = end - start;\r\n if (duration < minExecution) {\r\n setTimeout(() => {\r\n cb();\r\n }, Math.round(minExecution - duration));\r\n } else {\r\n cb();\r\n }\r\n }\r\n this.service.saveApplication(this.application, this.formStepper.currentStep.stepId).subscribe(() => {\r\n respond(() => {\r\n this.saving = false;\r\n resolve();\r\n });\r\n }, error => {\r\n respond(() => {\r\n this.saving = false;\r\n if (this.ignoreBackendSaveErrors) {\r\n resolve();\r\n } else {\r\n reject(error);\r\n }\r\n\r\n });\r\n });\r\n });\r\n }\r\n\r\n goToStepId(stepId) {\r\n if (this.application.activeForm.formStatus === ApplicationStatus.CounterSigned) {\r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n data: {\r\n title: `Form is countersigned`,\r\n message: `

    If you need to edit these details you will have to get the form countersigned again.

    \r\n

    Are you sure ?

    \r\n `\r\n }\r\n });\r\n dialogRef.afterClosed().subscribe(cancelCountersignature => {\r\n if (cancelCountersignature) {\r\n this.cancelCountersignature(stepId);\r\n }\r\n });\r\n } else {\r\n this.formStepper.goToStep(stepId);\r\n }\r\n }\r\n\r\n cancelCountersignature(stepId) {\r\n this.layout.setFullscreenSpinner(true, 'Reverting...');\r\n this.service.cancelCountersignature(this.application.activeForm.id).subscribe(() => {\r\n this.application.activeForm.formStatus = ApplicationStatus.InProgress;\r\n setTimeout(() => {\r\n if (this.formStepperService.summary) {\r\n this.formStepperService.summary.find(step => step.stepId === TechnicianApplicationStep.Countersigning).validity.valid = false;\r\n this.formStepperService.setStepRange(1, TechnicianApplicationStep.Countersigning);\r\n }\r\n this.formStepper.goToStep(stepId);\r\n this.layout.setFullscreenSpinner(false);\r\n });\r\n\r\n }, error => {\r\n this.layout.setFullscreenSpinner(false);\r\n });\r\n }\r\n\r\n\r\n\r\n\r\n\r\n goToStep(step: FormStepSummary) {\r\n if (step.disabled) { return; }\r\n this.formStepper.goToStep(step.stepId);\r\n }\r\n\r\n\r\n stepChanged(stepId) {\r\n this.service.setStep(this.application.activeForm.id, this.formStepperService.getFurthestStep()).subscribe();\r\n this.application.activeForm.step = stepId;\r\n }\r\n\r\n stepChange(): () => Promise {\r\n return function () {\r\n return new Promise((resolve, reject) => {\r\n\r\n if (this.formStepper.currentStep.dirty) {\r\n this.formStepper.serverErrors = [];\r\n return this.save().then(() => {\r\n resolve();\r\n }, error => {\r\n this.formStepper.serverErrors = error.validationErrors;\r\n reject(error);\r\n });\r\n } else {\r\n resolve();\r\n }\r\n });\r\n }.bind(this);\r\n }\r\n\r\n clearSteps($event) {\r\n this.suppDocsComp.clearAttachments();\r\n this.formStepper.goToStep(TechnicianApplicationStep.WorkExperience);\r\n }\r\n\r\n clearDocsSteps($event) {\r\n this.eduComp.clearDependentSteps();\r\n }\r\n}\r\n","
    \r\n
    \r\n\r\n \r\n
    \r\n\r\n
    \r\n

    Application for registration as a pharmacy technician

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

    \r\n An error occurred while attempting to load your application\r\n

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

    This application has been marked as ineligible.

    \r\n \r\n\r\n \r\n
    \r\n\r\n View the application guidance on the GPhC website\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n\r\n \r\n \r\n\r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n \r\n \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 { AuthService } from '../core/service/auth.service';\r\nimport { TechnicianService } from '../core/service/technician.service';\r\nimport { User } from '../account/model/User';\r\nimport { Applicant } from '../account/model/Applicant';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n templateUrl: './technicianDetails.component.html'\r\n})\r\nexport class TechnicianDetailsComponent implements OnInit {\r\n\r\n technicianApplicant: Applicant;\r\n user: User;\r\n loading;\r\n\r\n constructor(private auth: AuthService, private service: TechnicianService) {\r\n }\r\n\r\n ngOnInit() {\r\n this.loading = true;\r\n this.service.getApplication(this.auth.user.registrationStatus).subscribe(application => {\r\n this.technicianApplicant = application.trainee;\r\n this.loading = false;\r\n });\r\n this.user = this.auth.user;\r\n }\r\n}\r\n","\r\n
    \r\n

    Applicant details

    \r\n

    Your personal details as a pharmacy technician applicant\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n Technician details\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \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 }}\r\n \r\n
    \r\n
    \r\n\r\n
    ","import { Environment } from './model/Environment';\r\ndeclare function require(moduleName: string): any;\r\n\r\nexport const environment: Environment = {\r\n target: 'test',\r\n useMock: false,\r\n production: true,\r\n worldpayEnabled: true,\r\n version: require('../../package.json').version,\r\n webRoot: 'http://localhost:6420',\r\n maintenanceAPIURL: 'https://webapp-t1dev-maintapi-4874.azurewebsites.net',\r\n sso: {\r\n //pwdreset: 'https://login.microsoftonline.com/GPHCDEVAADB2C.onmicrosoft.com/oauth2/v2.0/authorize?p=B2C_1_Auth-PasswordReset',\r\n pwdreset: 'https://login.microsoftonline.com/tfp/GPHCDEVAADB2C.onmicrosoft.com/B2C_1_Auth-PasswordResetNew',\r\n redirectUri: 'http://localhost:6420',\r\n postLogoutRedirectUri: 'http://localhost:6420/',\r\n b2cScopes: ['https://GPHCDEVAADB2C.onmicrosoft.com/webapp-t1dev-mygphcapi-6eb6/user_impersonation', 'offline_access'],\r\n authority: 'https://login.microsoftonline.com/tfp/GPHCDEVAADB2C.onmicrosoft.com/B2C_1_Auth-SignUpInNew',\r\n clientID: 'b9c1d5db-e2fc-49ee-a1a4-588a7be1c3c6'\r\n },\r\n api: {\r\n root: 'http://localhost:52658'\r\n },\r\n appInsights: {\r\n instrumentationKey: '00592078-21ef-4c64-a8a7-86d095f0fdfd'\r\n }\r\n};\r\n","import { Environment } from './model/Environment';\r\ndeclare function require(moduleName: string): any;\r\n\r\nexport const environment: Environment = {\r\n target: 'test',\r\n useMock: false,\r\n production: true,\r\n worldpayEnabled: true,\r\n hideLogin: false,\r\n version: require('../../package.json').version,\r\n analytics: 'UA-112004006-1',\r\n webRoot: 'https://devportalweb.mygphc.org',\r\n maintenanceAPIURL: 'https://webapp-t1dev-maintapi-4874.azurewebsites.net',\r\n sso: {\r\n // pwdreset: 'https://login.microsoftonline.com/GPHCDEVAADB2C.onmicrosoft.com/oauth2/v2.0/authorize?p=B2C_1_Auth-PasswordReset',\r\n pwdreset: 'https://login-dev.mygphc.org/tfp/GPHCDEVAADB2C.onmicrosoft.com/B2C_1_Auth-PasswordResetNew',\r\n redirectUri: 'https://devportalweb.mygphc.org',\r\n postLogoutRedirectUri: 'https://devportalweb.mygphc.org',\r\n b2cScopes: ['https://GPHCDEVAADB2C.onmicrosoft.com/webapp-t1dev-mygphcapi-6eb6/user_impersonation', 'offline_access'],\r\n authority: 'https://login-dev.mygphc.org/tfp/GPHCDEVAADB2C.onmicrosoft.com/B2C_1_Auth-SignUpInNew',\r\n clientID: 'b9c1d5db-e2fc-49ee-a1a4-588a7be1c3c6'\r\n },\r\n api: {\r\n root: 'https://webapp-t1dev-mygphcapi-6eb6.azurewebsites.net',\r\n admin: 'https://webapp-t1dev-mygphcadminapi-6eb6.azurewebsites.net'\r\n },\r\n appInsights: {\r\n instrumentationKey: '00592078-21ef-4c64-a8a7-86d095f0fdfd'\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","var map = {\n\t\"./af\": 58685,\n\t\"./af.js\": 58685,\n\t\"./ar\": 254,\n\t\"./ar-dz\": 4312,\n\t\"./ar-dz.js\": 4312,\n\t\"./ar-kw\": 32614,\n\t\"./ar-kw.js\": 32614,\n\t\"./ar-ly\": 18630,\n\t\"./ar-ly.js\": 18630,\n\t\"./ar-ma\": 28674,\n\t\"./ar-ma.js\": 28674,\n\t\"./ar-ps\": 46235,\n\t\"./ar-ps.js\": 46235,\n\t\"./ar-sa\": 49032,\n\t\"./ar-sa.js\": 49032,\n\t\"./ar-tn\": 24730,\n\t\"./ar-tn.js\": 24730,\n\t\"./ar.js\": 254,\n\t\"./az\": 53052,\n\t\"./az.js\": 53052,\n\t\"./be\": 60150,\n\t\"./be.js\": 60150,\n\t\"./bg\": 63069,\n\t\"./bg.js\": 63069,\n\t\"./bm\": 13466,\n\t\"./bm.js\": 13466,\n\t\"./bn\": 18516,\n\t\"./bn-bd\": 90557,\n\t\"./bn-bd.js\": 90557,\n\t\"./bn.js\": 18516,\n\t\"./bo\": 26273,\n\t\"./bo.js\": 26273,\n\t\"./br\": 9588,\n\t\"./br.js\": 9588,\n\t\"./bs\": 19815,\n\t\"./bs.js\": 19815,\n\t\"./ca\": 83331,\n\t\"./ca.js\": 83331,\n\t\"./cs\": 21320,\n\t\"./cs.js\": 21320,\n\t\"./cv\": 72219,\n\t\"./cv.js\": 72219,\n\t\"./cy\": 68266,\n\t\"./cy.js\": 68266,\n\t\"./da\": 66427,\n\t\"./da.js\": 66427,\n\t\"./de\": 67435,\n\t\"./de-at\": 52871,\n\t\"./de-at.js\": 52871,\n\t\"./de-ch\": 41924,\n\t\"./de-ch.js\": 41924,\n\t\"./de.js\": 67435,\n\t\"./dv\": 82357,\n\t\"./dv.js\": 82357,\n\t\"./el\": 95649,\n\t\"./el.js\": 95649,\n\t\"./en-au\": 59961,\n\t\"./en-au.js\": 59961,\n\t\"./en-ca\": 10860,\n\t\"./en-ca.js\": 10860,\n\t\"./en-gb\": 3924,\n\t\"./en-gb.js\": 3924,\n\t\"./en-ie\": 70864,\n\t\"./en-ie.js\": 70864,\n\t\"./en-il\": 91579,\n\t\"./en-il.js\": 91579,\n\t\"./en-in\": 30940,\n\t\"./en-in.js\": 30940,\n\t\"./en-nz\": 16181,\n\t\"./en-nz.js\": 16181,\n\t\"./en-sg\": 44301,\n\t\"./en-sg.js\": 44301,\n\t\"./eo\": 85291,\n\t\"./eo.js\": 85291,\n\t\"./es\": 54529,\n\t\"./es-do\": 53764,\n\t\"./es-do.js\": 53764,\n\t\"./es-mx\": 12584,\n\t\"./es-mx.js\": 12584,\n\t\"./es-us\": 63425,\n\t\"./es-us.js\": 63425,\n\t\"./es.js\": 54529,\n\t\"./et\": 35203,\n\t\"./et.js\": 35203,\n\t\"./eu\": 70678,\n\t\"./eu.js\": 70678,\n\t\"./fa\": 83483,\n\t\"./fa.js\": 83483,\n\t\"./fi\": 96262,\n\t\"./fi.js\": 96262,\n\t\"./fil\": 52521,\n\t\"./fil.js\": 52521,\n\t\"./fo\": 34555,\n\t\"./fo.js\": 34555,\n\t\"./fr\": 63131,\n\t\"./fr-ca\": 88239,\n\t\"./fr-ca.js\": 88239,\n\t\"./fr-ch\": 21702,\n\t\"./fr-ch.js\": 21702,\n\t\"./fr.js\": 63131,\n\t\"./fy\": 267,\n\t\"./fy.js\": 267,\n\t\"./ga\": 23821,\n\t\"./ga.js\": 23821,\n\t\"./gd\": 71753,\n\t\"./gd.js\": 71753,\n\t\"./gl\": 4074,\n\t\"./gl.js\": 4074,\n\t\"./gom-deva\": 92762,\n\t\"./gom-deva.js\": 92762,\n\t\"./gom-latn\": 5969,\n\t\"./gom-latn.js\": 5969,\n\t\"./gu\": 82809,\n\t\"./gu.js\": 82809,\n\t\"./he\": 45402,\n\t\"./he.js\": 45402,\n\t\"./hi\": 315,\n\t\"./hi.js\": 315,\n\t\"./hr\": 10410,\n\t\"./hr.js\": 10410,\n\t\"./hu\": 38288,\n\t\"./hu.js\": 38288,\n\t\"./hy-am\": 67928,\n\t\"./hy-am.js\": 67928,\n\t\"./id\": 71334,\n\t\"./id.js\": 71334,\n\t\"./is\": 86959,\n\t\"./is.js\": 86959,\n\t\"./it\": 34864,\n\t\"./it-ch\": 51124,\n\t\"./it-ch.js\": 51124,\n\t\"./it.js\": 34864,\n\t\"./ja\": 36141,\n\t\"./ja.js\": 36141,\n\t\"./jv\": 29187,\n\t\"./jv.js\": 29187,\n\t\"./ka\": 42136,\n\t\"./ka.js\": 42136,\n\t\"./kk\": 94332,\n\t\"./kk.js\": 94332,\n\t\"./km\": 18607,\n\t\"./km.js\": 18607,\n\t\"./kn\": 84305,\n\t\"./kn.js\": 84305,\n\t\"./ko\": 70234,\n\t\"./ko.js\": 70234,\n\t\"./ku\": 16003,\n\t\"./ku-kmr\": 19619,\n\t\"./ku-kmr.js\": 19619,\n\t\"./ku.js\": 16003,\n\t\"./ky\": 75061,\n\t\"./ky.js\": 75061,\n\t\"./lb\": 32786,\n\t\"./lb.js\": 32786,\n\t\"./lo\": 66183,\n\t\"./lo.js\": 66183,\n\t\"./lt\": 50029,\n\t\"./lt.js\": 50029,\n\t\"./lv\": 24169,\n\t\"./lv.js\": 24169,\n\t\"./me\": 68577,\n\t\"./me.js\": 68577,\n\t\"./mi\": 68177,\n\t\"./mi.js\": 68177,\n\t\"./mk\": 50337,\n\t\"./mk.js\": 50337,\n\t\"./ml\": 65260,\n\t\"./ml.js\": 65260,\n\t\"./mn\": 52325,\n\t\"./mn.js\": 52325,\n\t\"./mr\": 14695,\n\t\"./mr.js\": 14695,\n\t\"./ms\": 75334,\n\t\"./ms-my\": 37151,\n\t\"./ms-my.js\": 37151,\n\t\"./ms.js\": 75334,\n\t\"./mt\": 63570,\n\t\"./mt.js\": 63570,\n\t\"./my\": 97963,\n\t\"./my.js\": 97963,\n\t\"./nb\": 88028,\n\t\"./nb.js\": 88028,\n\t\"./ne\": 86638,\n\t\"./ne.js\": 86638,\n\t\"./nl\": 50302,\n\t\"./nl-be\": 66782,\n\t\"./nl-be.js\": 66782,\n\t\"./nl.js\": 50302,\n\t\"./nn\": 33501,\n\t\"./nn.js\": 33501,\n\t\"./oc-lnc\": 50563,\n\t\"./oc-lnc.js\": 50563,\n\t\"./pa-in\": 50869,\n\t\"./pa-in.js\": 50869,\n\t\"./pl\": 65302,\n\t\"./pl.js\": 65302,\n\t\"./pt\": 49687,\n\t\"./pt-br\": 74884,\n\t\"./pt-br.js\": 74884,\n\t\"./pt.js\": 49687,\n\t\"./ro\": 79107,\n\t\"./ro.js\": 79107,\n\t\"./ru\": 33627,\n\t\"./ru.js\": 33627,\n\t\"./sd\": 30355,\n\t\"./sd.js\": 30355,\n\t\"./se\": 83427,\n\t\"./se.js\": 83427,\n\t\"./si\": 11848,\n\t\"./si.js\": 11848,\n\t\"./sk\": 54590,\n\t\"./sk.js\": 54590,\n\t\"./sl\": 20184,\n\t\"./sl.js\": 20184,\n\t\"./sq\": 56361,\n\t\"./sq.js\": 56361,\n\t\"./sr\": 78965,\n\t\"./sr-cyrl\": 81287,\n\t\"./sr-cyrl.js\": 81287,\n\t\"./sr.js\": 78965,\n\t\"./ss\": 25456,\n\t\"./ss.js\": 25456,\n\t\"./sv\": 70451,\n\t\"./sv.js\": 70451,\n\t\"./sw\": 77558,\n\t\"./sw.js\": 77558,\n\t\"./ta\": 51356,\n\t\"./ta.js\": 51356,\n\t\"./te\": 73693,\n\t\"./te.js\": 73693,\n\t\"./tet\": 21243,\n\t\"./tet.js\": 21243,\n\t\"./tg\": 42500,\n\t\"./tg.js\": 42500,\n\t\"./th\": 55768,\n\t\"./th.js\": 55768,\n\t\"./tk\": 77761,\n\t\"./tk.js\": 77761,\n\t\"./tl-ph\": 35780,\n\t\"./tl-ph.js\": 35780,\n\t\"./tlh\": 29590,\n\t\"./tlh.js\": 29590,\n\t\"./tr\": 33807,\n\t\"./tr.js\": 33807,\n\t\"./tzl\": 93857,\n\t\"./tzl.js\": 93857,\n\t\"./tzm\": 60654,\n\t\"./tzm-latn\": 8806,\n\t\"./tzm-latn.js\": 8806,\n\t\"./tzm.js\": 60654,\n\t\"./ug-cn\": 30845,\n\t\"./ug-cn.js\": 30845,\n\t\"./uk\": 19232,\n\t\"./uk.js\": 19232,\n\t\"./ur\": 47052,\n\t\"./ur.js\": 47052,\n\t\"./uz\": 77967,\n\t\"./uz-latn\": 32233,\n\t\"./uz-latn.js\": 32233,\n\t\"./uz.js\": 77967,\n\t\"./vi\": 98615,\n\t\"./vi.js\": 98615,\n\t\"./x-pseudo\": 12320,\n\t\"./x-pseudo.js\": 12320,\n\t\"./yo\": 31313,\n\t\"./yo.js\": 31313,\n\t\"./zh-cn\": 64490,\n\t\"./zh-cn.js\": 64490,\n\t\"./zh-hk\": 55910,\n\t\"./zh-hk.js\": 55910,\n\t\"./zh-mo\": 98262,\n\t\"./zh-mo.js\": 98262,\n\t\"./zh-tw\": 44223,\n\t\"./zh-tw.js\": 44223\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 = 46700;","/* (ignored) */"],"names":["i0","ɵɵelementStart","ɵɵelement","ɵɵelementEnd","ɵɵadvance","ɵɵproperty","ctx_r0","user","address","contact","AccountComponent","constructor","authService","loading","ngOnInit","_","ɵɵdirectiveInject","i1","AuthService","_2","selectors","decls","vars","consts","template","AccountComponent_Template","rf","ctx","ɵɵtext","ɵɵtemplate","AccountComponent_div_7_Template","CommonModule","FormsModule","ReactiveFormsModule","SharedModule","RouterModule","AddressComponent","AddressEditableComponent","AddressEditComponent","AddressSearchComponent","ContactEditableComponent","ContactEditComponent","ContactComponent","PreferenceEditableComponent","EmailConfirmationComponent","AccountActivationComponent","RegistrantActivationComponent","StudentActivationComponent","PreferenceDialogComponent","LoginComponent","SigninFaqComponent","MatStepperModule","DobComponent","MatFormFieldModule","UserBadgeComponent","EdiComponent","EdiSummaryComponent","ApplicantComponent","NotificationsComponent","NotificationContentComponent","CommsPreferencesComponent","HasCheckedRegistrationDialogComponent","PreregActivationComponent","TechnicianActivationComponent","TechnicianConfirmationComponent","BrowserDialogComponent","AccountModule","_3","declarations","imports","exports","ActivationType","ɵɵlistener","AccountActivationComponent_ng_template_9_div_1_Template_button_click_5_listener","ɵɵrestoreView","_r7","ctx_r6","ɵɵnextContext","ɵɵresetView","selectRole","Technician","AccountActivationComponent_ng_template_9_div_1_Template_button_click_10_listener","ctx_r8","Student","AccountActivationComponent_ng_template_9_div_1_Template_button_click_15_listener","ctx_r9","Prereg","AccountActivationComponent_ng_template_9_div_1_Template_button_click_20_listener","ctx_r10","Registrant","ɵɵclassProp","ctx_r4","selectedRole","AccountActivationComponent_ng_template_9_div_2_app_technician_activation_2_Template_app_technician_activation_activationChange_0_listener","$event","_r16","ctx_r15","activation","AccountActivationComponent_ng_template_9_div_2_app_technician_activation_2_Template_app_technician_activation_stepChange_0_listener","ctx_r17","navigateTo","step_r3","ctx_r11","currentStep","AccountActivationComponent_ng_template_9_div_2_app_student_activation_3_Template_app_student_activation_activationChange_0_listener","_r20","ctx_r19","AccountActivationComponent_ng_template_9_div_2_app_student_activation_3_Template_app_student_activation_stepChange_0_listener","ctx_r21","ctx_r12","AccountActivationComponent_ng_template_9_div_2_app_prereg_activation_4_Template_app_prereg_activation_activationChange_0_listener","_r24","ctx_r23","AccountActivationComponent_ng_template_9_div_2_app_prereg_activation_4_Template_app_prereg_activation_stepChange_0_listener","ctx_r25","ctx_r13","AccountActivationComponent_ng_template_9_div_2_app_registrant_activation_5_Template_app_registrant_activation_stepChange_0_listener","_r28","ctx_r27","AccountActivationComponent_ng_template_9_div_2_app_registrant_activation_5_Template_app_registrant_activation_activationChange_0_listener","ctx_r29","ctx_r14","AccountActivationComponent_ng_template_9_div_2_app_technician_activation_2_Template","AccountActivationComponent_ng_template_9_div_2_app_student_activation_3_Template","AccountActivationComponent_ng_template_9_div_2_app_prereg_activation_4_Template","AccountActivationComponent_ng_template_9_div_2_app_registrant_activation_5_Template","ctx_r5","AccountActivationComponent_ng_template_9_div_1_Template","AccountActivationComponent_ng_template_9_div_2_Template","layout","steps","preregActivationDisabled","setAccountMode","step","undefined","role","forenames","surname","middleName","dob","registrationNumber","name","confirmed","postcode","activationCode","lastname","qualification","LayoutService","AccountActivationComponent_Template","AccountActivationComponent_ng_template_9_Template","ɵɵtemplateRefExtractor","_r0","EventEmitter","moment","month_r2","id","ɵɵtextInterpolate","selected","yearSupplied","invalid","value","day","month","year","months","days","isValid","selectedMonth","filter","parseInt","isNaN","toString","length","IsUserEighteen","dobMoment","monthDiff","diff","yearEntered","validate","validateMonth","emit","entered","outputs","DobComponent_Template","DobComponent_Template_select_ngModelChange_5_listener","DobComponent_option_7_Template","DobComponent_Template_input_ngModelChange_9_listener","DobComponent_Template_input_ngModelChange_11_listener","DobComponent_Template_input_blur_11_listener","throwError","observableThrowError","ConfirmDialogComponent","CourseType","courseType_r5","course_r6","courseName","PreregActivationComponent_section_0_Template_input_ngModelChange_7_listener","_r8","ctx_r7","PreregActivationComponent_section_0_Template_app_dob_selected_9_listener","dobSelected","PreregActivationComponent_section_0_Template_select_ngModelChange_13_listener","selectedCourseType","populateCourses","PreregActivationComponent_section_0_option_16_Template","PreregActivationComponent_section_0_Template_select_ngModelChange_18_listener","qualificationId","PreregActivationComponent_section_0_option_21_Template","PreregActivationComponent_section_0_Template_button_click_26_listener","activate","PreregActivationComponent_section_0_Template_button_click_28_listener","prev","courseTypes","coursesForSelectedCourseType","activationFailed","serverErrors","PreregActivationComponent_section_1_Template_button_click_8_listener","logout","ctx_r1","service","studentService","auth","dialog","log","saving","qualifications","stepChange","invalidDetails","active","isActive","setFocus","Object","keys","key","map","getQualifications","subscribe","q","courseType","sort","a","b","setTimeout","vc","first","nativeElement","focus","bind","verifyPrereg","data","confirm","fullName","beforeClosed","response","activatePrereg","error","validationErrors","catch","status","fullname","dialogRef","open","title","message","AccountService","i2","StudentService","i3","i4","MatDialog","i5","LogService","viewQuery","PreregActivationComponent_Query","PreregActivationComponent_section_0_Template","PreregActivationComponent_section_1_Template","RegistrantActivationComponent_section_0_Template_input_ngModelChange_7_listener","_r6","clearErrors","RegistrantActivationComponent_section_0_Template_input_keydown_enter_7_listener","verifyRegistrationNumber","RegistrantActivationComponent_section_0_Template_button_click_15_listener","RegistrantActivationComponent_section_0_Template_button_click_17_listener","invalidRegistrationNumber","RegistrantActivationComponent_section_1_Template_button_click_9_listener","_r13","RegistrantActivationComponent_section_1_Template_button_click_12_listener","incorrect","ɵɵtextInterpolate1","RegistrantActivationComponent_section_2_Template_input_ngModelChange_7_listener","_r17","ctx_r16","RegistrantActivationComponent_section_2_Template_app_dob_selected_9_listener","ctx_r18","RegistrantActivationComponent_section_2_Template_input_keydown_enter_13_listener","RegistrantActivationComponent_section_2_Template_input_ngModelChange_13_listener","ctx_r20","RegistrantActivationComponent_section_2_Template_button_click_21_listener","ctx_r2","RegistrantActivationComponent_section_3_Template_button_click_8_listener","_r23","ctx_r22","activationChange","err","activateRegistration","RegistrantActivationComponent_Query","RegistrantActivationComponent_section_0_Template","RegistrantActivationComponent_section_1_Template","RegistrantActivationComponent_section_2_Template","RegistrantActivationComponent_section_3_Template","StudentActivationComponent_section_0_Template_input_ngModelChange_7_listener","StudentActivationComponent_section_0_Template_app_dob_selected_9_listener","StudentActivationComponent_section_0_Template_select_ngModelChange_13_listener","StudentActivationComponent_section_0_option_16_Template","StudentActivationComponent_section_0_Template_select_ngModelChange_18_listener","StudentActivationComponent_section_0_option_21_Template","StudentActivationComponent_section_0_Template_button_click_26_listener","StudentActivationComponent_section_0_Template_button_click_28_listener","StudentActivationComponent_section_1_Template_button_click_8_listener","verifyStudent","activateStudent","console","StudentActivationComponent_Query","StudentActivationComponent_section_0_Template","StudentActivationComponent_section_1_Template","TechnicianConfirmationComponent_app_carousel_11_ng_template_1_div_1_Template_button_click_25_listener","selectWhetherConfirmed","TechnicianConfirmationComponent_app_carousel_11_ng_template_1_div_1_Template_button_click_28_listener","ɵɵsanitizeHtml","ɵɵpipeBind1","selectedAnswer","confirmationFailed","TechnicianConfirmationComponent_app_carousel_11_ng_template_1_div_2_section_2_Template","TechnicianConfirmationComponent_app_carousel_11_ng_template_1_div_2_section_3_Template","TechnicianConfirmationComponent_app_carousel_11_ng_template_1_div_1_Template","TechnicianConfirmationComponent_app_carousel_11_ng_template_1_div_2_Template","step_r4","TechnicianConfirmationComponent_app_carousel_11_ng_template_1_Template","_r1","technicianService","getTechnicianDetails","technicianDetails","answer","confirmTechnicianDetails","TechnicianService","TechnicianConfirmationComponent_Template","TechnicianConfirmationComponent_app_carousel_11_Template","TechnicianActivationComponent_section_0_Template_input_ngModelChange_12_listener","TechnicianActivationComponent_section_0_Template_input_ngModelChange_17_listener","TechnicianActivationComponent_section_0_Template_input_ngModelChange_22_listener","TechnicianActivationComponent_section_0_Template_app_dob_selected_24_listener","TechnicianActivationComponent_section_0_Template_button_click_29_listener","tempSignUp","TechnicianActivationComponent_section_0_Template_button_click_31_listener","TechnicianActivationComponent_Query","TechnicianActivationComponent_section_0_Template","TechnicianActivationComponent_section_1_Template","forwardRef","Address","NG_VALUE_ACCESSOR","CountriesOfUK","getCountryName","HomeNationTypes","UK","x_r13","x_r16","homeNation","country","AddressComponent_div_2_div_75_Template_app_gphc_icon_click_4_listener","_r18","showTooltip","AddressComponent_div_2_div_75_Template_select_ngModelChange_12_listener","AddressComponent_div_2_div_75_Template_select_change_12_listener","propagate","AddressComponent_div_2_div_75_option_14_Template","_r14","touched","tooltip","UKcountries","errors","required","AddressComponent_div_2_Template_input_ngModelChange_6_listener","_r22","line1","AddressComponent_div_2_Template_input_blur_6_listener","AddressComponent_div_2_Template_input_ngModelChange_18_listener","ctx_r24","line2","AddressComponent_div_2_Template_input_blur_18_listener","AddressComponent_div_2_Template_input_ngModelChange_26_listener","ctx_r26","line3","AddressComponent_div_2_Template_input_blur_26_listener","AddressComponent_div_2_Template_input_ngModelChange_34_listener","ctx_r28","town","AddressComponent_div_2_Template_input_blur_34_listener","AddressComponent_div_2_Template_input_ngModelChange_45_listener","ctx_r30","county","AddressComponent_div_2_Template_input_blur_45_listener","ctx_r31","AddressComponent_div_2_Template_input_ngModelChange_53_listener","ctx_r32","AddressComponent_div_2_Template_input_blur_53_listener","ctx_r33","AddressComponent_div_2_Template_select_ngModelChange_64_listener","ctx_r34","AddressComponent_div_2_Template_select_change_64_listener","ctx_r35","onCountryChange","AddressComponent_div_2_option_68_Template","AddressComponent_div_2_div_75_Template","_r4","inputValidator","_r5","_r9","_r10","countries","uk_fullForm","AddressComponent_div_3_div_1_Template_input_ngModelChange_3_listener","_r47","ctx_r46","AddressComponent_div_3_div_1_Template_input_blur_3_listener","ctx_r48","ctx_r36","_r45","ctx_r37","ctx_r38","ctx_r39","ctx_r40","ctx_r41","ctx_r42","ctx_r43","residentCountry","AddressComponent_div_3_div_1_Template","AddressComponent_div_3_div_2_Template","AddressComponent_div_3_div_3_Template","AddressComponent_div_3_div_4_Template","AddressComponent_div_3_div_5_Template","AddressComponent_div_3_div_6_Template","AddressComponent_div_3_div_7_Template","AddressComponent_div_3_div_12_Template","lineOneEditable","manualInput","countryChange","content","width","placement","order","propagateChange","model","setAddress","setManualInput","lineOneFocussed","getCountries","form","valid","checkIfAddressWasChanged","writeValue","emptyObj","currentAddress","assign","registerOnChange","fn","registerOnTouched","Other","latitude","longitude","updateAddress","JSON","stringify","erasePreviousDetails","countryCode","AddressComponent_Query","provide","useExisting","multi","AddressComponent_Template","AddressComponent_div_2_Template","AddressComponent_div_3_Template","AddressEditComponent_button_6_Template_button_click_0_listener","ctx_r3","reselect","AddressEditComponent_button_8_Template_button_click_0_listener","editing","addressedit","enableManualInput","onSelect","AddressEditComponent_Query","AddressEditComponent_Template","AddressEditComponent_Template_app_address_search_selected_1_listener","AddressEditComponent_Template_app_address_search_manualInput_1_listener","AddressEditComponent_Template_app_address_ngModelChange_3_listener","AddressEditComponent_button_6_Template","AddressEditComponent_button_8_Template","AddressEditableComponent_div_3_div_1_Template","townChanged","selectedAddress","creating","searching","cancel","editingAddress","addressSelected","onEdit","save","saveAddress","result","updateCachedAddress","inputs","AddressEditableComponent_Template","AddressEditableComponent_Template_app_form_section_onEdit_0_listener","AddressEditableComponent_Template_app_form_section_onCancel_0_listener","AddressEditableComponent_Template_app_form_section_onSave_0_listener","AddressEditableComponent_div_3_Template","AddressEditableComponent_Template_app_address_search_selected_6_listener","AddressEditableComponent_Template_app_address_search_manualInput_6_listener","Validators","FormGroup","FormControl","debounceTime","x_r3","AddressSearchComponent_li_26_Template_button_click_1_listener","restoredCtx","result_r4","$implicit","select","ɵɵtextInterpolate2","text","description","search","isUK","markAsUntouched","addressForm","get","ukPostcodePattern","pattern","valueChanges","pipe","newValue","searchAddress","controls","setValidators","setValue","markAsTouched","results","type","getAddress","AddressSearchComponent_Query","AddressSearchComponent_option_5_Template","AddressSearchComponent_li_26_Template","AddressSearchComponent_Template_button_click_28_listener","startWith","option_r11","ApplicantComponent_section_0_div_1_mat_option_9_Template","salutation","readonly","filteredSalutations","option_r15","ApplicantComponent_section_0_div_2_mat_option_9_Template","applicant","preEntryNumber","dateOfBirth","ApplicantComponent_section_0_div_22_div_1_Template","ApplicantComponent_section_0_div_22_div_2_Template","isAssessmentRegistration","isTechnician","option_r20","ApplicantComponent_section_0_div_23_div_1_Template_select_ngModelChange_4_listener","equalityDiversity","nationality","ApplicantComponent_section_0_div_23_div_1_option_7_Template","noNationality","zero","nationalities","ApplicantComponent_section_0_div_23_div_1_Template","ApplicantComponent_section_0_div_1_Template","ApplicantComponent_section_0_div_2_Template","ApplicantComponent_section_0_div_19_Template","ApplicantComponent_section_0_div_20_Template","ApplicantComponent_section_0_div_21_Template","ApplicantComponent_section_0_div_22_Template","ApplicantComponent_section_0_div_23_Template","isAssessmentReport","isStudent","salutations","loadSalutations","loadNationalities","getSalutations","push","val","item","toLowerCase","getEdiOptions","sections","find","section","groups","ethnicity","ethnicityOther","religion","religionOther","disabled","disabilityDetails","gender","sexualOrientation","option","indexOf","ApplicantComponent_Query","ApplicantComponent_Template","ApplicantComponent_section_0_Template","MAT_DIALOG_DATA","defaultMessage","defaultTitle","defaultAlertTitle","isNotEdge","isBlockedByCookies","alertTitle","reload","window","location","close","MatDialogRef","BrowserDialogComponent_Template","BrowserDialogComponent_p_9_Template","BrowserDialogComponent_p_10_Template","BrowserDialogComponent_Template_button_click_12_listener","SaveState","CommsPreferencesComponent_div_0_Template_mat_checkbox_ngModelChange_11_listener","comms","essentialEmails","CommsPreferencesComponent_div_0_Template_mat_checkbox_ngModelChange_16_listener","essentialTexts","CommsPreferencesComponent_div_0_Template_mat_checkbox_ngModelChange_26_listener","importantEmails","CommsPreferencesComponent_div_0_Template_mat_checkbox_ngModelChange_30_listener","importantTexts","CommsPreferencesComponent_div_0_div_32_Template","requireMobile","CommsPreferencesComponent_div_1_div_3_span_6_Template","CommsPreferencesComponent_div_1_div_3_span_7_Template","CommsPreferencesComponent_div_1_div_3_span_14_Template","CommsPreferencesComponent_div_1_div_3_span_15_Template","CommsPreferencesComponent_div_1_div_5_span_3_Template","CommsPreferencesComponent_div_1_div_5_span_4_Template","CommsPreferencesComponent_div_1_div_5_span_11_Template","CommsPreferencesComponent_div_1_div_5_span_12_Template","CommsPreferencesComponent_div_1_div_2_Template","CommsPreferencesComponent_div_1_div_3_Template","CommsPreferencesComponent_div_1_div_4_Template","CommsPreferencesComponent_div_1_div_5_Template","CommsPreferencesComponent_div_1_div_6_Template","warning","Warning","Three","Four","Five","Six","Seven","None","combinations","showWarnings","saveStateChange","saveState","untouched","setState","state","mobilePhone","confirmationRequired","CommsPreferencesComponent_Template","CommsPreferencesComponent_div_0_Template","CommsPreferencesComponent_div_1_Template","getEmailValue","awaitingEmailConfirmation","email","ContactComponent_Template","ContactComponent_div_4_Template","telephone1","Contact","error_r6","ContactEditComponent_div_2_Template_input_ngModelChange_3_listener","ContactEditComponent_div_2_Template_input_blur_3_listener","ContactEditComponent_div_2_p_7_Template","emailReadonly","serverEmailErrors","dirty","phoneNumberReadonly","emailNotRequire","ukMobTooltip","trim","ContactEditComponent_Query","ContactEditComponent_Template","ContactEditComponent_div_2_Template","ContactEditComponent_Template_input_ngModelChange_7_listener","ContactEditComponent_Template_input_blur_7_listener","ContactEditComponent_Template_input_ngModelChange_15_listener","ContactEditComponent_Template_input_blur_15_listener","_r2","emailErrors","editableContact","saveContact","requestEmailUpdate","emailResult","updateCachedContact","e","property","ContactEditableComponent_Template","ContactEditableComponent_Template_app_form_section_onEdit_0_listener","ContactEditableComponent_Template_app_form_section_onCancel_0_listener","ContactEditableComponent_Template_app_form_section_onSave_0_listener","option_r6","EdiComponent_div_5_div_4_Template","ɵɵattribute","item_r4","group","subGroups","option_r14","EdiComponent_section_16_mat_radio_group_5_Template_mat_radio_group_ngModelChange_0_listener","section_r7","selection","i_r8","index","sectionSelected","EdiComponent_section_16_mat_radio_group_5_div_2_Template","option_r22","EdiComponent_section_16_div_6_Template_select_ngModelChange_1_listener","EdiComponent_section_16_div_6_option_4_Template","EdiComponent_section_16_mat_radio_group_5_Template","EdiComponent_section_16_div_6_Template","EdiComponent_section_16_Template_input_blur_11_listener","_r30","EdiComponent_section_16_Template_input_ngModelChange_11_listener","other","isOtherSection","isOtherSectionMandatory","_r11","notSelected","selectionFromModel","ethnicitySelected","isOtherEthnicity","ethnicityOtherInput","edi","selectionToModel","EdiService","EdiComponent_Query","EdiComponent_Template","EdiComponent_Template_mat_radio_group_ngModelChange_4_listener","EdiComponent_div_5_Template","EdiComponent_Template_input_blur_10_listener","EdiComponent_Template_input_ngModelChange_10_listener","EdiComponent_section_16_Template","Ethnicity","options","i_r5","ɵɵelementContainerStart","EdiSummaryComponent_ng_container_0_ng_container_2_div_1_Template","EdiSummaryComponent_ng_container_0_ng_container_2_div_2_Template","ɵɵelementContainerEnd","EdiSummaryComponent_ng_container_0_ng_container_2_Template","summary","getSummary","EdiSummaryComponent_Template","EdiSummaryComponent_ng_container_0_Template","EdiSummaryComponent_ng_template_1_Template","route","router","token","snapshot","queryParams","confirmEmail","success","updatedEmail","newEmailAddress","isLoggedIn","userId","disableClose","allowCancel","confirmText","afterClosed","navigate","ActivatedRoute","Router","EmailConfirmationComponent_Template","EmailConfirmationComponent_div_4_Template","EmailConfirmationComponent_div_5_Template","EmailConfirmationComponent_div_6_Template","accountService","hasViewedPage","checkDetails","then","hasCheckedRegistrationDetails","updateCachedHasCheckedRegistrationDetails","HasCheckedRegistrationDialogComponent_Template","HasCheckedRegistrationDialogComponent_Template_button_click_5_listener","environment","LoggedInState","LoginComponent_button_2_Template_button_click_0_listener","signin","LoginComponent_div_4_ng_container_2_Template_button_click_1_listener","LoginComponent_div_4_ng_container_2_Template_a_click_5_listener","goToSignInFaq","LoginComponent_div_4_ng_container_2_Template","maintenance","stateOfLogin$","loginMessage","redirecting","forgotPassword","acquireTokenFailed","loggedOut","showLogin","checkBrowserForPopup","loggedInStateSub","loggedInState$","onLoggedInStateChange","loggedInState","loggedIn","enter","getNotifications","showPreferences","checkLoggedInState","getOs","startCheckingNotificationCount","preferencesNotSet","showPreferenceModal","checkHasCheckedRegistrationDetails","tryGettingTechnicianDetails","redirectToConfirmation","cannotGetTechnicianDetails","redirectToActivation","acquireTokenFail","loginRedirect","getLoginMessage","attemptAcquireTokenSilently","loadingUser","dev","isRegistrant","hasCheckedRegistration","showHasCheckedRegistrationModal","login","ngOnDestroy","OSName","navigator","appVersion","getBrowser","nVer","nAgt","userAgent","browserName","appName","fullVersion","parseFloat","majorVersion","nameOffset","verOffset","ix","substring","lastIndexOf","toUpperCase","navigatorAppName","navigatorUserAgent","obj","iE","match","i6","MaintenanceMessageService","i7","LoginComponent_Template","LoginComponent_button_2_Template","LoginComponent_div_4_Template","LoginComponent_div_5_Template","LoginComponent_mat_progress_bar_7_Template","LoginComponent_mat_progress_bar_8_Template","LoginComponent_ng_template_9_Template","concat","delimiter","NotificationType","RegistrantStatus","User","showAccountTab","registrant","registrationStatus","postalTown","isTechnicianApplicant","technician","isReviewer","reviewer","isPrereg","roles","isSandwichStudent","PreRegistrationTraineeS","isJustReviewer","showNoticeOfEntry","now","Date","joined","joinedDate","joinedPlusOneYear","setFullYear","getFullYear","golive","toJson","preference","showReceipts","sender","RenewalDate","ɵɵpureFunction0","_c0","_c1","_c2","_c3","ɵɵpropertyInterpolate1","SubmissionId","ɵɵpipeBind2","ReviewDeadline","FeedbackDate","ReviewTitle","ɵɵpureFunction1","_c4","ReviewId","EstimatedDaysToProcess","ɵɵelementContainer","NotificationContentComponent_ng_container_28_ng_container_1_Template","_r100","NotificationContentComponent_ng_container_29_ng_container_1_Template","NotificationContentComponent_ng_container_30_ng_container_1_Template","NotificationContentComponent_ng_container_31_ng_container_1_Template","_c5","_c6","ctx_r44","ctx_r45","ctx_r47","ApplicationNumber","ctx_r49","ctx_r50","ctx_r51","ctx_r52","ctx_r53","ctx_r54","ctx_r55","ctx_r56","ctx_r57","ctx_r58","ctx_r59","ctx_r60","ctx_r61","ctx_r62","ctx_r63","ctx_r64","ctx_r65","_c7","_c8","NotificationContentComponent_ng_container_67_a_5_Template","NotificationContentComponent_ng_container_67_a_6_Template","ctx_r66","ctx_r67","ctx_r68","ctx_r69","ctx_r70","ctx_r71","ctx_r72","ctx_r73","ctx_r74","ctx_r75","ctx_r76","ctx_r77","ctx_r78","ctx_r79","ctx_r80","ctx_r81","ctx_r82","ctx_r83","ctx_r84","ctx_r85","ctx_r86","RegulatoryBodyName","ctx_r87","ctx_r88","ctx_r89","ctx_r90","ctx_r91","ctx_r92","ctx_r93","ctx_r94","ctx_r95","ctx_r96","ctx_r97","VoluntaryRemovalDate","ctx_r98","ctx_r99","_c9","ctx_r101","ReferenceNumber","SubmittedAt","_c10","ExtenuatingCircumstanceId","NotificationContentComponent_Template","NotificationContentComponent_ng_container_1_Template","NotificationContentComponent_ng_container_2_Template","NotificationContentComponent_ng_container_3_Template","NotificationContentComponent_ng_container_4_Template","NotificationContentComponent_ng_container_5_Template","NotificationContentComponent_ng_container_6_Template","NotificationContentComponent_ng_container_7_Template","NotificationContentComponent_ng_container_8_Template","NotificationContentComponent_ng_container_9_Template","NotificationContentComponent_ng_container_10_Template","NotificationContentComponent_ng_container_11_Template","NotificationContentComponent_ng_container_12_Template","NotificationContentComponent_ng_container_13_Template","NotificationContentComponent_ng_container_14_Template","NotificationContentComponent_ng_container_15_Template","NotificationContentComponent_ng_container_16_Template","NotificationContentComponent_ng_container_17_Template","NotificationContentComponent_ng_container_18_Template","NotificationContentComponent_ng_container_19_Template","NotificationContentComponent_ng_container_20_Template","NotificationContentComponent_ng_container_21_Template","NotificationContentComponent_ng_container_22_Template","NotificationContentComponent_ng_container_23_Template","NotificationContentComponent_ng_container_24_Template","NotificationContentComponent_ng_container_25_Template","NotificationContentComponent_ng_container_26_Template","NotificationContentComponent_ng_container_27_Template","NotificationContentComponent_ng_container_28_Template","NotificationContentComponent_ng_container_29_Template","NotificationContentComponent_ng_container_30_Template","NotificationContentComponent_ng_container_31_Template","NotificationContentComponent_ng_container_32_Template","NotificationContentComponent_ng_container_33_Template","NotificationContentComponent_ng_container_34_Template","NotificationContentComponent_ng_container_35_Template","NotificationContentComponent_ng_container_36_Template","NotificationContentComponent_ng_container_37_Template","NotificationContentComponent_ng_container_38_Template","NotificationContentComponent_ng_container_39_Template","NotificationContentComponent_ng_container_40_Template","NotificationContentComponent_ng_container_41_Template","NotificationContentComponent_ng_container_42_Template","NotificationContentComponent_ng_container_43_Template","NotificationContentComponent_ng_container_44_Template","NotificationContentComponent_ng_container_45_Template","NotificationContentComponent_ng_container_46_Template","NotificationContentComponent_ng_container_47_Template","NotificationContentComponent_ng_container_48_Template","NotificationContentComponent_ng_container_49_Template","NotificationContentComponent_ng_container_50_Template","NotificationContentComponent_ng_container_51_Template","NotificationContentComponent_ng_container_52_Template","NotificationContentComponent_ng_container_53_Template","NotificationContentComponent_ng_container_54_Template","NotificationContentComponent_ng_container_55_Template","NotificationContentComponent_ng_container_56_Template","NotificationContentComponent_ng_container_57_Template","NotificationContentComponent_ng_container_58_Template","NotificationContentComponent_ng_container_59_Template","NotificationContentComponent_ng_container_60_Template","NotificationContentComponent_ng_container_61_Template","NotificationContentComponent_ng_container_62_Template","NotificationContentComponent_ng_container_63_Template","NotificationContentComponent_ng_container_64_Template","NotificationContentComponent_ng_container_65_Template","NotificationContentComponent_ng_container_66_Template","NotificationContentComponent_ng_container_67_Template","NotificationContentComponent_ng_container_68_Template","NotificationContentComponent_ng_container_69_Template","NotificationContentComponent_ng_container_70_Template","NotificationContentComponent_ng_container_71_Template","NotificationContentComponent_ng_container_72_Template","NotificationContentComponent_ng_container_73_Template","NotificationContentComponent_ng_container_74_Template","NotificationContentComponent_ng_container_75_Template","NotificationContentComponent_ng_container_76_Template","NotificationContentComponent_ng_container_77_Template","NotificationContentComponent_ng_container_78_Template","NotificationContentComponent_ng_container_79_Template","NotificationContentComponent_ng_container_80_Template","NotificationContentComponent_ng_container_81_Template","NotificationContentComponent_ng_container_82_Template","NotificationContentComponent_ng_container_83_Template","NotificationContentComponent_ng_container_84_Template","NotificationContentComponent_ng_container_85_Template","NotificationContentComponent_ng_container_86_Template","NotificationContentComponent_ng_container_87_Template","NotificationContentComponent_ng_container_88_Template","NotificationContentComponent_ng_container_89_Template","NotificationContentComponent_ng_container_90_Template","NotificationContentComponent_ng_container_91_Template","NotificationContentComponent_ng_container_92_Template","NotificationContentComponent_ng_container_93_Template","NotificationContentComponent_ng_container_94_Template","NotificationContentComponent_ng_container_95_Template","NotificationContentComponent_ng_container_96_Template","NotificationContentComponent_ng_container_97_Template","NotificationContentComponent_ng_container_98_Template","NotificationContentComponent_ng_container_99_Template","NotificationContentComponent_ng_container_100_Template","NotificationContentComponent_ng_template_101_Template","RegistrationFormCountersignatureRequested","ApplicationApprovedPendingAssessmentNotification","IneligibleBasedOnAssessmentNotification","RegistrationPaymentRequiredNotification","RegistrationFormCountersignatureApproved","RegistrationFormCountersignatureRejected","RegistrationFormCountersignatureRefused","RegistrationFormCountersignatureRecalled","RevalidationReminder","RegistryEntryNotification","RegistrationFormFirstYearFeeSuccessful","RegistrationFormApplicationSubmitted","RenewalRevalidationReminderSameDate","RenewalRevalidationReminderPendingExtenuatingCircumstances","RenewalRevalidationReminderExtensionGrantedRenewalDue","RenewalRevalidationReminderExtensionGrantedRevalidationSubmissionDue","RevalidationSubmissionSubmit","RemediationEntered","NoIREntered","NoRIssued","RenewalWindowOpening","RevalidationReviewFeedbackSent","RevalidationReviewAvailable","RevalidationSelectedForReview","RevalidationReviewFeedbackRejected","RevalidationReviewReminder","ExtenuatingCircumstancesSent","ExtenuatingCircumstancesApproved","ExtenuatingCircumstancesPartiallyApproved","ExtenuatingCircumstancesRejected","ExtenuatingCircumstancesRequestResubmit","PreRegistrationFormLearningContractSignatureRequested","PreRegistrationFormLearningContractRecalled","PreRegistrationFormLearningContractApproved","PreRegistrationFormLearningContractRefused","PreRegistrationFormLearningContractRejected","PreRegistrationFormPaymentRequired","PreRegistrationFormApproved","PreRegistrationFormTerminated","PreRegistrationFormWaitingForApplicant","PreRegistrationFormPaymentReceivedAndSubmitted","PreRegistrationFormApprovedWelcomeLetter","PreRegistrationFormLearningContractSignatureRequestedReminder","TechnicianApplicantCountersignatureRequested","TechnicianApplicantCountersignatureApproved","TechnicianApplicantCountersignatureRejected","TechnicianApplicantCountersignatureRefused","TechnicianApplicantCountersignatureRecalled","TechnicianApplicantApplicationSubmitted","TechnicianApplicantFirstYearFeeAvailable","TechnicianApplicantFirstYearFeePaymentSuccessful","TechnicianApplicantApplicationTerminated","TechnicianApplicantApplicationWaitingForApplicant","TechnicianApplicantNoticeOfEntry","ProgressReportThirtNineWeekResultCleared","ProgressReportFormOpenNotification","ProgressReportFormCountersignatureRequest","ProgressReportFormCountersignatureRecalled","ProgressReportFormCountersignatureApproved","ProgressReportFormCountersignatureRejected","ProgressReportFormCountersignatureRefused","ProgressReportTempRegistrationRejected","ProgressReportTempRegistrationAccepted","AssessmentRegistrationApplicationAvailable","AssessmentRegistrationApplicationPaymentSuccessful","AssessmentAttemptApplicationApproved","AssessmentAttemptResultPublished","FiftyTwoWeekFinalDeclarationFormOpenNotification","FinalDeclarationFormCountersignatureRequest","FinalDeclarationFormCountersignatureRecalled","FinalDeclarationFormCountersignatureApproved","FinalDeclarationFormCountersignatureRejected","FinalDeclarationFormCountersignatureRefused","FinalDeclarationFormProvisionalAccepted","FinalDeclarationFormProvisionalRejected","FinalDeclarationFiftyTwoWeekResultCleared","ReturnToRegisterApplicationPendingRestorationFee","ReturnToRegisterApplicationReceivedRevalidationRequired","ReturnToRegisterApplicationReceivedRevalidationNotRequired","ReturnToRegisterApplicationTerminated","ReturnToRegisterApplicationTerminatedNonPayment","ReturnToRegisterApplicationFeePaymentReminder","ReturnToRegisterApplicationApproved","ReturnToRegisterRegistrationStatusUpdated","CertificateProfessionalStandingApplicationSubmitted","CertificateProfessionalStandingWaitingForApplicant","CertificateProfessionalStandingApplicationCompleted","IndependentPrescriberEligibleForApplication","IndependentPrescriberMentorRequestApproved","IndependentPrescriberCountersignatureRecalled","IndependentPrescriberMentorRequestDeclined","IndependentPrescriberMentorRequestRefused","IndependentPrescriberCountersignatureRequested","IndependentPrescriberApplicationNonAutoApproved","IndependentPrescriberApplicationAutoApproved","IndependentPrescriberApplicationApproved","VoluntaryRemovalApplicationReceived","VoluntaryRemovalApplicationApproved","VoluntaryRemovalApplicationAutoApproved","VoluntaryRemovalRegistrationStatusUpdated","trigger","transition","animate","style","NotificationsComponent_ng_container_2_ng_container_1_div_4_Template_div_click_0_listener","item_r15","NotificationsComponent_ng_container_2_ng_container_1_div_4_ng_container_2_Template","selectedItem","deactivatedAt","deactivateManually","NotificationsComponent_ng_container_2_ng_container_1_div_7_i_5_Template","time","NotificationsComponent_ng_container_2_ng_container_1_ng_container_3_Template","NotificationsComponent_ng_container_2_ng_container_1_div_4_Template","NotificationsComponent_ng_container_2_ng_container_1_div_7_Template","notifications","NotificationsComponent_ng_container_2_ng_container_2_ng_container_2_Template_div_click_2_listener","_r27","item_r23","NotificationsComponent_ng_container_2_ng_container_2_ng_container_2_ng_container_4_Template","NotificationsComponent_ng_container_2_ng_container_2_ng_container_2_div_6_Template","NotificationsComponent_ng_container_2_ng_container_2_ng_container_1_Template","NotificationsComponent_ng_container_2_ng_container_2_ng_container_2_Template","NotificationsComponent_ng_container_2_ng_container_1_Template","NotificationsComponent_ng_container_2_ng_container_2_Template","xs","NotificationsComponent_ng_template_3_p_0_Template","item_r29","NotificationsComponent_ng_template_9_div_0_Template_button_click_3_listener","_r33","prevPage","NotificationsComponent_ng_template_9_div_0_Template_button_click_5_listener","nextPage","ɵɵtextInterpolate3","pageFrom","pageTo","totalCount","pageNum","pageSize","NotificationsComponent_ng_template_9_div_0_Template","cd","failed","load","updateCount","props","ngAfterViewInit","setCustomFocusOrder","arr","messageContentSkip","toArray","i","addEventListener","messageContent","updateNotificationCount","markNotificationHandled","toJSON","createTestNotification","url","ChangeDetectorRef","NotificationsComponent_Query","NotificationsComponent_mat_progress_bar_0_Template","NotificationsComponent_ng_container_2_Template","NotificationsComponent_ng_template_3_Template","NotificationsComponent_ng_template_5_Template","NotificationsComponent_ng_template_7_Template","NotificationsComponent_ng_template_9_Template","transform","opacity","PreferenceDialogComponent_app_comms_preferences_3_Template_app_comms_preferences_saveStateChange_0_listener","onSaveStateChange","PreferenceDialogComponent_button_7_Template_button_click_0_listener","trySave","PreferenceDialogComponent_button_8_Template_button_click_0_listener","PreferenceDialogComponent_div_9_button_3_Template_button_click_0_listener","PreferenceDialogComponent_div_9_Template_button_click_1_listener","change","PreferenceDialogComponent_div_9_button_3_Template","ui","showTooltips","savePreference","updateCachedPreference","saved","PreferenceDialogComponent_Template","PreferenceDialogComponent_app_comms_preferences_3_Template","PreferenceDialogComponent_p_4_Template","PreferenceDialogComponent_p_5_Template","PreferenceDialogComponent_button_7_Template","PreferenceDialogComponent_button_8_Template","PreferenceDialogComponent_div_9_Template","PreferenceDialogComponent_button_10_Template","PreferenceDialogComponent_mat_progress_bar_11_Template","PreferenceEditableComponent_app_comms_preferences_56_Template_app_comms_preferences_saveStateChange_0_listener","editablePreference","PreferenceEditableComponent_div_57_Template_button_click_1_listener","PreferenceEditableComponent_div_57_Template_button_click_3_listener","PreferenceEditableComponent_div_58_Template_mat_checkbox_ngModelChange_5_listener","PreferenceEditableComponent_Template","PreferenceEditableComponent_Template_app_form_section_onEdit_0_listener","PreferenceEditableComponent_Template_app_form_section_onCancel_0_listener","PreferenceEditableComponent_Template_app_form_section_onSave_0_listener","PreferenceEditableComponent_app_comms_preferences_56_Template","PreferenceEditableComponent_div_57_Template","PreferenceEditableComponent_div_58_Template","BehaviorSubject","of","observableOf","tap","ServiceBase","http","errorHandler","notificationCount$","startedCheckingNotificationCount","getFile","ediOptions","getMockNotifications","createNotification","priority","submissionDeadline","firstName","skip","post","count","next","telephone2","put","payload","linkId","ɵɵinject","HttpClient","CustomErrorHandler","factory","ɵfac","options$","validity$","Gender","Religion","Disability","SexualOrientation","optionsWithoutNationality","slice","notselected","forEach","s","reduce","acc","sg","isOther","messages","g","FaqService","features","ɵɵProvidersFeature","SigninFaqComponent_Template","link","ngContentSelectors","UserBadgeComponent_Template","ɵɵprojection","isIE","b2cPolicies","names","signUpSignIn","resetPassword","authorities","authority","sso","pwdreset","apiConfig","b2cScopes","webApi","api","root","msalConfig","clientId","clientID","redirectUri","postLogoutRedirectUri","navigateToLoginRequestUrl","validateAuthority","cache","cacheLocation","storeAuthStateInCookie","system","loadFrameTimeout","loginRequest","scopes","tokenRequest","account","protectedResourceMap","msalAngularConfig","popUp","consentScopes","unprotectedResources","extraQueryParameters","LoggedInOnlyGuard","UserLoadedGuard","RegistrantsOnlyGuard","CanDeactivateGuard","ReviewersOnlyGuard","AccountActivationGuard","DiagnosticsComponent","NotFoundComponent","PrivacyPolicyComponent","HomeComponent","RenewalComponent","RenewalFaqComponent","ReceiptsComponent","RegistrationComponent","ReceiptComponent","CountersignComponent","LetterComponent","LetterGuard","NotRevalidationExemptGuard","LearningContractResponseComponent","PreregAssessmentRegistrationGuard","MsalGuard","StudentsOnlyGuard","TechnicianOnlyGuard","IndependentPrescriberApplicationComponent","ApplicationsDashboardComponent","VoluntaryRemovalComponent","CcpsComponent","ReturnToRegisterComponent","RestorationFeePayment","isInIframe","parent","opener","routes","path","redirectTo","pathMatch","canActivate","component","classname","loadChildren","m","RevalidationModule","canDeactivate","ReviewModule","StudentModule","PreregModule","TechnicianModule","AppRoutingModule","forRoot","initialNavigation","ErrorHandler","ReflectiveInjector","NavigationEnd","UserActivity","AppInsightService","fromEvent","newError","exception","exceptionMessage","AppComponent_div_2_p_5_Template","AppComponent_div_2_Template_button_click_7_listener","_r12","clearNew","AppComponent_div_11_Template_button_click_1_listener","maintenanceMessage","AppComponent_ng_container_47_Template_button_click_1_listener","updater","update","AppComponent_ng_container_47_Template_button_click_3_listener","postpone","navbarOpen","newRouteBlock","dataLayer","gtag","args","analytics","arguments","AppComponent","zone","activatedRoute","titleService","broadcastService","msalService","currentYear","pageClass","skipLinkFocused","injector","resolveAndCreate","myAppInsightService","fulscreen","state$","fullscreen","logNavigation","logPageView","checkLocation","rootLocation","protocol","host","locationInfo","current","correct","webRoot","redirected","href","info","redirect","replace","getTime","postActivity","Unknown","onLinkFocus","event","onLinkBlur","onLinkClick","preventDefault","mainContent","scrollIntoView","idToken","claims","errorMessage","handleRedirectCallback","authError","x","y","setSize","startChecking","onNotification","scroll","events","firstChild","outlet","routeConfig","config","configurePage","clearRouteBlock","pageTitle","pagePath","reset","setTitle","innerWidth","height","innerHeight","notifyLoggedOut","UpdaterService","NgZone","Title","i8","TooltipService","i9","i10","i11","BroadcastService","MsalService","AppComponent_Query","useClass","AppComponent_Template","AppComponent_div_2_Template","AppComponent_div_11_Template","AppComponent_Template_button_click_22_listener","notifyIsOffline","AppComponent_Template_button_click_24_listener","AppComponent_Template_button_click_35_listener","AppComponent_p_43_Template","AppComponent_p_44_Template","AppComponent_ng_container_47_Template","AppComponent_ng_container_48_Template","AppComponent_Template_a_keyup_Tab_49_listener","AppComponent_Template_a_keydown_Tab_49_listener","AppComponent_Template_a_focusout_49_listener","AppComponent_Template_a_click_49_listener","AppComponent_Template_i_click_55_listener","toggleNavbar","AppComponent_app_nav_56_Template","AppComponent_div_60_Template","header","body","updateRequired","updating","version","accountMode","BrowserModule","BrowserAnimationsModule","CoreModule","RenewalModule","RegistrationModule","MsalModule","MSAL_CONFIG","MSAL_CONFIG_ANGULAR","HTTP_INTERCEPTORS","StudentDashboardComponent","MSALInterceptorExtended","MSALConfigFactory","MSALAngularConfigFactory","AppModule","bootstrap","useFactory","BrandingComponent","showRings","showVersion","target","goHome","BrandingComponent_Template","BrandingComponent_img_2_Template","BrandingComponent_Template_span_click_4_listener","BrandingComponent_div_6_Template","BrandingComponent_Template_span_click_7_listener","BrandingComponent_Template_div_click_9_listener","HttpClientModule","ReviewService","NavComponent","RenewalService","UploadService","RevalidationService","PublicService","PreregService","PaymentService","DevService","DynamicModule","TooltipModule","TrackingService","RegistrationService","MAT_DATE_LOCALE","NgxPageScrollModule","NgxPageScrollCoreModule","ReviewerDashboardComponent","AssessmentReportService","AssessmentRegistrationService","CurrentApplicationService","FinalDeclarationService","IndependentPrescriberService","VoluntaryRemovalService","CCPSService","ReturnToRegisterService","useValue","RenewalStatus","RenewalPaymentMethod","ApplicationStatus","item_r7","DiagnosticsComponent_div_7_div_9_Template_div_click_1_listener","log_r4","expanded","DiagnosticsComponent_div_7_div_9_i_6_Template","DiagnosticsComponent_div_7_div_9_pre_9_Template","level","date","DiagnosticsComponent_div_7_Template_button_click_6_listener","sendDiagnostics","DiagnosticsComponent_div_7_span_7_Template","DiagnosticsComponent_div_7_span_8_Template","DiagnosticsComponent_div_7_div_9_Template","sendingLogs","logs","renewalService","preregService","assessmentReportService","refreshLogs","os","userDetails","msalUserId","browserDetails","getRenewal","renewal","renewalStatus","getPreregApplication","getRegApplication","application","applicationStatus","activeForm","formStatus","applicationPaid","requirePayment","applicationFormId","getApplicationStatus","getAssessmentReportApplication","getAssessmentApplicationStatus","applicationStatusJson","resetRevalidation","fail","updateRenewalStatus","setRenewalStatus","updateApplicationStatus","paymentDate","setMonth","getMonth","paymentDateString","toISOString","setApplicationStatus","regApplication","assessmentReport","enableSubmit","setRevalidationSubmitDate","failure","DiagnosticsComponent_Template","DiagnosticsComponent_div_7_Template","BannerState","LogLevel","PaymentType","Subject","FormScope","_r15","currentApplicationLink","_r19","IPApplicationLink","_r21","notificationCount","NavComponent_li_14_div_4_Template","NavComponent_li_16_Template_a_click_1_listener","signout","currentApplicationService","render","openState","direction","isLoggedIn$","navigationCount","navItems","navLabel","setIsOpen","isOpen","availableForm","formscope","AssessmentRegistration","ProgressReport","Trainee","FinalDeclaration","navMenu","selectRootElement","children","setNavLabel","showIneligibleToRegister","IneligibleToRegister","showRevalidation","exemptFromRevalidationSubmissions","userSub","unsubscribe","Renderer2","NavComponent_Template","NavComponent_li_2_Template","NavComponent_li_4_Template","NavComponent_li_5_Template","NavComponent_li_6_Template","NavComponent_li_7_Template","NavComponent_li_8_Template","NavComponent_li_9_Template","NavComponent_li_10_Template","NavComponent_li_11_Template","NavComponent_li_12_Template","NavComponent_li_13_Template","NavComponent_li_14_Template","NavComponent_li_16_Template","bannerState","default","important","_router","NotFoundComponent_Template","PrivacyPolicyComponent_Template","RevalidationLogic","ReviewerDashboardComponent_Template","AppInsights","instrumentationKey","appInsights","downloadAndSetup","properties","measurements","duration","trackPageView","logEvent","trackEvent","logException","handledAt","severityLevel","trackException","PathLocationStrategy","StackTrace","locationStrategy","handleServerError","errorResponse","caught","serverError","flag","output","isOffline","_body","parse","modelState","fieldName","hasOwnProperty","statusText","handleError","chunkLoadFailMessage","offline","test","stack","page","fromError","stackframes","stacktrace","trace","sf","fileName","noflag","LocationStrategy","MsalInterceptor","intercept","request","getUserId","handle","UploadType","getAssessmentRegistrationApplication","registrantStatus","reSubmitApplication","formId","setStep","saveApplicationPayment","paymentType","saveAssessmentRegistrationApplication","forms","getSupportingDocument","file","AssessmentRegistrationDocuments","fileId","getFileWithToken","getAssessmentRegistrationSupportingDocs","TechnicianApplication","AssessmentReport","getTutors","tutors","getDeclarationFormTemplates","templateGroup","cancelCountersignature","InProgress","submitProgressReportForm","saveAssessmentReportApplication","tutoredBy","training","sendToCountersigner","getCountersignerForm","countersignatureId","getTechnicianCountersignerForm","submitCountersignatureOutcome","getCountersignatureRequests","pharmacistRegNumber","recallFromCountersigner","delete","RegistrationFormSupportingDocuments","getProgressReportSupportingDocs","ProgressReportSupportingDocuments","sjcl","require","inIframe","self","top","tokenExpires","checking","encpwd","forgotPasswordRedirectUrl","isCallback","hash","runOutsideAngular","loggerCallback","containsPii","levelString","warn","tokenReceivedCallback","errorDesc","tokenType","idTokenReceivedInCallback","getAccount","loadUserFromLocalStorage","saveUserToLocalStorage","encrypted","encrypt","localStorage","setItem","getItem","decrypted","decrypt","Promise","resolve","reject","endpoint","headers","deleteToken","setToken","removeItem","callGetUser","tryAcquireTokenSilently","loggedInPolCheckTimeout","loggedInPolCheck","setLoggedOut","getCachedToken","pathname","getToken","cachedToken","getTokenFromRemote","acquireTokenSilent","accessToken","tokenAcquired","getMSALSubject","CCPSApplication","eeaDirectiveRoute","mockApplication","regulator","getApplication","setIsEEARegulatorSelected","EEARegulatorSelected","saveApplication","initialRegistrantQualificationDetail","registrationRoute","personalDetails","registration","eeaPharmacistQualificationDetail","regulatoryBodies","certProfessionalStandingApplicationFee","CertOfProfessionalStandingApplicationFee","getQualificationsList","getRegulatorSelected","regulatoryBody","professionalStandingDetail","getDoc","ProfessionalStandingSupportingDocuments","resetReview","admin","json","setAssessmentApplicationStatus","setPaymentMethod","renewalPaymentMethod","getFinalDeclarationApplication","saveFinalDeclarationApplication","submitFinalDeclarationForm","IndependentPrescriberApplication","IndependentPrescriberData","courseProvider","dateAwarded","clinicalSpecialities","isPrescriberRegistered","prescriberMentorName","UKregulatoryBody","documents","declaration","isQ1Confirmed","isQ2Confirmed","isQ3Confirmed","isQ4Confirmed","isQ5Confirmed","mentorDetails","applicationFee","currentAppService","IndependentPrescriberApplicationFee","getProof","InpendentPrescriberSupportDocuments","download","initialState","showBranding","md","lg","overlay","fullscreenSpinner","visible","setBannerState","newState","setOverlay","setNavbarOpen","setBranding","toggleFullscreen","setFullscreen","setFullscreenSpinner","branding","scrollTo","clear","add","routeBlock","routeBlocked","Error","activity","A","L","V","critical","allowClose","getMaintenanceMessage","maintenanceAPIURL","messageBody","messageTitle","messageActive","RegApplication","getApplicationDetails","getAvailableForm","saveRegApplication","assessment","reports","saveFirstYearPayment","getStudentSupportingDocs","PreRegistrationFormSupportingDocuments","trainee","setTrainee","setIPRegistrant","getFaq","faq","categories","c","questions","RegisterSearchBy","LetterType","PremisesSearchBy","mockLetters","letterType","Remediation","letterDate","NoticeOfIntentToRemove","NoticeOfRemoval","NoticeOfEntry","ccpsRegBodieSelected$","searchRegister","params","gphcId","gPhCId","applicationType","take","searchBy","Number","regNumber","lastName","searchPremises","premisesAddress","premises","premise","Postcode","getLetters","letters","getLearningContracts","submitLearningContractResponse","getLearningContract","createLetters","getAvailableForms","WorldpayCartId","applicationStatus$","failTest","getFormTemplates","renewals","NotDue","revalidationCompleted","paymentMethod","isCash","isDD","isDue","notDue","selectedCard","agreed","renewalFee","renewalDate","windowCloseDate","isComplete","isRenewable","PaymentCard","DirectDebitAnnual","DirectDebitQuarterly","Complete","PaymentInProgress","DDPaymentPending","saveDeclaration","renewalIdentifier","getWordpayConfig","ReturnToRegisterApplication","FormGroupType","isRTRAppAvailable","PharmacistRTRAppFeeVoluntaryRemovalLessThanMonth","PharmacistRTRAppFeeVoluntaryRemovalMoreThanMonth","PharmacistRTRAppFeeAfterNonRenewalLessThanYear","PharmacistRTRAppFeeAfterNonComplianceLessThanYear","PhyTechRTRAppFeeVoluntaryRemovalLessThanMonth","PhyTechRTRAppFeeVoluntaryRemovalMoreThanMonth","PhyTechRTRAppFeeAfterNonRenewalLessThanYear","PhyTechRTRAppFeeAfterNonComplianceLessThanYear","ReturnToRegisterSupportingDocuments","ReturnToRegisterApplicationDeclarationForms","saveRestorationPayment","feeCode","restorationToRegisterFeeCode","FEECODES","pharmacistRestorationFee","phyTechnicianRestorationFee","pharmacistRestorationAndRenewalFee","phyTechnicianRestorationAndRenewalFee","PharmacistRestorationFee","PhyTechnicianRestorationFee","PharmacistRestorationAndRenewalFee","PhyTechnicianRestorationAndRenewalFee","RevalidationItemType","FormType","revalidationFormTemplate","PeerDiscussion","PeerDiscussionEntry","Planned","PlannedCpdEntry","Unplanned","UnplannedCpdEntry","ReflectiveAccount","ReflectiveAccountEntry","formTypeToRevalidationType","dynamicFormId","getExceptionalCircumstanceRenewalDates","getExtenuatingCircumstance","ExtenuatingCircumstanceProof","getFeedback","resetExtenuatingCircumstancesForm","getExtenuatingCircumstancesFormTemplate","formType","getFormTemplateByType","getFormTemplateById","revalidationId","submit","getEntry","revalidationEntries","submitted","getEntries","getPastSubmissions","submissions","patch","included","isCompleted","completed","submitExtenuatingCircumstances","saveExtenuatingCircumstances","getExtenuatingCircumstancesList","extenuatingCircumstanceListModels","getLatestRevalidation","Review","ReviewSummaryItem","ReviewStage","mockReviews","mockReviewSummaries","mapReviewSummary","mapReview","getReviewSummary","bustCache","reviewSummary","stages","reviewSummaries","items","deadlineGroupings","existingGrouping","deadline","reviewDeadline","newGrouping","counts","stage","stageItems","qaItems","saveAnnotation","reviewId","entryId","annotation","revalidationEntryId","submitDiscussion","setInitialAssessment","reviewerAssessment","sendDiscussionMessage","getDiscussionMessages","saveFeedback","feedback","submitFeedback","submitFeedbackApproval","approve","reviewFeedbackId","reason","Headers","URLSearchParams","HttpHeaders","HttpParams","from","observableFrom","mergeMap","useMock","setMock","mock","mockGet","set","httpPaarams","append","observe","responseType","getHtml","PreregApplication","PreregApplicationStep","PreregApplicationForm","Placement","NotStarted","Applicant","applicationSaveConfig","Training","placements","trainingScheme","applicationFormPlacement","tutoredById","trainingSite","trainedAtId","placementId","getPlacements","trainingWindow","start","trainingDetails","startDateForCurrentYear","split","to","firstTrainingCloseDateForCurrentYear","end","sendLearningContracts","sendLearningContract","workExperiences","experience","jsonPayload","expectedWorkExperiencemembers","formatExperience","experienceProps","hasValidWorkExperiences","every","exp","hasValidExperienceProperties","prop","validExperiences","getQualificationList","qualificationType","getSupportingDocuments","PharmacyTechnicianSupportingDocuments","providedIn","check","deployed","updateInterval","setInterval","checkForUpdates","clearInterval","upload","formData","sessionId","deleteFile","deleteUrl","ApplicationFormMode","VoluntaryRemovalApplication","VoluntaryRemovalApplicationStep","RegistrantType","mockAppData","isMentorRegistered","attachments","isOverallDeclarationConfirmed","DateReasonForRemovalRequired","minStep","mode","Editable","isSuperintendent","removeFromTheRegister","finalDateOfRemoval","removalDateChosen","reasonForRemoval","details","hasAnnotation","ownerName","ownerNumber","applicationFees","feeDescription","collectionMethod","dueDate","amount","outStandingFee","dataSource","isOutStandingPaymentZero","data$","asObservable","sendFtpDeclarationAnswers","ftpAnsers","isPaymentPending","isOutstandingPaymentZero","expiryDate","dateOfRemoval","pendingFee","expDate","dayJustBeforeNextRenewalYear","setHours","saveVRApplication","submitVoluntaryApplicationWithoutDues","Pharmacist","outstandingPayments","PharmacistVRemoval1QuarterRenewalFee","PharmacistVRemoval2QuarterRenewalFee","PharmacistVRemoval3QuarterRenewalFee","PharmacyTechnician","PTechnicianVRemoval1QuarterRenewalFee","PTechnicianVRemoval2QuarterRenewalFee","PTechnicianVRemoval3QuarterRenewalFee","Popper","TooltipComponent_button_3_Template_button_click_0_listener","nextTip","TooltipComponent_button_3_span_2_Template","TooltipComponent_button_3_span_3_Template","getAriaLabel","allowNext","TooltipComponent","renderer","setTooltip","create","activeContext","tooltips","exit","source","popper","tooltipElement","focusElement","destroy","soloTip","removeTags","withoutTags","label","TooltipComponent_Query","TooltipComponent_Template_div_keyup_escape_0_listener","TooltipComponent_button_3_Template","ɵɵstyleProp","TooltipDirective","tooltipService","element","hovering","showDelay","setAppTooltip","appTooltip","init","used","ariaLabel","onMouseEnter","show","onFocus","onMouseLeave","hide","onBlur","notSolo","isHidden","hideTooltip","remove","ElementRef","hostVars","hostBindings","TooltipDirective_HostBindings","TooltipDirective_focus_HostBindingHandler","TooltipDirective_mouseleave_HostBindingHandler","TooltipDirective_blur_HostBindingHandler","TooltipContextDirective","TooltipContainerComponent","contexts","allVisible","activeContextChanged","activeTipChanged","activeTipIndex","contextId","context","alreadyAdded","t","addContext","removeContext","idx","splice","contextFilter","setActiveContext","activeTooltip","prevTip","toggleActiveContext","tooltip_r3","i_r4","TooltipContainerComponent_div_1_app_tooltip_1_Template","TooltipContainerComponent_div_3_Template_div_click_0_listener","showSoloTip","TooltipContainerComponent_Template","TooltipContainerComponent_div_1_Template","TooltipContainerComponent_app_tooltip_2_Template","TooltipContainerComponent_div_3_Template","appTooltipContext","sub1","removeClass","addClass","sub2","StudentDashboardComponent_div_15_div_3_Template","applicationClosedMessage","StudentDashboardComponent_ng_template_16_div_2_Template","pastApplicationsTile","datePipe","loadingApplication","loadApplication","isApplicationOpen","preRegistrationApplicationScheme","isOpened","endDateForCurrentYear","DatePipe","StudentDashboardComponent_Template","StudentDashboardComponent_div_15_Template","StudentDashboardComponent_ng_template_16_Template","StudentDashboardComponent_div_18_Template","StudentDashboardComponent_ng_template_19_Template","pastApplications","FormAlternativeComponent","FormQuestionComponent","FollowupQuestionComponent","FormQuestionControlComponent","MatNativeDateModule","MatDatepickerModule","DefaultValueAccessor","NgControlStatus","NgModel","NgForOf","NgSwitch","NgSwitchCase","TextEditorComponent","CollapsibleComponent","UtcDatePickerComponent","AnswerType","question","FollowupQuestionComponent_h2_2_Template_h2_click_0_listener","hasFocus","FollowupQuestionComponent_Template","FollowupQuestionComponent_label_1_Template","FollowupQuestionComponent_h2_2_Template","FollowupQuestionComponent_p_4_Template","FreeText","changeDetection","FormAlternativeComponent_mat_radio_group_0_mat_radio_button_11_Template_mat_radio_button_change_0_listener","alternative_r6","alternativeSelections","FormAlternativeComponent_mat_radio_group_0_mat_radio_button_11_Template","alternatives","selectedAlternativeText","selectedAlternative","alternative_r9","followup_r11","FormAlternativeComponent_app_collapsible_5_ng_container_1_app_followup_question_1_Template","FormAlternativeComponent_app_collapsible_5_ng_container_1_Template","FormAlternativeComponent_div_7_Template_input_ngModelChange_10_listener","FormAlternativeComponent_div_7_Template_input_blur_10_listener","onReferenceNumberChange","subscription","isApplicationCCPS","setAnswer","referenceNumber","el","FormValidator","FormAlternativeComponent_Template","FormAlternativeComponent_mat_radio_group_0_Template","FormAlternativeComponent_div_1_Template","FormAlternativeComponent_app_collapsible_5_Template","FormAlternativeComponent_div_7_Template","FormAlternativeComponent_div_8_Template","wrongAlternative","showAdditionalInfo","FormQuestionComponent_app_gphc_icon_3_Template_app_gphc_icon_click_0_listener","toggleHelp","helpTooltip","FormQuestionComponent_h2_4_Template_h2_click_0_listener","infoChanged","helpVisible","onInfoChanged","FormQuestionComponent_Template","FormQuestionComponent_label_2_Template","FormQuestionComponent_app_gphc_icon_3_Template","FormQuestionComponent_h2_4_Template","FormQuestionComponent_Template_app_form_question_control_infoChanged_7_listener","FormQuestionControlComponent_div_2_Template_input_blur_1_listener","ɵɵreference","FormQuestionControlComponent_input_3_Template_input_blur_0_listener","FormQuestionControlComponent_input_4_Template_input_blur_0_listener","FormQuestionControlComponent_app_text_editor_5_Template_app_text_editor_contentChanged_0_listener","FormQuestionControlComponent_app_text_editor_5_Template_app_text_editor_infoChanged_0_listener","FormQuestionControlComponent_input_6_Template_input_change_0_listener","FormQuestionControlComponent_div_7_Template_input_ngModelChange_2_listener","FormQuestionControlComponent_div_7_Template_input_blur_2_listener","min","max","FormQuestionControlComponent_div_8_Template_app_utc_date_picker_ngModelChange_1_listener","error_r30","validator","datePickerVisible","setHasFocus","setVisible","defaultAnswer","toggleDatePicker","FormQuestionControlComponent_Template","FormQuestionControlComponent_app_form_alternative_1_Template","FormQuestionControlComponent_div_2_Template","FormQuestionControlComponent_input_3_Template","FormQuestionControlComponent_input_4_Template","FormQuestionControlComponent_app_text_editor_5_Template","FormQuestionControlComponent_input_6_Template","FormQuestionControlComponent_div_7_Template","FormQuestionControlComponent_div_8_Template","FormQuestionControlComponent_p_10_Template","Alternative","Email","ShortText","LongText","Bool","FormQuestion","utils","Form","formTitle","formBody","guid","questionGroups","total","progress","formQuestion","alternativeSelected","requiredAlternative","isRequired","formGuid","questionId","FormValidationService","addForm","removeForm","setForm","updateState","getForm","loadAnswers","answers","findQuestion","findChild","aq","updateParent","updateQuestion","updateForm","hasError","getProgress","hasInvalid","getIsCompleted","f","pad","previousAnswer","alternative","updateChild","formToUpdate","questionToUpdate","child","regex","shortName","hasWrongAlternative","hasWrong","hasAnsweredYes","getSelectedAlternative","hasToDeclare","selectedAlternative2","q2","selectedAlternative3","getQuestionByShortname","out","qa","ques","getAnswers","internalId","accGroupAnswers","accQuestionAnswers","followUpAnswers","accFollowUpAnswers","followup","selectedFollowup","getPayload","regService","hasLetter","letter","authUser","PreregOnlyGuard","HomeComponent_Template","HomeComponent_app_registrant_dashboard_0_Template","HomeComponent_app_reviewer_dashboard_1_Template","HomeComponent_app_student_dashboard_2_Template","HomeComponent_app_prereg_dashboard_3_Template","HomeComponent_app_technician_dashboard_4_Template","CollectionMethod","Payment","receipt","PaymentChannel","PaymentMethod","PaymentStatus","ReceiptComponent_div_5_Template_button_click_1_listener","print","ReceiptComponent_div_11_section_1_th_15_Template","ReceiptComponent_div_11_section_1_td_30_Template","paymentNumber","ɵɵpipeBind4","ReceiptComponent_div_11_section_1_Template","getPayments","payments","payment","ReceiptComponent_Template","ReceiptComponent_div_5_Template","ReceiptComponent_Template_button_click_7_listener","ReceiptComponent_div_11_Template","ReceiptComponent_ng_template_12_Template","ReceiptsComponent_div_6_div_2_tr_18_Template_tr_click_0_listener","receipt_r5","showReceipt","ReceiptsComponent_div_6_div_2_tr_18_Template_button_click_2_listener","ReceiptsComponent_div_6_div_2_tr_18_td_14_Template","paymentChannel","ReceiptsComponent_div_6_div_2_th_14_Template","ReceiptsComponent_div_6_div_2_tr_18_Template","receipts","ReceiptsComponent_div_6_p_1_Template","ReceiptsComponent_div_6_div_2_Template","Paid","ReceiptsComponent_Template","ReceiptsComponent_div_6_Template","d","AssessmentRegistrationStep","FormStepperService","FormStepperComponent","assessmentRegistrationDeadlineDate","AssessmentRegistrationComponent_div_17_ng_container_1_div_1_div_3_Template_button_click_3_listener","resubmitApplication","AssessmentRegistrationComponent_div_17_ng_container_1_div_1_div_3_Template_button_click_5_listener","reopenApplication","AssessmentRegistrationComponent_div_17_ng_container_1_div_1_ng_template_4_Template_button_click_2_listener","AssessmentRegistrationComponent_div_17_ng_container_1_div_1_div_3_Template","AssessmentRegistrationComponent_div_17_ng_container_1_div_1_ng_template_4_Template","allowResubmit","AssessmentRegistrationComponent_div_17_ng_container_1_app_form_stepper_3_Template_app_form_stepper_stepChanged_0_listener","stepChanged","ready","maxStep","AssessmentRegistrationComponent_div_17_ng_container_1_div_1_Template","AssessmentRegistrationComponent_div_17_ng_container_1_assessment_registration_review_2_Template","AssessmentRegistrationComponent_div_17_ng_container_1_app_form_stepper_3_Template","ineligible","AssessmentRegistrationComponent_div_17_ng_container_1_Template","AssessmentRegistrationComponent_div_18_button_2_Template_button_click_0_listener","AssessmentRegistrationComponent_div_18_button_3_Template_button_click_0_listener","_r29","AssessmentRegistrationComponent_div_18_div_4_Template_app_form_stepper_menu_navigate_1_listener","_r31","goToStep","formStepperService","summary$","AssessmentRegistrationComponent_div_18_button_2_Template","AssessmentRegistrationComponent_div_18_button_3_Template","AssessmentRegistrationComponent_div_18_div_4_Template","AssessmentRegistrationComponent","loadingError","showGuidanceWarning","Ineligible","formStepper","warnForDirty","temp","setDate","getDate","PersonalDetails","shouldSave","getFurthestStep","populateForm","performance","minExecution","respond","cb","Math","round","goToStepId","stepId","AssessmentRegistrationComponent_Query","AssessmentRegistrationComponent_Template","AssessmentRegistrationComponent_Template_app_form_stepper_menu_navigate_11_listener","AssessmentRegistrationComponent_div_13_Template","AssessmentRegistrationComponent_div_14_Template","AssessmentRegistrationComponent_div_15_Template","AssessmentRegistrationComponent_p_16_Template","AssessmentRegistrationComponent_div_17_Template","AssessmentRegistrationComponent_div_18_Template","AssessmentRegistrationComponent_ng_template_19_Template","activeAssessment","AssessmentRegistrationApplicationForm","scope","TechnicianApplicant","isPaid","FormStepComponent","AssessmentRegistrationDeclarationComponent_ng_template_0_Template_mat_checkbox_change_9_listener","AssessmentRegistrationDeclarationComponent_ng_template_0_Template_mat_checkbox_ngModelChange_9_listener","AssessmentRegistrationDeclarationComponent_ng_template_0_Template_mat_checkbox_change_19_listener","AssessmentRegistrationDeclarationComponent_ng_template_0_Template_mat_checkbox_ngModelChange_19_listener","AssessmentRegistrationDeclarationComponent_ng_template_0_Template_mat_checkbox_change_37_listener","AssessmentRegistrationDeclarationComponent_ng_template_0_Template_mat_checkbox_ngModelChange_37_listener","AssessmentRegistrationDeclarationComponent_ng_template_0_Template_mat_checkbox_change_47_listener","AssessmentRegistrationDeclarationComponent_ng_template_0_Template_mat_checkbox_ngModelChange_47_listener","_r3","AssessmentRegistrationDeclarationComponent","Declaration","makeDirty","viewReady","ready$","ɵɵInheritDefinitionFeature","AssessmentRegistrationDeclarationComponent_Template","AssessmentRegistrationDeclarationComponent_ng_template_0_Template","creditCards","ɵɵpropertyInterpolate","card_r7","ɵɵsanitizeUrl","AssessmentRegistrationPaymentStepComponent_ng_template_0_section_3_Template_mat_radio_group_ngModelChange_16_listener","AssessmentRegistrationPaymentStepComponent_ng_template_0_section_3_mat_radio_button_17_Template","fee","worldpayConfig","paymentUrl","testMode","instId","worldPayCallbackUrl","cartId","AssessmentRegistrationPaymentStepComponent_ng_template_0_section_3_Template","AssessmentRegistrationPaymentStepComponent","stepper","assessmentRegistrationService","assessmentRegistrationFee","beforeNext","paymentIdentifier","worldpayForm","AssessmentRegistrationPaymentStepComponent_Query","AssessmentRegistrationPaymentStepComponent_Template","AssessmentRegistrationPaymentStepComponent_ng_template_0_Template","AssessmentRegistrationPaymentStepComponent_ng_template_2_Template","AssessmentRegistrationPersonalDetailsComponent_ng_template_0_Template_app_applicant_ngModelChange_6_listener","AssessmentRegistrationPersonalDetailsComponent_ng_template_0_Template_app_gphc_icon_click_20_listener","showDetailsHelp","AssessmentRegistrationPersonalDetailsComponent_ng_template_0_Template_app_contact_edit_ngModelChange_26_listener","contactValid","hasAddress","AssessmentRegistrationPersonalDetailsComponent","showContactHelp","AssessmentRegistrationPersonalDetailsComponent_Query","AssessmentRegistrationPersonalDetailsComponent_Template","AssessmentRegistrationPersonalDetailsComponent_ng_template_0_Template","AssessmentRegistrationRegulationStepComponent","Regulation","AssessmentRegistrationRegulationStepComponent_Template","AssessmentRegistrationRegulationStepComponent_ng_template_0_Template","AssessmentRegistrationReviewComponent","showEdi","showContactDetails","AssessmentRegistrationReviewComponent_Template","AssessmentRegistrationReviewComponent_Template_app_applicant_ngModelChange_4_listener","AssessmentRegistrationReviewComponent_section_5_Template","AssessmentRegistrationReviewStepComponent_ng_template_0_Template_assessment_registration_review_navigate_2_listener","AssessmentRegistrationReviewStepComponent","AssessmentRegistrationReviewStepComponent_Template","AssessmentRegistrationReviewStepComponent_ng_template_0_Template","error_r3","join","AssessmentRegistrationSubmitComponent_ng_template_0_p_8_Template","AssessmentRegistrationSubmitComponent","assessmentService","Submit","submitting","Submitted","AssessmentRegistrationSubmitComponent_Template","AssessmentRegistrationSubmitComponent_ng_template_0_Template","AttachmentType","SupportingDocumentsService","AssessmentRegistrationSupportingDocumentsStepComponent_ng_template_0_Template_app_supporting_documents_item_registered_5_listener","onRegistered","AssessmentRegistrationSupportingDocumentsStepComponent_ng_template_0_Template_app_supporting_documents_item_uploaded_5_listener","onUploaded","ProofOfIdentity","AssessmentRegistrationSupportingDocumentsStepComponent","docService","SupportingDocuments","uploadType","registeredDocTypes","docTypes","attachment","uploads","updateApplication","AssessmentRegistrationSupportingDocumentsStepComponent_Template","AssessmentRegistrationSupportingDocumentsStepComponent_ng_template_0_Template","AssessmentReportStep","Observable","CountersignatureOutcome","AssessmentReportComponent_div_15_ng_container_1_div_1_div_3_Template_button_click_3_listener","AssessmentReportComponent_div_15_ng_container_1_div_1_div_3_Template_button_click_5_listener","AssessmentReportComponent_div_15_ng_container_1_div_1_ng_template_4_Template_button_click_2_listener","AssessmentReportComponent_div_15_ng_container_1_div_1_div_3_Template","AssessmentReportComponent_div_15_ng_container_1_div_1_ng_template_4_Template","AssessmentReportComponent_div_15_ng_container_1_app_form_stepper_3_Template_app_form_stepper_stepChanged_0_listener","AssessmentReportComponent_div_15_ng_container_1_app_form_stepper_3_Template_app_assessment_report_review_step_navigate_4_listener","FinalReview","AssessmentReportComponent_div_15_ng_container_1_div_1_Template","AssessmentReportComponent_div_15_ng_container_1_app_assessment_report_review_2_Template","AssessmentReportComponent_div_15_ng_container_1_app_form_stepper_3_Template","AssessmentReportComponent_div_15_ng_container_1_Template","AssessmentReportComponent_div_16_button_2_Template_button_click_0_listener","AssessmentReportComponent_div_16_button_3_Template_button_click_0_listener","AssessmentReportComponent_div_16_button_4_Template_button_click_0_listener","AssessmentReportComponent_div_16_div_5_Template_app_form_stepper_menu_navigate_1_listener","AssessmentReportComponent_div_16_button_2_Template","AssessmentReportComponent_div_16_button_3_Template","AssessmentReportComponent_div_16_button_4_Template","AssessmentReportComponent_div_16_div_5_Template","isSubmitted","AssessmentReportComponent","formStepperComponents","changes","comps","updateStepId","isAssessmentCountersigned","CounterSigned","hasBeenApproved","countersignatures","decision","Approved","hasCountersignRejected","Rejected","isProvisionalApplication","FtpDeclaration1","FtpDeclaration2","OverallDeclaration","isFinalReport","respondObservable","observer","getReport","saveReport","TrainingConfirmation","countersigned","ReadyForCountersigning","finalReview","Countersigning","validity","setStepRange","updateStepsId","initialSteps","AssessmentReportComponent_Query","AssessmentReportComponent_Template","AssessmentReportComponent_Template_app_form_stepper_menu_navigate_11_listener","AssessmentReportComponent_div_13_Template","AssessmentReportComponent_p_14_Template","AssessmentReportComponent_div_15_Template","AssessmentReportComponent_div_16_Template","AssessmentReportComponent_ng_template_17_Template","AssessmentApplicationStatus","AssessmentReportApplicationForm","clearDeclarationSteps","tutor_r11","AssessmentReportCountersigningStepComponent_ng_template_0_div_35_Template_button_click_1_listener","sendForCountersigning","selectedPharmacist","error_r14","AssessmentReportCountersigningStepComponent_ng_template_0_ng_container_44_span_3_Template","AssessmentReportCountersigningStepComponent_ng_template_0_ng_container_44_span_4_Template","recalling","sending","AssessmentReportCountersigningStepComponent_ng_template_0_ng_template_45_ng_container_0_Template","AssessmentReportCountersigningStepComponent_ng_template_0_ng_template_47_Template_button_click_3_listener","recall","AssessmentReportCountersigningStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","AssessmentReportCountersigningStepComponent_ng_template_0_div_27_Template","AssessmentReportCountersigningStepComponent_ng_template_0_Template_mat_select_ngModelChange_33_listener","AssessmentReportCountersigningStepComponent_ng_template_0_mat_option_34_Template","AssessmentReportCountersigningStepComponent_ng_template_0_div_35_Template","AssessmentReportCountersigningStepComponent_ng_template_0_p_37_Template","AssessmentReportCountersigningStepComponent_ng_template_0_ng_container_44_Template","AssessmentReportCountersigningStepComponent_ng_template_0_ng_template_45_Template","AssessmentReportCountersigningStepComponent_ng_template_0_ng_template_47_Template","awaitingCountersigning","tutorDetails","AssessmentReportCountersigningStepComponent","findersending","prevDisabled","_prevDisabled","cancelText","confirmProgressReport","waiting","disableAllStepsExcept","resultsPending","cs","Pending","hasResult","AssessmentReportCountersigningStepComponent_Query","AssessmentReportCountersigningStepComponent_Template","AssessmentReportCountersigningStepComponent_ng_template_0_Template","form_r7","question_r10","AssessmentReportDeclarationSummaryComponent_div_0_ng_container_1_app_declaration_question_1_Template","AssessmentReportDeclarationSummaryComponent_div_0_ng_container_1_Template","AssessmentReportDeclarationSummaryComponent_ng_template_4_div_0_Template","AssessmentReportDeclarationSummaryComponent","empty","form$","setFormIndex","formIndex","applicationForm","pastApp","formTemplates","formTemplate","dec","AssessmentReportDeclarationSummaryComponent_Template","AssessmentReportDeclarationSummaryComponent_div_0_Template","AssessmentReportDeclarationSummaryComponent_ng_template_2_Template","AssessmentReportDeclarationSummaryComponent_ng_template_4_Template","AssessmentReportDeclarationSummaryComponent_ng_template_6_Template","form_r5","AssessmentReportFtpDeclarationStepComponent_ng_template_0_section_2_Template","declarationHeading","AssessmentReportFtpDeclarationStepComponent","beforePrev","currentDynamicFormIds","AssessmentReportFtpDeclarationStepComponent_Template","AssessmentReportFtpDeclarationStepComponent_ng_template_0_Template","AssessmentReportFtpDeclarationStepComponent_ng_template_2_Template","AssessmentReportOverallDeclarationStepComponent_ng_template_0_Template_mat_checkbox_ngModelChange_7_listener","AssessmentReportOverallDeclarationStepComponent","AssessmentReportOverallDeclarationStepComponent_Template","AssessmentReportOverallDeclarationStepComponent_ng_template_0_Template","site_r7","trainingSiteAdress","startDate","endDate","AssessmentReportReviewComponent_ng_container_16_div_1_Template","trainedAt","comments","otherLeaveDetails","countersigner","traineeFeedbackOnTutorAssessment","AssessmentReportReviewComponent_div_66_div_5_Template","AssessmentReportReviewComponent_div_66_ng_template_6_Template","AssessmentReportReviewComponent","traineeComments","tempRegValid","confirmTempRegistration","formatAddress","mapComments","tempreg","traineeFullName","Boolean","countersignerComment","AssessmentReportReviewComponent_Template","AssessmentReportReviewComponent_ng_container_16_Template","AssessmentReportReviewComponent_div_54_Template","AssessmentReportReviewComponent_div_64_Template","AssessmentReportReviewComponent_p_65_Template","AssessmentReportReviewComponent_div_66_Template","traineeProgressComments","annualLeaves","sickLeaves","otherLeaves","commentsByTutor","AssessmentReportReviewStepComponent_ng_template_0_Template_app_assessment_report_review_navigate_0_listener","AssessmentReportReviewStepComponent","AssessmentReportReviewStepComponent_Template","AssessmentReportReviewStepComponent_ng_template_0_Template","AssessmentReportSubmitStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","AssessmentReportSubmitStepComponent_ng_template_0_Template_textarea_ngModelChange_12_listener","AssessmentReportSubmitStepComponent_ng_template_0_p_16_Template","AssessmentReportSubmitStepComponent","maxChars","characterleft","countersignerCommentId","hasComment","AssessmentReportSubmitStepComponent_Template","AssessmentReportSubmitStepComponent_ng_template_0_Template","AssessmentReportTemporaryRegistrationStepComponent_ng_template_0_Template_mat_radio_group_ngModelChange_14_listener","AssessmentReportTemporaryRegistrationStepComponent","TemporaryRegistration","hasTempReg","hasTempRegistration","temreg","AssessmentReportTemporaryRegistrationStepComponent_Template","AssessmentReportTemporaryRegistrationStepComponent_ng_template_0_Template","AssessmentReportConfirmTrainingStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","AssessmentReportConfirmTrainingStepComponent_ng_template_0_Template_mat_radio_group_ngModelChange_16_listener","trainingConfirmed","AssessmentReportConfirmTrainingStepComponent","isTrainingConfirmed","AssessmentReportConfirmTrainingStepComponent_Template","AssessmentReportConfirmTrainingStepComponent_ng_template_0_Template","site_r3","itemAddresses","tutor_r5","AssessmentReportTraineePlacementComponent_ng_container_0_div_11_Template","AssessmentReportTraineePlacementComponent_ng_container_0_div_16_Template","trainingSites","AssessmentReportTraineePlacementComponent","AssessmentReportTraineePlacementComponent_Template","AssessmentReportTraineePlacementComponent_ng_container_0_Template","FinalDeclarationStep","FinalDeclarationComponent_div_15_ng_container_1_div_1_div_3_Template_button_click_3_listener","FinalDeclarationComponent_div_15_ng_container_1_div_1_div_3_Template_button_click_5_listener","FinalDeclarationComponent_div_15_ng_container_1_div_1_ng_template_4_Template_button_click_2_listener","FinalDeclarationComponent_div_15_ng_container_1_div_1_div_3_Template","FinalDeclarationComponent_div_15_ng_container_1_div_1_ng_template_4_Template","FinalDeclarationComponent_div_15_ng_container_1_app_form_stepper_3_Template_app_form_stepper_stepChanged_0_listener","FinalDeclarationComponent_div_15_ng_container_1_app_form_stepper_3_Template_app_final_declaration_review_step_navigate_3_listener","FinalDeclarationComponent_div_15_ng_container_1_div_1_Template","FinalDeclarationComponent_div_15_ng_container_1_app_final_declaration_review_2_Template","FinalDeclarationComponent_div_15_ng_container_1_app_form_stepper_3_Template","FinalDeclarationComponent_div_15_ng_container_1_Template","FinalDeclarationComponent_div_16_button_2_Template_button_click_0_listener","FinalDeclarationComponent_div_16_button_3_Template_button_click_0_listener","FinalDeclarationComponent_div_16_button_4_Template_button_click_0_listener","FinalDeclarationComponent_div_16_div_5_Template_app_form_stepper_menu_navigate_1_listener","FinalDeclarationComponent_div_16_button_2_Template","FinalDeclarationComponent_div_16_button_3_Template","FinalDeclarationComponent_div_16_button_4_Template","FinalDeclarationComponent_div_16_div_5_Template","FinalDeclarationComponent","isFinalDeclarationCountersigned","shouldSaveReport","promiseResolve","promiseReject","countersignin","changedTempRegistration","hasRegistered","cloneSteps","cloneSummary","stepsWithoutDecl","includes","menuWihoutDecl","allSteps","allStepSummary","applyForProvisionalRegistration","FinalDeclarationComponent_Query","FinalDeclarationComponent_Template","FinalDeclarationComponent_Template_app_form_stepper_menu_navigate_11_listener","FinalDeclarationComponent_div_13_Template","FinalDeclarationComponent_p_14_Template","FinalDeclarationComponent_div_15_Template","FinalDeclarationComponent_div_16_Template","FinalDeclarationComponent_ng_template_17_Template","FinalDeclarationApplicationForm","FinalDeclarationCountersigningStepComponent_ng_template_0_div_51_Template_button_click_1_listener","FinalDeclarationCountersigningStepComponent_ng_template_0_ng_container_56_span_3_Template","FinalDeclarationCountersigningStepComponent_ng_template_0_ng_container_56_span_4_Template","FinalDeclarationCountersigningStepComponent_ng_template_0_ng_template_57_ng_container_0_Template","FinalDeclarationCountersigningStepComponent_ng_template_0_ng_template_59_Template_button_click_3_listener","FinalDeclarationCountersigningStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","FinalDeclarationCountersigningStepComponent_ng_template_0_div_29_Template","FinalDeclarationCountersigningStepComponent_ng_template_0_Template_app_gphc_icon_click_37_listener","subHeaderTooltip","FinalDeclarationCountersigningStepComponent_ng_template_0_Template_mat_select_ngModelChange_49_listener","FinalDeclarationCountersigningStepComponent_ng_template_0_mat_option_50_Template","FinalDeclarationCountersigningStepComponent_ng_template_0_div_51_Template","FinalDeclarationCountersigningStepComponent_ng_template_0_p_53_Template","FinalDeclarationCountersigningStepComponent_ng_template_0_ng_container_56_Template","FinalDeclarationCountersigningStepComponent_ng_template_0_ng_template_57_Template","FinalDeclarationCountersigningStepComponent_ng_template_0_ng_template_59_Template","FinalDeclarationCountersigningStepComponent","finalDeclarationService","FinalDeclarationCountersigningStepComponent_Query","FinalDeclarationCountersigningStepComponent_Template","FinalDeclarationCountersigningStepComponent_ng_template_0_Template","FinalDeclarationFtpStepComponent_ng_template_0_section_2_Template","FinalDeclarationFtpStepComponent","FinalDeclarationFtpStepComponent_Template","FinalDeclarationFtpStepComponent_ng_template_0_Template","FinalDeclarationFtpStepComponent_ng_template_2_Template","FinalDeclarationOverallConfirmationStepComponent_ng_template_0_Template_mat_checkbox_ngModelChange_7_listener","FinalDeclarationOverallConfirmationStepComponent","FinalDeclarationOverallConfirmationStepComponent_Template","FinalDeclarationOverallConfirmationStepComponent_ng_template_0_Template","FinalDeclarationSummaryComponent_div_0_ng_container_1_app_declaration_question_1_Template","FinalDeclarationSummaryComponent_div_0_ng_container_1_Template","FinalDeclarationSummaryComponent_ng_template_4_div_0_Template","FinalDeclarationSummaryComponent","FinalDeclarationSummaryComponent_Template","FinalDeclarationSummaryComponent_div_0_Template","FinalDeclarationSummaryComponent_ng_template_2_Template","FinalDeclarationSummaryComponent_ng_template_4_Template","FinalDeclarationSummaryComponent_ng_template_6_Template","FinalDeclarationReviewComponent_ng_container_16_div_1_Template","FinalDeclarationReviewComponent_div_67_div_5_Template","FinalDeclarationReviewComponent_div_67_ng_template_6_Template","FinalDeclarationReviewComponent","FinalDeclarationReviewComponent_Template","FinalDeclarationReviewComponent_ng_container_16_Template","FinalDeclarationReviewComponent_div_59_Template","FinalDeclarationReviewComponent_div_65_Template","FinalDeclarationReviewComponent_div_66_Template","FinalDeclarationReviewComponent_div_67_Template","anyProblemsEffected","FinalDeclarationReviewStepComponent_ng_template_0_Template_app_final_declaration_review_navigate_0_listener","FinalDeclarationReviewStepComponent","FinalDeclarationReviewStepComponent_Template","FinalDeclarationReviewStepComponent_ng_template_0_Template","FinalDeclarationSubmitStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","FinalDeclarationSubmitStepComponent_ng_template_0_Template_textarea_ngModelChange_12_listener","traineeFeedback","FinalDeclarationSubmitStepComponent_ng_template_0_p_16_Template","FinalDeclarationSubmitStepComponent","FinalDeclarationSubmitStepComponent_Template","FinalDeclarationSubmitStepComponent_ng_template_0_Template","FinalDeclarationTemporaryRegistrationStepComponent_ng_template_0_Template_mat_radio_group_ngModelChange_20_listener","FinalDeclarationTemporaryRegistrationStepComponent","FinalDeclarationTemporaryRegistrationStepComponent_Template","FinalDeclarationTemporaryRegistrationStepComponent_ng_template_0_Template","FinalDeclarationConfirmTrainingStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","FinalDeclarationConfirmTrainingStepComponent_ng_template_0_Template_mat_radio_group_ngModelChange_16_listener","FinalDeclarationConfirmTrainingStepComponent","FinalDeclarationConfirmTrainingStepComponent_Template","FinalDeclarationConfirmTrainingStepComponent_ng_template_0_Template","FinalDeclarationTraineePlacementComponent_ng_container_0_div_11_Template","FinalDeclarationTraineePlacementComponent_ng_container_0_div_16_Template","FinalDeclarationTraineePlacementComponent","FinalDeclarationTraineePlacementComponent_Template","FinalDeclarationTraineePlacementComponent_ng_container_0_Template","card_r8","message_r9","error_r10","FirstYearPaymentComponent_div_5_div_45_Template_button_click_1_listener","nextTouched","FirstYearPaymentComponent_div_5_ng_template_46_div_0_Template","FirstYearPaymentComponent_div_5_ng_template_46_div_1_Template","FirstYearPaymentComponent_div_5_Template_mat_radio_group_ngModelChange_25_listener","FirstYearPaymentComponent_div_5_mat_radio_button_26_Template","FirstYearPaymentComponent_div_5_p_28_Template","FirstYearPaymentComponent_div_5_p_30_Template","FirstYearPaymentComponent_div_5_div_45_Template","FirstYearPaymentComponent_div_5_ng_template_46_Template","FirstYearPaymentComponent","registrationFees","registrationFee","FirstYearPaymentComponent_Query","FirstYearPaymentComponent_div_5_Template","FinalTrainingReport","RegApplicationForm","mockAssessments","sitting","outcome","session","finalTrainingResult","isOspap","OSPAP","RegApplicationStep","letterOfGoodStanding","isRequested","TraineeReportType","PastApplicationComponent_div_8_app_reg_application_review_4_Template","PastApplicationComponent","applicationDate","app","PastApplicationComponent_Template","PastApplicationComponent_div_8_Template","createdAt","letter_r4","PreregComponent_div_47_a_1_span_3_Template","PreregComponent_div_47_a_1_span_4_Template","PreregComponent_div_47_a_1_span_5_Template","PreregComponent_div_47_a_1_span_6_Template","ɵɵpureFunction2","Sitting","PreregComponent_div_47_a_1_Template","PreregComponent","loadingLetters","loadLetters","PreregComponent_Template","PreregComponent_div_47_Template","PreregComponent_ng_template_48_Template","registrationDateLimit","PreregDashboardComponent","RegApplicationComponent","PreregRoutingModule","PersonalDetailsStepComponent","FtpDeclarationStepComponent","DeclarationSummaryComponent","EqualityDiversityStepComponent","OverallDeclarationStepComponent","ConfirmTrainingStepComponent","PaymentStepComponent","SubmitStepComponent","ReviewStepComponent","TraineePlacementComponent","LetterStepComponent","RegApplicationReviewComponent","CountersigningStepComponent","LetterSummaryComponent","SupportingDocumentsStepComponent","TraineeAssessmentComponent","SittingConfirmationComponent","GuidanceComponent","forChild","PreregDashboardComponent_div_13_ng_container_6_Template","PreregDashboardComponent_div_13_ng_container_7_Template","showFirstYearPayment","_r26","PreregDashboardComponent_ng_template_17_ng_template_4_div_2_Template","PreregDashboardComponent_ng_template_17_div_3_Template","PreregDashboardComponent_ng_template_17_ng_template_4_Template","PreregDashboardComponent_ng_template_19_ng_template_4_div_2_Template","PreregDashboardComponent_ng_template_19_div_3_Template","PreregDashboardComponent_ng_template_19_ng_template_4_Template","_r37","assessmentRegistration","PreregDashboardComponent_ng_template_21_div_5_Template","isAssessmentRegistrationOpen","finalDeclaration","PreregDashboardComponent_ng_template_23_ng_template_4_div_2_Template","PreregDashboardComponent_ng_template_23_div_3_Template","PreregDashboardComponent_ng_template_23_ng_template_4_Template","isFinalDeclarationOpen","_r42","PreregDashboardComponent_ng_template_29_div_3_div_1_Template","isFirstYearPaymentAvailable","PreregDashboardComponent_ng_template_29_div_3_Template","form_r49","PreregDashboardComponent_ng_template_31_div_3_li_2_Template","PreregDashboardComponent_ng_template_31_div_3_Template","PreregDashboardComponent_ng_template_33_div_3_div_1_Template","isInEligibleToRegister","PreregDashboardComponent_ng_template_33_div_3_Template","emptyData","isCurrentApplicationRecieved","countersignerOutcome","threeColumns","twoColumns","showAssessmentReport","showAssessmentRegistration","showFinalDeclaration","showPreregApp","hasFinalDeclarationApproved","getAssessmentReport","assessmentRegistrationApplication","finalDeclarationApplication","confirmFinalDeclaration","registrationApplicationScheme","openingDate","ReadyForRegistration","report","thirtyNineWeekReportResult","applicationLink","PreregDashboardComponent_Template","PreregDashboardComponent_p_4_Template","PreregDashboardComponent_p_5_Template","PreregDashboardComponent_p_6_Template","PreregDashboardComponent_div_8_Template","PreregDashboardComponent_div_9_Template","PreregDashboardComponent_div_10_Template","PreregDashboardComponent_div_11_Template","PreregDashboardComponent_div_12_Template","PreregDashboardComponent_div_13_Template","PreregDashboardComponent_div_14_Template","PreregDashboardComponent_ng_template_15_Template","PreregDashboardComponent_ng_template_17_Template","PreregDashboardComponent_ng_template_19_Template","PreregDashboardComponent_ng_template_21_Template","PreregDashboardComponent_ng_template_23_Template","PreregDashboardComponent_ng_template_25_Template","PreregDashboardComponent_ng_template_27_Template","PreregDashboardComponent_ng_template_29_Template","PreregDashboardComponent_ng_template_31_Template","PreregDashboardComponent_ng_template_33_Template","RegApplicationComponent_div_15_ng_container_1_div_1_div_3_Template_button_click_3_listener","RegApplicationComponent_div_15_ng_container_1_div_1_div_3_Template_button_click_5_listener","RegApplicationComponent_div_15_ng_container_1_div_1_ng_template_4_Template_button_click_2_listener","RegApplicationComponent_div_15_ng_container_1_div_1_div_3_Template","RegApplicationComponent_div_15_ng_container_1_div_1_ng_template_4_Template","RegApplicationComponent_div_15_ng_container_1_app_form_stepper_3_Template_app_form_stepper_stepChanged_0_listener","RegApplicationComponent_div_15_ng_container_1_app_form_stepper_3_Template_app_review_step_navigate_10_listener","RegApplicationComponent_div_15_ng_container_1_app_form_stepper_3_Template_app_review_step_navigate_12_listener","RegApplicationComponent_div_15_ng_container_1_app_form_stepper_3_app_payment_step_13_Template","RegApplicationComponent_div_15_ng_container_1_div_1_Template","RegApplicationComponent_div_15_ng_container_1_app_reg_application_review_2_Template","RegApplicationComponent_div_15_ng_container_1_app_form_stepper_3_Template","terminated","refused","RegApplicationComponent_div_15_ng_container_1_Template","RegApplicationComponent_div_16_button_2_Template_button_click_0_listener","RegApplicationComponent_div_16_button_3_Template_button_click_0_listener","RegApplicationComponent_div_16_div_4_Template_app_form_stepper_menu_navigate_1_listener","_r32","RegApplicationComponent_div_16_button_2_Template","RegApplicationComponent_div_16_button_3_Template","RegApplicationComponent_div_16_div_4_Template","Terminated","Refused","RegApplicationComponent_Query","RegApplicationComponent_Template","RegApplicationComponent_Template_app_form_stepper_menu_navigate_11_listener","RegApplicationComponent_div_13_Template","RegApplicationComponent_p_14_Template","RegApplicationComponent_div_15_Template","RegApplicationComponent_div_16_Template","RegApplicationComponent_ng_template_17_Template","RegisterSearchParams","lastResult","CountersigningStepComponent_ng_template_0_div_48_Template_input_ngModelChange_4_listener","clearNoResults","searchParams","CountersigningStepComponent_ng_template_0_div_49_Template_input_ngModelChange_4_listener","_r25","CountersigningStepComponent_ng_template_0_div_50_Template_input_ngModelChange_4_listener","CountersigningStepComponent_ng_template_0_li_65_Template_button_click_1_listener","_r34","pharmacist_r32","setSelectedPharmacist","CountersigningStepComponent_ng_template_0_li_66_Template_button_click_1_listener","_r39","loadMore","CountersigningStepComponent_ng_template_0_li_66_span_2_Template","CountersigningStepComponent_ng_template_0_li_66_span_3_Template","CountersigningStepComponent_ng_template_0_li_66_div_4_Template","loadingMore","CountersigningStepComponent_ng_template_0_div_67_p_1_Template","CountersigningStepComponent_ng_template_0_div_67_p_2_Template","Name","CountersigningStepComponent_ng_template_0_div_76_Template_button_click_1_listener","_r43","cancelSelection","CountersigningStepComponent_ng_template_0_div_77_Template_button_click_1_listener","error_r46","CountersigningStepComponent_ng_template_0_ng_container_87_span_3_Template","CountersigningStepComponent_ng_template_0_ng_container_87_span_4_Template","CountersigningStepComponent_ng_template_0_ng_template_88_ng_container_0_Template","CountersigningStepComponent_ng_template_0_ng_template_90_Template_button_click_3_listener","_r51","CountersigningStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","_r53","showHelp","CountersigningStepComponent_ng_template_0_label_23_Template","CountersigningStepComponent_ng_template_0_div_24_Template","CountersigningStepComponent_ng_template_0_Template_mat_radio_group_ngModelChange_42_listener","CountersigningStepComponent_ng_template_0_div_48_Template","CountersigningStepComponent_ng_template_0_div_49_Template","CountersigningStepComponent_ng_template_0_div_50_Template","CountersigningStepComponent_ng_template_0_Template_button_click_52_listener","CountersigningStepComponent_ng_template_0_li_65_Template","CountersigningStepComponent_ng_template_0_li_66_Template","CountersigningStepComponent_ng_template_0_div_67_Template","CountersigningStepComponent_ng_template_0_div_76_Template","CountersigningStepComponent_ng_template_0_div_77_Template","CountersigningStepComponent_ng_template_0_p_79_Template","CountersigningStepComponent_ng_template_0_ng_container_87_Template","CountersigningStepComponent_ng_template_0_ng_template_88_Template","CountersigningStepComponent_ng_template_0_ng_template_90_Template","showCountersigningResult","searchByNumber","searchByName","pharmacists","showLoadMore","noResultsVisible","sent","loadResults","inProgress","decisionMadeAt","_waiting","resultsListRef","scrollTop","pharmacist","isDirty","showDiagnosticsLink","CountersigningStepComponent_Query","CountersigningStepComponent_Template","CountersigningStepComponent_ng_template_0_Template","DeclarationSummaryComponent_div_0_ng_container_1_app_declaration_question_1_Template","DeclarationSummaryComponent_div_0_ng_container_1_Template","DeclarationSummaryComponent_ng_template_4_div_0_Template","DeclarationSummaryComponent_Template","DeclarationSummaryComponent_div_0_Template","DeclarationSummaryComponent_ng_template_2_Template","DeclarationSummaryComponent_ng_template_4_Template","DeclarationSummaryComponent_ng_template_6_Template","FtpDeclarationStepComponent_ng_template_0_section_2_Template","FtpDeclarationStepComponent_Template","FtpDeclarationStepComponent_ng_template_0_Template","FtpDeclarationStepComponent_ng_template_2_Template","OverallDeclarationStepComponent_ng_template_0_Template_mat_checkbox_ngModelChange_7_listener","OverallDeclarationStepComponent_Template","OverallDeclarationStepComponent_ng_template_0_Template","EqualityDiversityStepComponent_ng_template_0_section_15_Template_app_edi_ngModelChange_1_listener","ediService","EqualityDiversityStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","EqualityDiversityStepComponent_ng_template_0_section_15_Template","Edi","EqualityDiversityStepComponent_Template","EqualityDiversityStepComponent_ng_template_0_Template","EqualityDiversityStepComponent_ng_template_2_Template","Guidance","GuidanceComponent_Template","GuidanceComponent_ng_template_0_Template","LetterStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","requested","LetterOfGoodStanding","validators","clearValidators","checkFormForNullVals","updateValueAndValidity","disable","LetterStepComponent_Template","LetterStepComponent_ng_template_0_Template","organisationName","letterAnswers","letterRequested","LetterSummaryComponent_Template","LetterSummaryComponent_div_6_Template","PaymentStepComponent_ng_template_0_section_3_Template_mat_radio_group_ngModelChange_23_listener","PaymentStepComponent_ng_template_0_section_3_mat_radio_button_24_Template","PaymentStepComponent_ng_template_0_section_3_Template","preg","PaymentStepComponent_Query","PaymentStepComponent_Template","PaymentStepComponent_ng_template_0_Template","PaymentStepComponent_ng_template_2_Template","PersonalDetailsStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","PersonalDetailsStepComponent_ng_template_0_Template_app_applicant_ngModelChange_36_listener","PersonalDetailsStepComponent_ng_template_0_Template_app_contact_edit_ngModelChange_43_listener","PersonalDetailsStepComponent_ng_template_0_Template_app_address_edit_ngModelChange_51_listener","hasTitle","hasNationality","PersonalDetailsStepComponent_Query","PersonalDetailsStepComponent_Template","PersonalDetailsStepComponent_ng_template_0_Template","RegApplicationReviewComponent_section_7_Template_app_gphc_icon_click_6_listener","RegApplicationReviewComponent_section_7_Template_app_gphc_icon_click_12_listener","RegApplicationReviewComponent_section_46_Template_app_gphc_icon_click_4_listener","RegApplicationReviewComponent_Template","RegApplicationReviewComponent_Template_app_gphc_icon_click_5_listener","RegApplicationReviewComponent_Template_app_applicant_ngModelChange_6_listener","RegApplicationReviewComponent_section_7_Template","RegApplicationReviewComponent_Template_app_gphc_icon_click_12_listener","RegApplicationReviewComponent_Template_app_gphc_icon_click_18_listener","RegApplicationReviewComponent_Template_app_gphc_icon_click_24_listener","RegApplicationReviewComponent_Template_app_gphc_icon_click_30_listener","RegApplicationReviewComponent_Template_app_gphc_icon_click_36_listener","RegApplicationReviewComponent_Template_app_gphc_icon_click_44_listener","RegApplicationReviewComponent_section_46_Template","ReviewStepComponent_ng_template_0_Template_app_reg_application_review_navigate_2_listener","ReviewStepComponent_Template","ReviewStepComponent_ng_template_0_Template","SittingConfirmationComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","SittingConfirmationComponent_ng_template_0_Template_mat_radio_group_ngModelChange_16_listener","SittingConfirmationComponent_ng_template_0_Template_mat_radio_group_ngModelChange_35_listener","assessmentConfirmed","isAssessmentConfirmed","SittingConfirmationComponent_Template","SittingConfirmationComponent_ng_template_0_Template","SubmitStepComponent_ng_template_0_p_8_Template","SubmitStepComponent_Template","SubmitStepComponent_ng_template_0_Template","SupportingDocumentsStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","SupportingDocumentsStepComponent_ng_template_0_Template_app_supporting_documents_item_registered_38_listener","SupportingDocumentsStepComponent_ng_template_0_Template_app_supporting_documents_item_uploaded_38_listener","SupportingDocumentsStepComponent_ng_template_0_Template_app_supporting_documents_item_registered_46_listener","SupportingDocumentsStepComponent_ng_template_0_Template_app_supporting_documents_item_uploaded_46_listener","SupportingDocumentsStepComponent_ng_template_0_Template_app_supporting_documents_item_registered_83_listener","SupportingDocumentsStepComponent_ng_template_0_Template_app_supporting_documents_item_uploaded_83_listener","SupportingDocumentsStepComponent_ng_template_0_Template_app_supporting_documents_item_registered_96_listener","SupportingDocumentsStepComponent_ng_template_0_Template_app_supporting_documents_item_uploaded_96_listener","SupportingDocumentsStepComponent_ng_template_0_Template_app_supporting_documents_item_registered_103_listener","SupportingDocumentsStepComponent_ng_template_0_Template_app_supporting_documents_item_uploaded_103_listener","SupportingDocumentsStepComponent_ng_template_0_Template_app_supporting_documents_item_registered_108_listener","SupportingDocumentsStepComponent_ng_template_0_Template_app_supporting_documents_item_uploaded_108_listener","Pass","FinalDeclarationForm","Fail","BirthCertificate","QualificationCertificate","Photo","hasProofOfId","hasQualification","requireQualificationCertificate","isAros","isFinalTrainingReportPass","isTrainee","PreRegistrationTrainee","removeFinalDeclarationDocsFromSupportingDocs","SupportingDocumentsStepComponent_Template","SupportingDocumentsStepComponent_ng_template_0_Template","ConfirmTrainingStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","ConfirmTrainingStepComponent_ng_template_0_Template_mat_radio_group_ngModelChange_16_listener","ConfirmTrainingStepComponent_ng_template_0_Template_mat_radio_group_ngModelChange_35_listener","ConfirmTrainingStepComponent_Template","ConfirmTrainingStepComponent_ng_template_0_Template","TraineeAssessmentComponent_div_0_div_1_Template","assessments","TraineeAssessmentComponent_Template","TraineeAssessmentComponent_div_0_Template","TraineeAssessmentComponent_ng_template_1_Template","item_r3","item_r5","tutorName","TraineePlacementComponent_ng_container_0_div_1_Template","TraineePlacementComponent_ng_container_0_ng_container_6_Template","TraineePlacementComponent_Template","TraineePlacementComponent_ng_container_0_Template","application_r2","isCCPSApplication","regulatoryBodyName","ApplicationsDashboardComponent_div_9_div_7_Template","ApplicationsDashboardComponent_div_9_div_8_Template","registrationService","loadingIPApplication","loadingVRapplication","loadingApplications","ccpsRegulatoryBodiesSelected","applications","loadApplications","isVRAppAvailable","voluntaryRemovalFormStatus","isIndyPrescAppAvailable","indyPrescriberFormStatus","isCPSCAppAvailable","cpscFormsDetails","regulatoryBodyId","ApplicationsDashboardComponent_Template","ApplicationsDashboardComponent_p_7_Template","ApplicationsDashboardComponent_div_9_Template","site_r20","i_r21","AssessmentCountersignResponseComponent_ng_container_40_div_1_Template","AssessmentCountersignResponseComponent","otherComment","otherLeaveComment","certifiedPhotoValidationFailed","certifiedPhotoIdentityValidationFailed","formatName","focusOnInvalidInputs","allInputs","input","className","submitOutcome","formValue","responseReason","anoutcome","validInputs","countersignForm","AssessmentCountersignResponseComponent_Query","AssessmentCountersignResponseComponent_ng_container_40_Template","AssessmentCountersignResponseComponent_Template_textarea_ngModelChange_63_listener","AssessmentCountersignResponseComponent_p_67_Template","AssessmentCountersignResponseComponent_Template_app_gphc_icon_click_74_listener","AssessmentCountersignResponseComponent_Template_textarea_ngModelChange_125_listener","AssessmentCountersignResponseComponent_p_129_Template","AssessmentCountersignResponseComponent_Template_textarea_ngModelChange_137_listener","AssessmentCountersignResponseComponent_p_140_Template","AssessmentCountersignResponseComponent_Template_mat_radio_group_ngModelChange_146_listener","AssessmentCountersignResponseComponent_Template_button_click_156_listener","AssessmentCountersignResponseComponent_span_159_Template","CcpsComponent_div_15_ng_container_1_div_1_div_3_Template_button_click_3_listener","CcpsComponent_div_15_ng_container_1_div_1_div_3_Template_button_click_5_listener","CcpsComponent_div_15_ng_container_1_div_1_ng_template_4_Template_button_click_2_listener","CcpsComponent_div_15_ng_container_1_div_1_div_3_Template","CcpsComponent_div_15_ng_container_1_div_1_ng_template_4_Template","stepTitle","CcpsComponent_div_15_ng_container_1_app_form_stepper_3_Template_app_form_stepper_stepChanged_0_listener","CcpsComponent_div_15_ng_container_1_app_form_stepper_3_app_ftp_declarations_5_Template","CcpsComponent_div_15_ng_container_1_app_form_stepper_3_Template_app_ccps_review_navigate_8_listener","CcpsComponent_div_15_ng_container_1_app_form_stepper_3_Template_app_payment_navigate_9_listener","displayFtPStep","CcpsComponent_div_15_ng_container_1_div_1_Template","CcpsComponent_div_15_ng_container_1_app_ccps_application_review_2_Template","CcpsComponent_div_15_ng_container_1_app_form_stepper_3_Template","CcpsComponent_div_15_ng_container_1_Template","CcpsComponent_div_16_button_2_Template_button_click_0_listener","CcpsComponent_div_16_button_3_Template_button_click_0_listener","CcpsComponent_div_16_div_4_Template_app_form_stepper_menu_navigate_1_listener","CcpsComponent_div_16_button_2_Template","CcpsComponent_div_16_button_3_Template","CcpsComponent_div_16_div_4_Template","ccpsService","onLoad","WaitingForApplicant","PendingProcessing","showHideFtPStep","isRegisteredSuspended","Registered","Suspended","stepsWithoutFtP","menuWithoutFtP","detectChanges","setCurrentStep","CcpsComponent_Query","CcpsComponent_Template","CcpsComponent_Template_app_form_stepper_menu_navigate_11_listener","CcpsComponent_div_13_Template","CcpsComponent_p_14_Template","CcpsComponent_div_15_Template","CcpsComponent_div_16_Template","CcpsComponent_ng_template_17_Template","EnglishQualificationType","RegistrationRoute","CCPSForm","CCPSApplicationStep","InitialRegistrantQualificationDetail","LegacyRegistrationRoute","EEACountries","EEADirectiveRoute","CcpsDeclarationsComponent_ng_template_0_ng_template_5_Template_mat_checkbox_change_2_listener","CcpsDeclarationsComponent_ng_template_0_ng_template_5_Template_mat_checkbox_ngModelChange_2_listener","appDeclaration","CcpsDeclarationsComponent_ng_template_0_ng_template_5_Template_mat_checkbox_change_11_listener","CcpsDeclarationsComponent_ng_template_0_ng_template_5_Template_mat_checkbox_ngModelChange_11_listener","CcpsDeclarationsComponent_ng_template_0_ng_template_5_Template_mat_checkbox_change_20_listener","CcpsDeclarationsComponent_ng_template_0_ng_template_5_Template_mat_checkbox_ngModelChange_20_listener","CcpsDeclarationsComponent_ng_template_0_ng_template_5_Template_mat_checkbox_change_29_listener","CcpsDeclarationsComponent_ng_template_0_ng_template_5_Template_mat_checkbox_ngModelChange_29_listener","CcpsDeclarationsComponent_ng_template_0_ng_template_5_Template_mat_checkbox_change_38_listener","CcpsDeclarationsComponent_ng_template_0_ng_template_5_Template_mat_checkbox_ngModelChange_38_listener","CcpsDeclarationsComponent_ng_template_0_ng_template_7_Template_mat_checkbox_change_2_listener","CcpsDeclarationsComponent_ng_template_0_ng_template_7_Template_mat_checkbox_ngModelChange_2_listener","CcpsDeclarationsComponent_ng_template_0_ng_template_7_Template_mat_checkbox_change_11_listener","CcpsDeclarationsComponent_ng_template_0_ng_template_7_Template_mat_checkbox_ngModelChange_11_listener","CcpsDeclarationsComponent_ng_template_0_ng_container_4_Template","CcpsDeclarationsComponent_ng_template_0_ng_template_5_Template","CcpsDeclarationsComponent_ng_template_0_ng_template_7_Template","CcpsDeclarationsComponent_ng_template_0_Template_mat_checkbox_ngModelChange_11_listener","isOverallDeclarationAcknowledged","isRegistered","CcpsDeclarationsComponent","formStpperService","CCPSDeclarations","CcpsDeclarationsComponent_Template","CcpsDeclarationsComponent_ng_template_0_Template","CCPSEDIComponent_ng_template_0_section_15_Template_app_edi_ngModelChange_1_listener","CCPSEDIComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","CCPSEDIComponent_ng_template_0_section_15_Template","CCPSEDIComponent","EDIDetails","ediValidation","CCPSEDIComponent_Template","CCPSEDIComponent_ng_template_0_Template","CCPSEDIComponent_ng_template_2_Template","CcpsGuidanceComponent","CcpsGuidanceComponent_Template","CcpsGuidanceComponent_ng_template_0_Template","option_r12","option_r13","CCPSPersonalDetailsComponent_ng_template_0_Template_mat_radio_group_ngModelChange_20_listener","continueExistingName","CCPSPersonalDetailsComponent_ng_template_0_Template_input_blur_38_listener","onTitleChange","CCPSPersonalDetailsComponent_ng_template_0_mat_option_42_Template","CCPSPersonalDetailsComponent_ng_template_0_Template_input_ngModelChange_55_listener","CCPSPersonalDetailsComponent_ng_template_0_Template_input_blur_55_listener","CCPSPersonalDetailsComponent_ng_template_0_Template_input_ngModelChange_64_listener","CCPSPersonalDetailsComponent_ng_template_0_Template_input_ngModelChange_72_listener","CCPSPersonalDetailsComponent_ng_template_0_Template_input_blur_72_listener","CCPSPersonalDetailsComponent_ng_template_0_Template_app_supporting_documents_item_registered_78_listener","CCPSPersonalDetailsComponent_ng_template_0_Template_app_supporting_documents_item_uploaded_78_listener","CCPSPersonalDetailsComponent_ng_template_0_Template_select_ngModelChange_92_listener","CCPSPersonalDetailsComponent_ng_template_0_option_95_Template","CCPSPersonalDetailsComponent_ng_template_0_Template_app_contact_edit_ngModelChange_106_listener","registrantFullName","titleName","titleError","OfficialDocummentConfirmingNameChange","CCPSPersonalDetailsComponent","registrantDetails","attachement","getIndexOfDocummentConfirmingNameChange","findIndex","updateAttachment","hasNewName","CCPSPersonalDetailsComponent_Query","CCPSPersonalDetailsComponent_Template","CCPSPersonalDetailsComponent_ng_template_0_Template","CcpsReviewComponent_ng_template_0_div_2_Template_app_ccps_application_review_navigate_1_listener","CcpsReviewComponent_ng_template_0_div_2_Template","CcpsReviewComponent","CcpsReviewComponent_Template","CcpsReviewComponent_ng_template_0_Template","CcpsReviewComponent_ng_template_2_Template","CcpsApplicationReviewComponent_ng_container_53_div_32_div_1_Template_div_click_0_listener","file_r9","filename","CcpsApplicationReviewComponent_ng_container_53_div_32_div_1_Template","attachmentType","CcpsApplicationReviewComponent_ng_container_53_div_32_Template","nameChangeTitle","nameChangeForename","nameChangeMiddleNames","nameChangeSurname","initQualDetails","pharmacyTechnicianQualificationDetail","degreeName1","qualifiedDate1","degreeName2","qualifiedDate2","countryQualified","datePassed","nameOfUniversity","CcpsApplicationReviewComponent_div_114_div_1_Template","CcpsApplicationReviewComponent_div_114_div_2_Template","CcpsApplicationReviewComponent_div_114_div_3_Template","CcpsApplicationReviewComponent_div_114_div_4_Template","ospapPharmacistQualificationDetail","ospapCourseName","ospapDateQualified","training_r23","trainingSiteName","trainingSiteAddress","trainingStartDate","trainingEndDate","assessmentYear","CcpsApplicationReviewComponent_div_115_div_31_Template","CcpsApplicationReviewComponent_div_115_div_37_Template","CcpsApplicationReviewComponent_div_115_div_39_Template","CcpsApplicationReviewComponent_div_115_div_40_Template","ospapCountryQualified","degreeName","universityName","yearObtained","userRoute","training_r25","CcpsApplicationReviewComponent_div_116_div_23_Template","ukPharmacistQualificationDetail","yearQualified","CcpsApplicationReviewComponent_div_117_div_44_div_5_div_1_Template_div_click_0_listener","file_r28","CcpsApplicationReviewComponent_div_117_div_44_div_5_div_1_Template","PharmcistCVForProfessionalStanding","CcpsApplicationReviewComponent_div_117_div_44_div_5_Template","CcpsApplicationReviewComponent_div_117_div_44_Template","dateStarted","directiveRouteEEA","isCVUploadRequired","irelandPharmacistQualificationDetail","CcpsApplicationReviewComponent_section_120_Template_app_gphc_icon_click_5_listener","_r35","ccpsApplicationStep","FtPDeclarations","CcpsApplicationReviewComponent","pastApplication","initialPharmacyQualificationDetailHeading","education","overseasRegulatoryDetais","pinCode","isPharmacist","EEACountriesList","downloading","setUserRoute","rb","regBodyEmailAddress","standardEmail","nameTitle","loadNationalitiesAndSet","filterById","filteredItem","selectedNationality","eeaRoute","isEEARegulatorSelected","Article23","EEA","Legacy","legacyRegistrationRoute","Reciprocity","qualificationDetailsExists","countryExists","Adjudicating","NorthernIreland","blob","URL","createObjectURL","document","createElement","setAttribute","appendChild","click","CcpsApplicationReviewComponent_Template","CcpsApplicationReviewComponent_Template_app_gphc_icon_click_5_listener","CcpsApplicationReviewComponent_Template_app_gphc_icon_click_31_listener","CcpsApplicationReviewComponent_Template_app_gphc_icon_click_37_listener","CcpsApplicationReviewComponent_Template_app_gphc_icon_click_43_listener","CcpsApplicationReviewComponent_ng_container_53_Template","CcpsApplicationReviewComponent_Template_app_gphc_icon_click_59_listener","OverseasRegularDetails","CcpsApplicationReviewComponent_Template_app_gphc_icon_click_113_listener","InitialPharmacyQualificationDetails","CcpsApplicationReviewComponent_div_114_Template","CcpsApplicationReviewComponent_div_115_Template","CcpsApplicationReviewComponent_div_116_Template","CcpsApplicationReviewComponent_div_117_Template","CcpsApplicationReviewComponent_div_118_Template","CcpsApplicationReviewComponent_div_119_Template","CcpsApplicationReviewComponent_section_120_Template","CcpsApplicationReviewComponent_Template_app_gphc_icon_click_126_listener","CcpsApplicationReviewComponent_Template_app_gphc_icon_click_135_listener","telephone","contactName","emailAddress","CCPSDeclarationSummaryComponent_div_0_ng_container_1_app_declaration_question_1_Template","CCPSDeclarationSummaryComponent_div_0_ng_container_1_Template","CCPSDeclarationSummaryComponent_ng_template_4_div_0_Template","CCPSDeclarationSummaryComponent","CCPSDeclarationSummaryComponent_Template","CCPSDeclarationSummaryComponent_div_0_Template","CCPSDeclarationSummaryComponent_ng_template_2_Template","CCPSDeclarationSummaryComponent_ng_template_4_Template","CCPSDeclarationSummaryComponent_ng_template_6_Template","FtpDeclarationsComponent_ng_template_0_section_2_Template","FtpDeclarationsComponent","FtpDeclarationsComponent_Template","FtpDeclarationsComponent_ng_template_0_Template","FtpDeclarationsComponent_ng_template_2_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_1_textarea_6_Template_textarea_ngModelChange_0_listener","initQualDetail","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_1_textarea_24_Template_textarea_ngModelChange_0_listener","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_1_textarea_6_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_1_Template_input_ngModelChange_7_listener","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_1_p_9_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_1_input_16_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_1_Template_app_utc_date_picker_ngModelChange_17_listener","onDateSelection","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_1_textarea_24_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_1_Template_input_ngModelChange_25_listener","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_1_p_27_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_1_input_34_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_1_Template_app_utc_date_picker_ngModelChange_35_listener","courseExists","isPTDetailsEntered","qualifiedExists","currentDate","country_r38","isYearInvalid","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_2_Template_select_ngModelChange_7_listener","_r40","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_2_option_11_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_2_Template_input_ngModelChange_17_listener","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_2_p_19_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_2_Template_input_ngModelChange_26_listener","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_2_Template_input_change_26_listener","enforceMax","registrationRouteSwitchValue","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_2_Template_input_keyup_26_listener","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_2_p_28_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_2_Template_input_ngModelChange_34_listener","countryFirstRecognised","assessmentDetailsExists","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_1_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_section_2_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_container_1_ng_container_1_Template","_r52","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_container_2_ng_container_1_Template","_r56","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_container_3_ng_container_1_Template","_r58","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_container_4_ng_container_1_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_container_5_ng_container_1_Template","_r60","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_input_6_Template_input_ngModelChange_0_listener","_r82","country_r83","route_r86","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_div_43_Template_select_ngModelChange_5_listener","_r88","eeaDirectiveRouteSelected","onEEADirectiveRouteSelect","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_div_43_option_9_Template","_r84","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_input_6_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_Template_select_ngModelChange_7_listener","_r91","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_option_11_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_Template_input_ngModelChange_17_listener","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_p_19_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_Template_input_ngModelChange_25_listener","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_p_27_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_Template_input_ngModelChange_33_listener","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_Template_input_change_33_listener","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_Template_input_keyup_33_listener","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_p_35_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_Template_input_ngModelChange_40_listener","ctx_r100","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_Template_input_change_40_listener","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_Template_input_keyup_40_listener","ctx_r102","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_p_42_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_div_43_Template","_r70","_r72","_r74","_r76","_r78","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_1_Template_app_gphc_icon_click_6_listener","_r105","ctx_r104","showDegreeMsg","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_1_Template_app_file_upload_uploaded_13_listener","ctx_r106","onDocUpload","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_1_Template_app_file_upload_deleted_13_listener","ctx_r107","onDocDelete","tooltipInfo","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_0_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_section_1_Template","_r54","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_8_input_6_Template_input_ngModelChange_0_listener","_r118","ctx_r117","ctx_r108","country_r119","ctx_r116","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_8_input_6_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_8_Template_select_ngModelChange_7_listener","_r121","ctx_r120","ctx_r122","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_8_option_11_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_8_Template_input_ngModelChange_17_listener","ctx_r123","ctx_r124","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_8_p_19_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_8_Template_input_ngModelChange_25_listener","ctx_r125","ctx_r126","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_8_p_27_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_8_Template_input_ngModelChange_33_listener","ctx_r127","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_8_Template_input_change_33_listener","ctx_r128","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_8_Template_input_keyup_33_listener","ctx_r129","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_8_p_35_Template","_r109","_r111","_r113","_r115","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_input_15_Template_input_ngModelChange_0_listener","_r141","ctx_r140","ctx_r130","qual_r142","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_input_26_Template_input_ngModelChange_0_listener","_r144","ctx_r143","ctx_r133","ctx_r135","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_input_49_Template_input_ngModelChange_0_listener","_r146","ctx_r145","ctx_r137","ctx_r139","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_Template_app_gphc_icon_click_5_listener","_r148","ctx_r147","showDegreeMsgUK","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_input_15_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_Template_select_ngModelChange_16_listener","ctx_r149","courseId","ctx_r150","setCourseName","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_option_20_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_input_26_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_Template_input_ngModelChange_27_listener","ctx_r151","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_Template_input_change_27_listener","ctx_r152","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_Template_input_keyup_27_listener","ctx_r153","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_p_29_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_Template_app_training_details_saveTrainingDetails_34_listener","ctx_r154","updateTrainingDetails","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_input_49_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_Template_input_ngModelChange_50_listener","ctx_r155","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_Template_input_change_50_listener","ctx_r156","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_Template_input_keyup_50_listener","ctx_r157","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_p_52_Template","_r131","otherThanOSPAPQualifications","_r134","_r136","getTrainingRowEditable","checkIfTrainingDetailsExists","trainingDetailsExists","_r138","country_r172","ctx_r171","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_div_10_Template_select_ngModelChange_5_listener","_r174","ctx_r173","ctx_r175","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_div_10_option_9_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_div_10_input_10_Template","ctx_r158","otherQualificationDetailsExists","_r169","reciprocityCountries","country_r179","ctx_r178","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_div_12_Template_select_ngModelChange_4_listener","_r181","ctx_r180","ctx_r182","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_div_12_option_8_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_div_12_input_9_Template","ctx_r159","_r176","countriesList","ctx_r165","qualification_r188","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_section_37_div_5_input_10_Template_input_ngModelChange_0_listener","_r190","ctx_r189","ctx_r187","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_section_37_div_5_Template_select_ngModelChange_5_listener","_r192","ctx_r191","ospapCourseId","ctx_r193","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_section_37_div_5_option_9_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_section_37_div_5_input_10_Template","ctx_r183","_r185","ospapQualifications","ctx_r194","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_section_37_div_6_input_6_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_section_37_div_6_Template_app_utc_date_picker_ngModelChange_7_listener","_r197","ctx_r196","ctx_r198","ctx_r184","_r195","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_section_37_div_5_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_section_37_div_6_Template","ctx_r166","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_section_45_input_13_Template_input_ngModelChange_0_listener","_r203","ctx_r202","ctx_r199","ctx_r201","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_section_45_input_13_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_section_45_Template_input_ngModelChange_14_listener","_r205","ctx_r204","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_section_45_Template_input_change_14_listener","ctx_r206","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_section_45_Template_input_keyup_14_listener","ctx_r207","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_section_45_p_16_Template","ctx_r168","_r200","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_Template_app_gphc_icon_click_5_listener","_r209","ctx_r208","showDegreeMsgOSPAP","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_div_10_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_div_12_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_Template_input_ngModelChange_18_listener","ctx_r210","ctx_r211","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_p_20_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_Template_input_ngModelChange_26_listener","ctx_r212","ctx_r213","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_p_28_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_Template_input_ngModelChange_34_listener","ctx_r214","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_Template_input_change_34_listener","ctx_r215","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_Template_input_keyup_34_listener","ctx_r216","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_p_36_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_section_37_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_Template_app_training_details_saveTrainingDetails_43_listener","ctx_r217","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_section_45_Template","_r160","_r162","_r164","_r167","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_14_input_15_Template_input_ngModelChange_0_listener","_r225","ctx_r224","ctx_r218","qual_r226","ctx_r222","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_14_Template_app_gphc_icon_click_5_listener","_r228","ctx_r227","showDegreeMsgNI","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_14_input_15_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_14_Template_select_ngModelChange_16_listener","ctx_r229","ctx_r230","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_14_option_20_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_14_Template_input_ngModelChange_26_listener","ctx_r231","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_14_Template_input_change_26_listener","ctx_r232","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_14_Template_input_keyup_26_listener","ctx_r233","ctx_r234","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_14_p_28_Template","_r219","_r221","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_container_1_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_container_2_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_container_3_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_container_4_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_container_5_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_6_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_8_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_10_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_12_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_ng_template_14_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_container_6_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_ng_template_7_Template","MAX_TRAININGS","MIN_YEARQUALIFIED","MIN_ASSESSMENTYEAR","MIN_EEAQUALIFIEDYEAR","InitialPharmacyQualificationDetailsComponent","countryChanged","routeChanged","showTrainingForm","newTrainingDetails","siteName","siteAddress","errorMessages","editedTrainingDetails","trainingDetail","isEditTrainingDetails","trainingDetailsSaved","qualificationsToSelectFrom","addTrainingFlag","PTQualifcationDetails","DELETE_URL","startDateTouched","endDateTouched","assessmentName","list","initiateQualifcationDetails","getRegistrationRoute","eeaDirRoute","qual","getIndexOfCV","updateAttachmentsList","UKPlusOverseas","educationTrainingDetails","countryFirstRecognized","cvUpload","ospapDetails","String","dateType","valueStr","invalidYearFormat","setRouteDetailsNull","checkIfInValid","firstQualDetails","secQualDetails","trainingDetailsComp","isEducationDetailsValid","InitialPharmacyQualificationDetailsComponent_Query","InitialPharmacyQualificationDetailsComponent_Template","InitialPharmacyQualificationDetailsComponent_ng_template_0_Template","TrainingDetailsComponent_ng_container_0_div_1_app_gphc_icon_2_Template_app_gphc_icon_click_0_listener","i_r3","editTrainingDetails","editTrainingRow","TrainingDetailsComponent_ng_container_0_div_1_app_gphc_icon_2_Template","TrainingDetailsComponent_ng_container_0_div_1_Template_app_gphc_icon_click_3_listener","deleteTrainingDetails","training_r2","TrainingDetailsComponent_ng_container_0_div_27_Template_button_click_1_listener","deleteTraining","TrainingDetailsComponent_ng_container_0_div_58_Template_button_click_2_listener","updateTraining","allowSave","TrainingDetailsComponent_ng_container_0_div_1_Template","TrainingDetailsComponent_ng_container_0_input_8_Template","TrainingDetailsComponent_ng_container_0_Template_input_ngModelChange_9_listener","_r36","TrainingDetailsComponent_ng_container_0_p_11_Template","TrainingDetailsComponent_ng_container_0_Template_textarea_ngModelChange_21_listener","TrainingDetailsComponent_ng_container_0_p_23_Template","TrainingDetailsComponent_ng_container_0_div_27_Template","TrainingDetailsComponent_ng_container_0_input_34_Template","TrainingDetailsComponent_ng_container_0_Template_app_utc_date_picker_ngModelChange_35_listener","TrainingDetailsComponent_ng_container_0_Template_app_utc_date_picker_click_35_listener","isDatePickerClicked","onDateChange","TrainingDetailsComponent_ng_container_0_input_45_Template","TrainingDetailsComponent_ng_container_0_Template_app_utc_date_picker_ngModelChange_46_listener","TrainingDetailsComponent_ng_container_0_Template_app_utc_date_picker_click_46_listener","TrainingDetailsComponent_ng_container_0_div_58_Template","getErrorOnDelete","deleteButtonFlag","dateRangeInvalid","editStartDate","editEndDate","TrainingDetailsComponent_div_2_Template_button_click_1_listener","addNew","TrainingDetailsComponent","existingTrainingDetails","saveTrainingDetails","initiateTrainingDetails","checkObjectHasNullEmptyValue","setstartEndDateNull","row","updatedTrainingDetails","showErr","entries","TrainingDetailsComponent_Template","TrainingDetailsComponent_ng_container_0_Template","TrainingDetailsComponent_div_2_Template","country_r12","regulator_r13","addressLine1","addressLine2","addressLine3","countyState","postCode","OverseasRegularDetailsComponent_ng_template_0_Template_select_ngModelChange_17_listener","OverseasRegularDetailsComponent_ng_template_0_Template_select_change_17_listener","OverseasRegularDetailsComponent_ng_template_0_option_21_Template","OverseasRegularDetailsComponent_ng_template_0_Template_select_ngModelChange_27_listener","OverseasRegularDetailsComponent_ng_template_0_Template_select_change_27_listener","selectChangeRegulatoryBodyHandler","OverseasRegularDetailsComponent_ng_template_0_option_31_Template","OverseasRegularDetailsComponent_ng_template_0_p_32_Template","OverseasRegularDetailsComponent_ng_template_0_section_33_Template","OverseasRegularDetailsComponent_ng_template_0_Template_input_ngModelChange_41_listener","OverseasRegularDetailsComponent_ng_template_0_Template_input_ngModelChange_47_listener","OverseasRegularDetailsComponent_ng_template_0_Template_input_ngModelChange_57_listener","isRegBodySubmitted","invalidTelNumber","OverseasRegularDetailsComponent","regulatoryBodiesSubmitted","countryAndRegBodies","ccpsFormDetails","reg","getRegulatorBodies","selectCountryHandler","selectRegulatoryBodyHandler","regBody","checkIfRegBodySubmitted","regBodySelected","isTelNumberValid","selectChangeCountryHandler","countrySelected","regulatorSelected","regBody1","regBody2","localeCompare","OverseasRegularDetailsComponent_Template","OverseasRegularDetailsComponent_ng_template_0_Template","PaymentComponent_ng_template_0_section_3_Template_mat_radio_group_ngModelChange_21_listener","PaymentComponent_ng_template_0_section_3_mat_radio_button_22_Template","PaymentComponent_ng_template_0_section_3_Template","PaymentComponent","outStandingPaymentDetails","isDateValid","PaymentComponent_Query","PaymentComponent_Template","PaymentComponent_ng_template_0_Template","PaymentComponent_ng_template_2_Template","CountersignComponent_div_15_section_2_Template_mat_checkbox_ngModelChange_7_listener","certified","CountersignComponent_div_15_section_3_Template_mat_checkbox_ngModelChange_7_listener","CountersignComponent_div_15_section_7_div_6_Template","CountersignComponent_div_15_section_7_Template_mat_radio_group_ngModelChange_9_listener","CountersignComponent_div_15_section_7_Template_textarea_ngModelChange_20_listener","CountersignComponent_div_15_section_7_Template_button_click_30_listener","CountersignComponent_div_15_section_7_span_31_Template","CountersignComponent_div_15_section_7_span_32_Template","submitClicked","technicianAndROSApplicationValidationFailed","isCertified","CountersignComponent_div_15_section_2_Template","CountersignComponent_div_15_section_3_Template","CountersignComponent_div_15_section_4_Template","CountersignComponent_div_15_section_5_Template","CountersignComponent_div_15_section_6_Template","CountersignComponent_div_15_section_7_Template","IndependentPrescriber","isFinalDeclaration","isPrescriber","arosService","independentPrescriberService","ref","technicianApplicationValidationFailed","responseReasonInput","ngAfterContentChecked","Array","valError","isCertifiedPhoto","CountersignComponent_Query","CountersignComponent_h1_3_Template","CountersignComponent_h1_4_Template","CountersignComponent_Template_button_click_6_listener","CountersignComponent_Template_button_click_11_listener","CountersignComponent_div_15_Template","site_r23","i_r24","FinalDeclarationCountersignResponseComponent_ng_container_43_div_1_Template","FinalDeclarationCountersignResponseComponent","approved","professionalHealthcareName","professionalHealthJobRole","professionalHealthRegNumber","tutorFeedback","FinalDeclarationCountersignResponseComponent_Query","FinalDeclarationCountersignResponseComponent_ng_container_43_Template","FinalDeclarationCountersignResponseComponent_Template_mat_radio_group_ngModelChange_65_listener","FinalDeclarationCountersignResponseComponent_Template_textarea_ngModelChange_80_listener","FinalDeclarationCountersignResponseComponent_p_84_Template","FinalDeclarationCountersignResponseComponent_Template_input_ngModelChange_103_listener","FinalDeclarationCountersignResponseComponent_Template_input_ngModelChange_114_listener","FinalDeclarationCountersignResponseComponent_Template_input_ngModelChange_125_listener","FinalDeclarationCountersignResponseComponent_Template_textarea_ngModelChange_137_listener","FinalDeclarationCountersignResponseComponent_p_141_Template","FinalDeclarationCountersignResponseComponent_Template_mat_radio_group_ngModelChange_149_listener","FinalDeclarationCountersignResponseComponent_Template_input_ngModelChange_173_listener","FinalDeclarationCountersignResponseComponent_Template_input_ngModelChange_183_listener","FinalDeclarationCountersignResponseComponent_Template_input_ngModelChange_193_listener","FinalDeclarationCountersignResponseComponent_Template_textarea_ngModelChange_207_listener","FinalDeclarationCountersignResponseComponent_Template_button_click_216_listener","FinalDeclarationCountersignResponseComponent_span_219_Template","maxlength","IndependentPrescriberApplicationStep","IndependentPrescriberApplicationComponent_div_15_ng_container_1_div_1_div_3_Template_button_click_3_listener","IndependentPrescriberApplicationComponent_div_15_ng_container_1_div_1_div_3_Template_button_click_5_listener","IndependentPrescriberApplicationComponent_div_15_ng_container_1_div_1_ng_template_4_Template_button_click_2_listener","IndependentPrescriberApplicationComponent_div_15_ng_container_1_div_1_div_3_Template","IndependentPrescriberApplicationComponent_div_15_ng_container_1_div_1_ng_template_4_Template","IndependentPrescriberApplicationComponent_div_15_ng_container_1_app_form_stepper_3_Template_app_form_stepper_stepChanged_0_listener","IndependentPrescriberApplicationComponent_div_15_ng_container_1_app_form_stepper_3_Template_app_qualification_step_isMentorRegistered_1_listener","checkIfCounterSignatureHasToBeDisplayed","IndependentPrescriberApplicationComponent_div_15_ng_container_1_app_form_stepper_3_app_counter_signature_step_2_Template","displayCounterSignaturePage","IndependentPrescriberApplicationComponent_div_15_ng_container_1_div_1_Template","IndependentPrescriberApplicationComponent_div_15_ng_container_1_app_independent_prescriber_final_review_2_Template","IndependentPrescriberApplicationComponent_div_15_ng_container_1_app_form_stepper_3_Template","IndependentPrescriberApplicationComponent_div_15_ng_container_1_Template","IndependentPrescriberApplicationComponent_div_16_button_2_Template_button_click_0_listener","IndependentPrescriberApplicationComponent_div_16_button_3_Template_button_click_0_listener","IndependentPrescriberApplicationComponent_div_16_div_4_Template_app_form_stepper_menu_navigate_1_listener","IndependentPrescriberApplicationComponent_div_16_button_2_Template","IndependentPrescriberApplicationComponent_div_16_button_3_Template","IndependentPrescriberApplicationComponent_div_16_div_4_Template","displayCounterSigningPage","IndependentPrescriberStep","getPrescriber","savePrescriber","counterSignatures","display","stepsWithoutCounterSign","menuWithoutCounterSign","IndependentPrescriberApplicationComponent_Query","IndependentPrescriberApplicationComponent_Template","IndependentPrescriberApplicationComponent_Template_app_form_stepper_menu_navigate_11_listener","IndependentPrescriberApplicationComponent_div_13_Template","IndependentPrescriberApplicationComponent_p_14_Template","IndependentPrescriberApplicationComponent_div_15_Template","IndependentPrescriberApplicationComponent_div_16_Template","IndependentPrescriberApplicationComponent_ng_template_17_Template","IndependentPrescriberForm","CounterSignatureStepComponent_ng_template_0_div_19_Template_input_ngModelChange_4_listener","CounterSignatureStepComponent_ng_template_0_div_20_Template_input_ngModelChange_4_listener","CounterSignatureStepComponent_ng_template_0_div_21_Template_input_ngModelChange_4_listener","CounterSignatureStepComponent_ng_template_0_li_36_Template_button_click_1_listener","CounterSignatureStepComponent_ng_template_0_li_37_Template_button_click_1_listener","CounterSignatureStepComponent_ng_template_0_li_37_span_2_Template","CounterSignatureStepComponent_ng_template_0_li_37_span_3_Template","CounterSignatureStepComponent_ng_template_0_li_37_div_4_Template","CounterSignatureStepComponent_ng_template_0_div_38_p_1_Template","CounterSignatureStepComponent_ng_template_0_div_38_p_2_Template","CounterSignatureStepComponent_ng_template_0_div_38_p_3_Template","searchedSelf","CounterSignatureStepComponent_ng_template_0_div_47_Template_button_click_1_listener","_r44","CounterSignatureStepComponent_ng_template_0_div_48_Template_button_click_1_listener","_r46","CounterSignatureStepComponent_ng_template_0_ng_container_53_span_3_Template","CounterSignatureStepComponent_ng_template_0_ng_container_53_span_4_Template","CounterSignatureStepComponent_ng_template_0_ng_template_54_ng_container_0_Template","CounterSignatureStepComponent_ng_template_0_ng_template_56_Template_button_click_3_listener","error_r52","CounterSignatureStepComponent_ng_template_0_div_6_Template","CounterSignatureStepComponent_ng_template_0_Template_mat_radio_group_ngModelChange_13_listener","CounterSignatureStepComponent_ng_template_0_div_19_Template","CounterSignatureStepComponent_ng_template_0_div_20_Template","CounterSignatureStepComponent_ng_template_0_div_21_Template","CounterSignatureStepComponent_ng_template_0_Template_button_click_23_listener","CounterSignatureStepComponent_ng_template_0_li_36_Template","CounterSignatureStepComponent_ng_template_0_li_37_Template","CounterSignatureStepComponent_ng_template_0_div_38_Template","CounterSignatureStepComponent_ng_template_0_div_47_Template","CounterSignatureStepComponent_ng_template_0_div_48_Template","CounterSignatureStepComponent_ng_template_0_ng_container_53_Template","CounterSignatureStepComponent_ng_template_0_ng_template_54_Template","CounterSignatureStepComponent_ng_template_0_ng_template_56_Template","CounterSignatureStepComponent_ng_template_0_p_59_Template","CounterSignatureStepComponent","selectedMentor","CounterSignatureStepComponent_Query","CounterSignatureStepComponent_Template","CounterSignatureStepComponent_ng_template_0_Template","DeclarationsStepComponent_ng_template_0_Template_mat_radio_group_ngModelChange_10_listener","DeclarationsStepComponent_ng_template_0_Template_mat_radio_group_ngModelChange_21_listener","DeclarationsStepComponent_ng_template_0_Template_mat_radio_group_ngModelChange_32_listener","DeclarationsStepComponent_ng_template_0_Template_mat_radio_group_ngModelChange_43_listener","DeclarationsStepComponent_ng_template_0_Template_mat_radio_group_ngModelChange_54_listener","DeclarationsStepComponent","Declarations","DeclarationsStepComponent_Template","DeclarationsStepComponent_ng_template_0_Template","EdiStepComponent_ng_template_0_section_15_Template_app_edi_ngModelChange_1_listener","EdiStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","EdiStepComponent_ng_template_0_section_15_Template","EdiStepComponent","EdiStepComponent_Template","EdiStepComponent_ng_template_0_Template","EdiStepComponent_ng_template_2_Template","mentorName","IndependentPrescriberFinalReviewComponent_ng_container_2_div_36_div_22_Template_div_click_1_listener","file_r5","IndependentPrescriberFinalReviewComponent_ng_container_2_div_36_div_22_Template","prescriberRegistrationNo","ukRegulatoryBody","IndependentPrescriberFinalReviewComponent_ng_container_2_div_35_Template","IndependentPrescriberFinalReviewComponent_ng_container_2_div_36_Template","courseTitle","getAwardedDate","IndependentPrescriberFinalReviewComponent","getIcon","bits","extension","getAwarededDate","sixMonthsPostAwardedDate","IndependentPrescriberFinalReviewComponent_Template","IndependentPrescriberFinalReviewComponent_ng_container_2_Template","PaymentStepComponent_ng_template_0_section_3_Template_mat_radio_group_ngModelChange_21_listener","PaymentStepComponent_ng_template_0_section_3_mat_radio_button_22_Template","indyPrescriberApplicationFee","regulator_r11","QualificationStepComponent_ng_template_0_ng_container_28_ng_container_19_Template_input_ngModelChange_6_listener","counterSignatureDetails","QualificationStepComponent_ng_template_0_ng_container_28_ng_container_19_Template_input_blur_6_listener","QualificationStepComponent_ng_template_0_ng_container_28_ng_container_19_Template_input_ngModelChange_13_listener","QualificationStepComponent_ng_template_0_ng_container_28_ng_container_19_Template_input_blur_13_listener","QualificationStepComponent_ng_template_0_ng_container_28_ng_container_19_Template_select_ngModelChange_20_listener","QualificationStepComponent_ng_template_0_ng_container_28_ng_container_19_Template_select_change_20_listener","QualificationStepComponent_ng_template_0_ng_container_28_ng_container_19_option_22_Template","QualificationStepComponent_ng_template_0_ng_container_28_ng_container_19_Template_app_file_upload_uploaded_28_listener","QualificationStepComponent_ng_template_0_ng_container_28_ng_container_19_Template_app_file_upload_deleted_28_listener","prescriberMentorNotRegistered","countersignerGPhCId","regulators","applicantFormDetails","QualificationStepComponent_ng_template_0_ng_container_28_Template_mat_radio_group_ngModelChange_13_listener","onMentorRegistrationChange","QualificationStepComponent_ng_template_0_ng_container_28_ng_container_19_Template","QualificationStepComponent_ng_template_0_Template_app_gphc_icon_click_2_listener","QualificationStepComponent_ng_template_0_Template_input_ngModelChange_27_listener","QualificationStepComponent_ng_template_0_ng_container_28_Template","isDateBeyondSixMonths","UKRegulators","QualificationStepComponent","QualificationDetails","IndyPrescriberMentorConfirmation","nextStepClicked","choiceConfirmed","counterSignature","checkIfAwardedDateMoreThanSixMonths","askConfirmation","QualificationStepComponent_Query","QualificationStepComponent_Template","QualificationStepComponent_ng_template_0_Template","IndependentPrescriberMentorCountersigninComponent","IndependentPrescriberMentorCountersigninComponent_Query","IndependentPrescriberMentorCountersigninComponent_Template_mat_radio_group_ngModelChange_10_listener","IndependentPrescriberMentorCountersigninComponent_Template_button_click_20_listener","IndependentPrescriberMentorCountersigninComponent_span_23_Template","applicantName","LearningContractResponse","tutors_r10","firstname","LearningContractResponseComponent_div_15_table_28_tr_13_ul_10_Template","training_r8","pharmacyName","LearningContractResponseComponent_div_15_table_28_tr_13_Template","studentData","student","LearningContractResponseComponent_div_15_table_28_Template","LearningContractResponseComponent_div_15_Template_mat_radio_group_ngModelChange_35_listener","LearningContractResponseComponent_div_15_Template_textarea_ngModelChange_46_listener","LearningContractResponseComponent_div_15_Template_button_click_53_listener","LearningContractResponseComponent_div_15_span_54_Template","LearningContractResponseComponent_div_15_span_55_Template","LearningContractResponseComponent_Query","LearningContractResponseComponent_Template_button_click_6_listener","LearningContractResponseComponent_Template_button_click_11_listener","LearningContractResponseComponent_div_15_Template","LetterComponent_Template","LetterComponent_app_remediation_letter_0_Template","LetterComponent_app_nor_letter_1_Template","LetterComponent_app_noir_letter_2_Template","LetterComponent_app_noe_letter_3_Template","LetterComponent_app_training_record_letter_4_Template","LetterComponent_app_renewal_letter_5_Template","LetterComponent_app_noe_letter_6_Template","LetterComponent_app_assessment_approve_letter_7_Template","LetterComponent_app_assessment_attempt_pass_letter_8_Template","LetterComponent_app_assessment_first_second_attempt_fail_letter_9_Template","LetterComponent_app_assessment_third_attempt_fail_letter_10_Template","LetterComponent_app_vr_confirmation_letter_11_Template","TrainingRecord","Renewal","TechnicianApplicantNoticeOfEntryLetter","AssessmentAttemptApplicationApprovedLetter","AssessmentAttemptResultPassOutcome","AssessmentAttemptResult1Or2SittingFailOutcome","AssessmentAttemptResult3SittingFailOutcome","VoluntaryRemovalIntimationLetter","DateOfResults","PreEntryID","registrantName","DateOfAssessment","Part1PassMark","Part1CandidateMark","Part2PassMark","Part2CandidateMark","AssessmentAttemptPassLetterComponent","registrantAddress","l","CandidateNumber","Part1Outcome","Part2Outcome","AssessmentAttemptPassLetterComponent_Template","AssessmentAttemptPassLetterComponent_Template_button_click_6_listener","AssessmentAttemptPassLetterComponent_Template_button_click_11_listener","AssessmentAttemptPassLetterComponent_div_15_Template","AssessmentFirstAndSecondAttemptFailLetterComponent","AssessmentFirstAndSecondAttemptFailLetterComponent_Template","AssessmentFirstAndSecondAttemptFailLetterComponent_Template_button_click_6_listener","AssessmentFirstAndSecondAttemptFailLetterComponent_Template_button_click_11_listener","AssessmentFirstAndSecondAttemptFailLetterComponent_div_15_Template","AssessmentThirdAttemptFailLetterComponent","AssessmentThirdAttemptFailLetterComponent_Template","AssessmentThirdAttemptFailLetterComponent_Template_button_click_6_listener","AssessmentThirdAttemptFailLetterComponent_Template_button_click_11_listener","AssessmentThirdAttemptFailLetterComponent_div_15_Template","AssessmentApproveLetterComponent","AssessmentName","AssessmentApproveLetterComponent_Template","AssessmentApproveLetterComponent_Template_button_click_6_listener","AssessmentApproveLetterComponent_Template_button_click_11_listener","AssessmentApproveLetterComponent_div_15_Template","signature","LetterFooterComponent_div_2_img_1_Template","LetterFooterComponent_div_2_p_2_Template","LetterFooterComponent_div_2_p_3_Template","LetterFooterComponent_div_2_img_4_Template","LetterFooterComponent_div_2_p_5_Template","LetterFooterComponent_div_2_p_6_Template","LetterFooterComponent_div_2_p_7_Template","LetterFooterComponent_div_2_p_8_Template","LetterFooterComponent_div_2_p_9_Template","LetterFooterComponent_div_2_p_10_Template","LetterFooterComponent","LetterFooterComponent_Template","LetterFooterComponent_div_2_Template","LetterHeaderComponent","isAssessmentApprove","assessmentApproveTraineeAddress","LetterHeaderComponent_Template","LetterHeaderComponent_div_4_Template","NIRLetterSentDate","NIRResponseDate","RemovalDate","registrantType","appealDate","NorComponent","removalTicks","NorComponent_Template","NorComponent_Template_button_click_6_listener","NorComponent_Template_button_click_11_listener","NorComponent_div_15_Template","NoticeOfEntryComponent_div_15_span_37_Template","NoticeOfEntryComponent_div_15_ng_template_38_Template","NoticeOfEntryComponent","usr","NoticeOfEntryComponent_Template","NoticeOfEntryComponent_Template_button_click_6_listener","NoticeOfEntryComponent_Template_button_click_11_listener","NoticeOfEntryComponent_div_15_Template","NoticeOfIntendedRemovalComponent","initialCallDate","InitialCallDate","firstReminderEmail","FirstReminderEmail","finalReminderEmail","FinalReminderEmail","NoticeOfIntendedRemovalComponent_Template","NoticeOfIntendedRemovalComponent_Template_button_click_6_listener","NoticeOfIntendedRemovalComponent_Template_button_click_11_listener","NoticeOfIntendedRemovalComponent_div_15_Template","NoticeOfRemediationComponent","SubmissionDeadline","NoticeOfRemediationComponent_Template","NoticeOfRemediationComponent_Template_button_click_6_listener","NoticeOfRemediationComponent_Template_button_click_11_listener","NoticeOfRemediationComponent_div_15_Template","RenewalCardLetterComponent","RenewalCardLetterComponent_Template","ɵɵtextInterpolate4","ExpiryDate","AnnualRenewalAmount","DDMandateDeadline","item_r1","Amount","RenewalDDLetterComponent","RenewalDDLetterComponent_Template","RenewalDDLetterComponent_tr_53_Template","DDDeclarationDeadline","DirectDebitPayments","RenewalLetterComponent_div_15_app_renewal_card_letter_1_Template","RenewalLetterComponent_div_15_app_renewal_dd_letter_2_Template","Card","DirectDebit","RenewalLetterComponent","RenewalLetterComponent_Template","RenewalLetterComponent_Template_button_click_6_listener","RenewalLetterComponent_Template_button_click_11_listener","RenewalLetterComponent_div_15_Template","trainingSite_r2","StartDate","EndDate","ɵɵtextInterpolate7","PharmacyName","AddressLine1","AddressLine2","AddressLine3","Town","County","PostCode","TrainingRecordComponent_div_15_tr_165_Template","registrantEmail","TrainingRecordComponent","TrainingSites","site1","site2","PreEntryNumber","TrainingRecordComponent_Template","TrainingRecordComponent_Template_button_click_6_listener","TrainingRecordComponent_Template_button_click_11_listener","TrainingRecordComponent_div_15_Template","VrConfirmationLetterComponent","isVRApplicationAvailable","VrConfirmationLetterComponent_Template","VrConfirmationLetterComponent_Template_button_click_6_listener","VrConfirmationLetterComponent_Template_button_click_11_listener","VrConfirmationLetterComponent_div_15_Template","AnnotationType","PremisesSearchParams","superintendent","superIntendentPosition","RegistrantBadgeComponent","RegistrantBadgeComponent_Template","RegistrantDashboardComponent_div_7_div_1_Template","RegistrantDashboardComponent_div_7_div_2_Template","noPendingFee","RegistrantDashboardComponent_div_8_ng_container_7_ng_container_1_div_1_span_3_Template","RegistrantDashboardComponent_div_8_ng_container_7_ng_container_1_div_1_span_4_Template","RegistrantDashboardComponent_div_8_ng_container_7_ng_container_1_div_1_span_5_Template","submission","expectations","RegistrantDashboardComponent_div_8_ng_container_7_ng_container_1_div_1_Template","RegistrantDashboardComponent_div_8_ng_container_7_ng_container_1_Template","revalidationError","RegistrantDashboardComponent_div_8_div_11_div_1_Template","RegistrantDashboardComponent_div_8_div_11_div_2_Template","RegistrantDashboardComponent_div_8_div_11_div_3_Template","RegistrantDashboardComponent_div_8_ng_container_7_Template","RegistrantDashboardComponent_div_8_div_11_Template","loadingRevalidation","loadingRenewal","renewalError","RegistrantDashboardComponent_ng_template_10_ng_template_13_div_2_Template","RegistrantDashboardComponent_ng_template_10_ng_template_13_Template","RegistrantDashboardComponent_ng_template_12_div_3_Template","errorTemplate","RegistrantDashboardComponent","revalidationService","caseSplit","isRTR","returnToRegisterFormStatus","isApprovedPendingRestorationFee","ApprovedPendingRestorationFee","loadRenewal","loadRevalidation","calculateIfNoticeOfEntry","revalidation","loadReturToRegister","payRestorationFee","payRestorationAndRenewalFee","releaseDate","cutOffDate","calcCutOffDate","dateToday","cutOffNoticeOfEntry","CaseSplitPipe","RegistrantDashboardComponent_Template","RegistrantDashboardComponent_p_4_Template","RegistrantDashboardComponent_p_5_Template","RegistrantDashboardComponent_div_7_Template","RegistrantDashboardComponent_div_8_Template","RegistrantDashboardComponent_div_9_Template","RegistrantDashboardComponent_ng_template_10_Template","RegistrantDashboardComponent_ng_template_12_Template","RegistrantDashboardComponent_ng_template_14_Template","RegistrantDashboardComponent_ng_template_16_Template","RegistrantDashboardComponent_ng_template_18_Template","RegistrantDashboardComponent_ng_template_20_Template","letter_r12","RegistrationComponent_div_7_div_59_a_1_Template","RegistrationComponent_div_7_button_62_Template_button_click_0_listener","ɵɵpropertyInterpolate2","sig_r16","RegistrationComponent_div_7_ul_67_li_1_Template","countersigs","contract_r18","RegistrationComponent_div_7_ul_74_li_1_Template","learningContracts","RegistrationComponent_div_7_div_59_Template","RegistrationComponent_div_7_ng_template_60_Template","RegistrationComponent_div_7_button_62_Template","RegistrationComponent_div_7_ul_67_Template","RegistrationComponent_div_7_ng_template_68_Template","RegistrationComponent_div_7_ul_74_Template","RegistrationComponent_div_7_ng_template_75_Template","isDev","loadingCountersigs","loadingLearningContracts","prescriberStatuses","isRTRApplicationAvailable","loadLearningContracts","lc","RegistrationComponent_Template","RegistrationComponent_div_7_Template","VrEdiStepComponent","VrFtpDeclarationStepComponent","VrApplicationDeclarationsStepComponent","VrApplicationReviewStepComponent","VrPaymentStepComponent","VrDateReasonForRemovalRequiredStepComponent","VrDeclarationSummaryComponent","VrApplicationReviewComponent","PersonalDetailsComponent","LetterOfGoodStandingComponent","RegistrationDetailsComponent","RevalidationRecordOutstandingComponent","EqualityDiversityComponent","ApplicationDeclarationsComponent","FtpDeclarationOneComponent","FtpDeclarationTwoComponent","RtrReviewStepComponent","RtrApplicationReviewComponent","RtrPaymentStepComponent","card_r11","message_r12","error_r13","RestorationFeePayment_div_7_div_44_Template_button_click_1_listener","RestorationFeePayment_div_7_ng_template_45_div_0_Template","RestorationFeePayment_div_7_ng_template_45_div_1_Template","RestorationFeePayment_div_7_p_9_Template","RestorationFeePayment_div_7_p_12_Template","RestorationFeePayment_div_7_Template_mat_radio_group_ngModelChange_24_listener","RestorationFeePayment_div_7_mat_radio_button_25_Template","RestorationFeePayment_div_7_p_27_Template","RestorationFeePayment_div_7_p_29_Template","RestorationFeePayment_div_7_div_44_Template","RestorationFeePayment_div_7_ng_template_45_Template","isApplicationPendingProcessing","navigateToHome","restorationToRegisterFeeAmount","RestorationFeePayment_Query","RestorationFeePayment_div_6_Template","RestorationFeePayment_div_7_Template","ftpDeclarationObj","questionName","isInvestigated","caseReferenceNo","investigationDate","titleUsed","employerName","howWhereUsedIt","titleUsedFrom","titleUsedUntil","employerAddress","setValuesIfNotRegistered","setValuesIfInvestigated","setValuesIfNotInvestigated","ReturnToRegisterApplicationForm","RestorationFeePaidPendingApproval","ReturnToRegisterStep","ReturnToRegisterStepWithoutRevalidationOutstanding","ReturnToRegisterComponent_div_14_ng_container_1_app_form_stepper_2_Template_app_form_stepper_stepChanged_0_listener","ReturnToRegisterComponent_div_14_ng_container_1_app_form_stepper_2_app_revalidation_record_outstanding_5_Template","ReturnToRegisterComponent_div_14_ng_container_1_app_form_stepper_2_Template_app_rtr_review_step_navigate_11_listener","revalidationRecordOutstanding","ReturnToRegisterComponent_div_14_ng_container_1_app_rtr_application_review_1_Template","ReturnToRegisterComponent_div_14_ng_container_1_app_form_stepper_2_Template","ReturnToRegisterComponent_div_14_ng_container_1_Template","ReturnToRegisterComponent_div_15_button_2_Template_button_click_0_listener","ReturnToRegisterComponent_div_15_button_3_Template_button_click_0_listener","ReturnToRegisterComponent_div_15_div_4_Template_app_form_stepper_menu_navigate_1_listener","ReturnToRegisterComponent_div_15_button_2_Template","ReturnToRegisterComponent_div_15_button_3_Template","ReturnToRegisterComponent_div_15_div_4_Template","displayRevalidationRecordOutstanding","isRequiredRevalidationSubmission","returnToRegisterDetail","confirmUserNameChange","stepsWithoutRevalOutstanding","menuWithoutRevalOutstanding","displayRevalRecordOutstandingStep","ReturnToRegisterComponent_Query","ReturnToRegisterComponent_Template","ReturnToRegisterComponent_Template_app_form_stepper_menu_navigate_11_listener","ReturnToRegisterComponent_p_13_Template","ReturnToRegisterComponent_div_14_Template","ReturnToRegisterComponent_div_15_Template","ReturnToRegisterComponent_ng_template_16_Template","ApplicationDeclarationsComponent_ng_template_0_Template_mat_checkbox_change_6_listener","ApplicationDeclarationsComponent_ng_template_0_Template_mat_checkbox_ngModelChange_6_listener","ApplicationDeclarationsComponent_ng_template_0_Template_mat_checkbox_change_15_listener","ApplicationDeclarationsComponent_ng_template_0_Template_mat_checkbox_ngModelChange_15_listener","ApplicationDeclarationsComponent_ng_template_0_Template_mat_checkbox_change_24_listener","ApplicationDeclarationsComponent_ng_template_0_Template_mat_checkbox_ngModelChange_24_listener","ApplicationDeclarationsComponent_ng_template_0_Template_mat_checkbox_ngModelChange_36_listener","rtrService","ApplicationDeclarations","isNoToAllFtpDeclarations","isPartlyNotifiedYes","noticedByGphc","ApplicationDeclarationsComponent_Template","ApplicationDeclarationsComponent_ng_template_0_Template","EqualityDiversityComponent_ng_template_0_section_15_Template_app_edi_ngModelChange_1_listener","EqualityDiversityComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","EqualityDiversityComponent_ng_template_0_section_15_Template","EqualityDiversityComponent_Template","EqualityDiversityComponent_ng_template_0_Template","EqualityDiversityComponent_ng_template_2_Template","FtpDeclarationOneComponent_ng_template_0_section_2_Template","FtpDeclarationsOne","RegistrationJoinDeclarations","FtpDeclarationOneComponent_Template","FtpDeclarationOneComponent_ng_template_0_Template","FtpDeclarationOneComponent_ng_template_2_Template","FtpDeclarationTwoComponent_ng_template_0_div_19_Template_mat_radio_group_ngModelChange_6_listener","question10","FtpDeclarationTwoComponent_ng_template_0_div_20_Template_input_blur_11_listener","FtpDeclarationTwoComponent_ng_template_0_div_20_Template_input_ngModelChange_11_listener","FtpDeclarationTwoComponent_ng_template_0_div_20_Template_app_utc_date_picker_ngModelChange_19_listener","dateChange","minDate","FtpDeclarationTwoComponent_ng_template_0_div_21_Template_input_blur_11_listener","FtpDeclarationTwoComponent_ng_template_0_div_21_Template_input_ngModelChange_11_listener","FtpDeclarationTwoComponent_ng_template_0_div_21_Template_app_daterange_changed_18_listener","onDateRangeChange","FtpDeclarationTwoComponent_ng_template_0_div_21_Template_input_blur_26_listener","FtpDeclarationTwoComponent_ng_template_0_div_21_Template_input_ngModelChange_26_listener","FtpDeclarationTwoComponent_ng_template_0_div_21_Template_app_address_edit_ngModelChange_33_listener","FtpDeclarationTwoComponent_ng_template_0_div_37_Template_mat_radio_group_ngModelChange_6_listener","question11","FtpDeclarationTwoComponent_ng_template_0_div_38_Template_input_ngModelChange_10_listener","FtpDeclarationTwoComponent_ng_template_0_div_38_Template_input_blur_10_listener","FtpDeclarationTwoComponent_ng_template_0_div_38_Template_app_utc_date_picker_ngModelChange_17_listener","FtpDeclarationTwoComponent_ng_template_0_div_39_Template_input_ngModelChange_10_listener","FtpDeclarationTwoComponent_ng_template_0_div_39_Template_input_blur_10_listener","FtpDeclarationTwoComponent_ng_template_0_div_39_Template_app_daterange_changed_17_listener","onDatesChange","FtpDeclarationTwoComponent_ng_template_0_div_39_Template_textarea_ngModelChange_23_listener","FtpDeclarationTwoComponent_ng_template_0_div_39_p_26_Template","FtpDeclarationTwoComponent_ng_template_0_Template_mat_radio_group_ngModelChange_13_listener","FtpDeclarationTwoComponent_ng_template_0_div_19_Template","FtpDeclarationTwoComponent_ng_template_0_div_20_Template","FtpDeclarationTwoComponent_ng_template_0_div_21_Template","FtpDeclarationTwoComponent_ng_template_0_Template_mat_radio_group_ngModelChange_31_listener","FtpDeclarationTwoComponent_ng_template_0_div_37_Template","FtpDeclarationTwoComponent_ng_template_0_div_38_Template","FtpDeclarationTwoComponent_ng_template_0_div_39_Template","QUESTION10","QUESTION11","FtpDeclarationsTwo","restorationDeclarations","ftpDeclaration","updateDetails","onAnswerChange","dates","setStartEndDate","dateObject","selectedDates","FtpDeclarationTwoComponent_Template","FtpDeclarationTwoComponent_ng_template_0_Template","LetterOfGoodStandingComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","LetterOfGoodStandingComponent_ng_template_0_Template_mat_radio_group_ngModelChange_29_listener","LetterOfGoodStandingComponent_Template","LetterOfGoodStandingComponent_ng_template_0_Template","RtrPaymentStepComponent_ng_template_1_section_3_Template_mat_radio_group_ngModelChange_21_listener","RtrPaymentStepComponent_ng_template_1_section_3_mat_radio_button_22_Template","RtrPaymentStepComponent_ng_template_1_section_3_Template","returnToRegisterApplicationFeeAmount","RtrPaymentStepComponent_Query","RtrPaymentStepComponent_Template","RtrPaymentStepComponent_ng_template_1_Template","RtrPaymentStepComponent_ng_template_3_Template","PersonalDetailsComponent_ng_template_0_Template_mat_radio_group_ngModelChange_20_listener","PersonalDetailsComponent_ng_template_0_Template_input_blur_38_listener","PersonalDetailsComponent_ng_template_0_mat_option_42_Template","PersonalDetailsComponent_ng_template_0_Template_input_ngModelChange_55_listener","PersonalDetailsComponent_ng_template_0_Template_input_blur_55_listener","PersonalDetailsComponent_ng_template_0_Template_input_ngModelChange_64_listener","PersonalDetailsComponent_ng_template_0_Template_input_ngModelChange_72_listener","PersonalDetailsComponent_ng_template_0_Template_input_blur_72_listener","PersonalDetailsComponent_ng_template_0_Template_app_supporting_documents_item_registered_78_listener","PersonalDetailsComponent_ng_template_0_Template_app_supporting_documents_item_uploaded_78_listener","PersonalDetailsComponent_ng_template_0_Template_app_contact_edit_ngModelChange_97_listener","confirmNameChange","PersonalDetailsComponent_Query","PersonalDetailsComponent_Template","PersonalDetailsComponent_ng_template_0_Template","FileUploadComponent","type_r8","RegistrationDetailsComponent_ng_template_0_div_28_div_24_Template_app_file_upload_uploaded_3_listener","RegistrationDetailsComponent_ng_template_0_div_28_div_24_Template_app_file_upload_deleted_3_listener","IELTSAttachment","IELTSCertificate","RegistrationDetailsComponent_ng_template_0_div_28_div_25_Template_app_file_upload_uploaded_3_listener","RegistrationDetailsComponent_ng_template_0_div_28_div_25_Template_app_file_upload_deleted_3_listener","employerRefAttachment","EmployerReferenceForEnglishCertificate","RegistrationDetailsComponent_ng_template_0_div_28_div_26_Template_input_blur_3_listener","onOETNumberChange","RegistrationDetailsComponent_ng_template_0_div_28_div_26_Template_input_ngModelChange_3_listener","returnToRegisterDetails","oetCandidateNo","RegistrationDetailsComponent_ng_template_0_div_28_div_26_Template_mat_checkbox_change_7_listener","RegistrationDetailsComponent_ng_template_0_div_28_div_26_Template_mat_checkbox_ngModelChange_7_listener","confirmAccessOETPortal","RegistrationDetailsComponent_ng_template_0_div_28_Template_mat_radio_group_ngModelChange_22_listener","englishQualificationType","onLangQualTypeChange","RegistrationDetailsComponent_ng_template_0_div_28_mat_radio_button_23_Template","RegistrationDetailsComponent_ng_template_0_div_28_div_24_Template","RegistrationDetailsComponent_ng_template_0_div_28_div_25_Template","RegistrationDetailsComponent_ng_template_0_div_28_div_26_Template","qualificationTypes","isEnglishCertificationTypeIELTS","isEnglishCertificationTypeReference","isEnglishCertificationTypeOET","RegistrationDetailsComponent_ng_template_0_Template_input_ngModelChange_9_listener","RegistrationDetailsComponent_ng_template_0_Template_input_ngModelChange_15_listener","RegistrationDetailsComponent_ng_template_0_Template_input_ngModelChange_21_listener","previousAnnotation","RegistrationDetailsComponent_ng_template_0_Template_input_ngModelChange_27_listener","RegistrationDetailsComponent_ng_template_0_div_28_Template","isEnglishCertificateRequired","RegistrationDetails","IELTS","OET","EmployerReference","setAnnotation","isRequiredEnglishCertificate","englishCertificateOption","getAttachment","independentPrescriberStatus","IndependentAndSupplementary","Independent","Supplementary","deleteUrl1","deleteUrl2","getIELTSCertificate","getEmployerRefDoc","updateAttachments","doc","getDocIndex","RegistrationDetailsComponent_Query","RegistrationDetailsComponent_Template","RegistrationDetailsComponent_ng_template_0_Template","RevalidationRecordOutstandingComponent_ng_template_0_Template_mat_checkbox_change_12_listener","RevalidationRecordOutstandingComponent_ng_template_0_Template_mat_checkbox_ngModelChange_12_listener","hasConfirmedRevalidationSubmission","RevalidationRecordOutstanding","RevalidationRecordOutstandingComponent_Template","RevalidationRecordOutstandingComponent_ng_template_0_Template","RtrApplicationReviewComponent_section_53_Template_app_gphc_icon_click_4_listener","rtrApplicationStep","RtrApplicationReviewComponent_section_53_div_18_Template","RtrApplicationReviewComponent_section_60_Template_app_gphc_icon_click_4_listener","registrationNumberwithTheOrganisation","RtrApplicationReviewComponent_ng_container_96_ng_container_8_Template","RtrApplicationReviewComponent_ng_container_96_ng_template_9_Template","RtrApplicationReviewComponent_ng_container_96_ng_template_11_Template","RtrApplicationReviewComponent_ng_container_107_ng_container_8_Template","RtrApplicationReviewComponent_ng_container_107_ng_template_9_Template","RtrApplicationReviewComponent_ng_container_107_ng_template_11_Template","q8Title","q9Title","voluntaryRemovalReason","isRouteEEA","RtrApplicationReviewComponent_Template","RtrApplicationReviewComponent_Template_app_gphc_icon_click_5_listener","RtrApplicationReviewComponent_Template_app_gphc_icon_click_31_listener","RtrApplicationReviewComponent_Template_app_gphc_icon_click_37_listener","RtrApplicationReviewComponent_Template_app_gphc_icon_click_43_listener","RtrApplicationReviewComponent_div_50_Template","RtrApplicationReviewComponent_div_51_Template","RtrApplicationReviewComponent_ng_container_52_Template","RtrApplicationReviewComponent_section_53_Template","RtrApplicationReviewComponent_Template_app_gphc_icon_click_58_listener","RtrApplicationReviewComponent_section_60_Template","RtrApplicationReviewComponent_Template_app_gphc_icon_click_65_listener","RtrApplicationReviewComponent_div_72_Template","RtrApplicationReviewComponent_div_73_Template","RtrApplicationReviewComponent_ng_container_74_Template","RtrApplicationReviewComponent_Template_app_gphc_icon_click_79_listener","RtrApplicationReviewComponent_Template_app_gphc_icon_click_85_listener","RtrApplicationReviewComponent_div_94_Template","RtrApplicationReviewComponent_div_95_Template","RtrApplicationReviewComponent_ng_container_96_Template","RtrApplicationReviewComponent_div_105_Template","RtrApplicationReviewComponent_div_106_Template","RtrApplicationReviewComponent_ng_container_107_Template","RtrApplicationReviewComponent_Template_app_gphc_icon_click_112_listener","RtrApplicationReviewComponent_Template_app_gphc_icon_click_120_listener","RtrApplicationReviewComponent_Template_app_gphc_icon_click_128_listener","RtrReviewStepComponent_ng_template_0_div_2_Template_app_rtr_application_review_navigate_1_listener","RtrReviewStepComponent_ng_template_0_div_2_Template","returnToRegisterStep","RtrReviewStepComponent_Template","RtrReviewStepComponent_ng_template_0_Template","RtrReviewStepComponent_ng_template_2_Template","VoluntaryRemovalApplicationForm","clearApplicationDeclarations","VrApplicationDeclarationsStepComponent_ng_template_0_div_21_Template_mat_checkbox_change_2_listener","VrApplicationDeclarationsStepComponent_ng_template_0_div_21_Template_mat_checkbox_ngModelChange_2_listener","VrApplicationDeclarationsStepComponent_ng_template_0_div_22_Template_mat_checkbox_change_2_listener","VrApplicationDeclarationsStepComponent_ng_template_0_div_22_Template_mat_checkbox_ngModelChange_2_listener","VrApplicationDeclarationsStepComponent_ng_template_0_div_23_Template_mat_checkbox_change_2_listener","VrApplicationDeclarationsStepComponent_ng_template_0_div_23_Template_mat_checkbox_ngModelChange_2_listener","VrApplicationDeclarationsStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","VrApplicationDeclarationsStepComponent_ng_template_0_Template_mat_checkbox_change_14_listener","VrApplicationDeclarationsStepComponent_ng_template_0_Template_mat_checkbox_ngModelChange_14_listener","VrApplicationDeclarationsStepComponent_ng_template_0_div_21_Template","VrApplicationDeclarationsStepComponent_ng_template_0_div_22_Template","VrApplicationDeclarationsStepComponent_ng_template_0_div_23_Template","vrService","getFtpAnswers","VrApplicationDeclarationsStepComponent_Query","VrApplicationDeclarationsStepComponent_Template","VrApplicationDeclarationsStepComponent_ng_template_0_Template","VrApplicationReviewStepComponent_ng_template_0_div_2_Template_app_vr_application_review_navigate_1_listener","SIdetails","VrApplicationReviewStepComponent_ng_template_0_div_2_Template","voluntaryRemovalDetails","dateOfRegistryRemoval","VrApplicationReviewStepComponent_Query","VrApplicationReviewStepComponent_Template","VrApplicationReviewStepComponent_ng_template_0_Template","VrApplicationReviewStepComponent_ng_template_2_Template","reasonForRemovalDetails","VrApplicationReviewComponent_Template","VrApplicationReviewComponent_Template_app_gphc_icon_click_5_listener","VrApplicationReviewComponent_div_18_Template","VrApplicationReviewComponent_ng_template_19_Template","VrApplicationReviewComponent_Template_app_gphc_icon_click_24_listener","VrApplicationReviewComponent_Template_app_gphc_icon_click_30_listener","VrApplicationReviewComponent_Template_app_gphc_icon_click_38_listener","reason_r7","VrDateReasonForRemovalRequiredStepComponent_ng_template_0_div_25_Template_textarea_ngModelChange_5_listener","VrDateReasonForRemovalRequiredStepComponent_ng_template_0_div_25_p_7_Template","VrDateReasonForRemovalRequiredStepComponent_ng_template_0_div_26_Template_input_ngModelChange_12_listener","VrDateReasonForRemovalRequiredStepComponent_ng_template_0_div_26_Template_input_ngModelChange_18_listener","VrDateReasonForRemovalRequiredStepComponent_ng_template_0_Template_app_utc_date_picker_ngModelChange_14_listener","VrDateReasonForRemovalRequiredStepComponent_ng_template_0_Template_select_ngModelChange_20_listener","VrDateReasonForRemovalRequiredStepComponent_ng_template_0_Template_select_change_20_listener","onReasonChange","VrDateReasonForRemovalRequiredStepComponent_ng_template_0_option_22_Template","VrDateReasonForRemovalRequiredStepComponent_ng_template_0_div_25_Template","VrDateReasonForRemovalRequiredStepComponent_ng_template_0_div_26_Template","reasons","isPendingFeeZero","VrDateReasonForRemovalRequiredStepComponent_Query","VrDateReasonForRemovalRequiredStepComponent_Template","VrDateReasonForRemovalRequiredStepComponent_ng_template_0_Template","VrEdiStepComponent_ng_template_0_section_15_Template_app_edi_ngModelChange_1_listener","VrEdiStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","VrEdiStepComponent_ng_template_0_section_15_Template","VrEdiStepComponent_Template","VrEdiStepComponent_ng_template_0_Template","VrEdiStepComponent_ng_template_2_Template","VrDeclarationSummaryComponent_div_0_ng_container_1_app_declaration_question_1_Template","VrDeclarationSummaryComponent_div_0_ng_container_1_Template","VrDeclarationSummaryComponent_ng_template_4_div_0_Template","ftpDeclarations","VrDeclarationSummaryComponent_Template","VrDeclarationSummaryComponent_div_0_Template","VrDeclarationSummaryComponent_ng_template_2_Template","VrDeclarationSummaryComponent_ng_template_4_Template","VrDeclarationSummaryComponent_ng_template_6_Template","VrFtpDeclarationStepComponent_ng_template_0_section_2_Template","isDeclareYes","isPartlyNo","hasDeclareYes","sendFtpAnsers","getFtpUpdatedAnswers","VrFtpDeclarationStepComponent_Template","VrFtpDeclarationStepComponent_ng_template_0_Template","VrFtpDeclarationStepComponent_ng_template_2_Template","item_r8","paymentDescription","paymentAmount","card_r10","VrPaymentStepComponent_ng_template_2_section_3_tr_21_Template","VrPaymentStepComponent_ng_template_2_section_3_Template_mat_radio_group_ngModelChange_39_listener","VrPaymentStepComponent_ng_template_2_section_3_mat_radio_button_40_Template","VrPaymentStepComponent_ng_template_2_section_3_Template","VrPaymentStepComponent_Query","VrPaymentStepComponent_Template","VrPaymentStepComponent_ng_template_2_Template","VrPaymentStepComponent_ng_template_4_Template","VoluntaryRemovalComponent_div_14_ng_container_1_div_1_div_3_Template_button_click_3_listener","VoluntaryRemovalComponent_div_14_ng_container_1_div_1_div_3_Template_button_click_5_listener","VoluntaryRemovalComponent_div_14_ng_container_1_div_1_ng_template_4_Template_button_click_2_listener","VoluntaryRemovalComponent_div_14_ng_container_1_div_1_div_3_Template","VoluntaryRemovalComponent_div_14_ng_container_1_div_1_ng_template_4_Template","superIntendentDetails","VoluntaryRemovalComponent_div_14_ng_container_1_app_form_stepper_3_Template_app_form_stepper_stepChanged_0_listener","VoluntaryRemovalComponent_div_14_ng_container_1_app_form_stepper_3_Template_app_vr_date_reason_for_removal_required_step_isPendingFeeZero_1_listener","showHidePaymentStep","VoluntaryRemovalComponent_div_14_ng_container_1_app_form_stepper_3_Template_app_vr_application_review_step_navigate_5_listener","VoluntaryRemovalComponent_div_14_ng_container_1_app_form_stepper_3_app_vr_payment_step_6_Template","displayPaymentStep","VoluntaryRemovalComponent_div_14_ng_container_1_div_1_Template","VoluntaryRemovalComponent_div_14_ng_container_1_app_vr_application_review_2_Template","VoluntaryRemovalComponent_div_14_ng_container_1_app_form_stepper_3_Template","VoluntaryRemovalComponent_div_14_ng_container_1_Template","VoluntaryRemovalComponent_div_15_button_2_Template_button_click_0_listener","VoluntaryRemovalComponent_div_15_button_3_Template_button_click_0_listener","VoluntaryRemovalComponent_div_15_div_4_Template_app_form_stepper_menu_navigate_1_listener","VoluntaryRemovalComponent_div_15_button_2_Template","VoluntaryRemovalComponent_div_15_button_3_Template","VoluntaryRemovalComponent_div_15_div_4_Template","outstandingFee","stepsWithoutPayment","menuWithoutPayment","VoluntaryRemovalComponent_Query","VoluntaryRemovalComponent_Template","VoluntaryRemovalComponent_Template_app_form_stepper_menu_navigate_11_listener","VoluntaryRemovalComponent_p_13_Template","VoluntaryRemovalComponent_div_14_Template","VoluntaryRemovalComponent_div_15_Template","VoluntaryRemovalComponent_ng_template_16_Template","questionGroup_r1","showRevalidationWarning","DeclarationComponent_section_0_h2_1_Template","DeclarationComponent_section_0_h3_2_Template","DeclarationComponent_section_0_p_3_Template","DeclarationComponent_section_0_ng_container_4_Template","i_r2","titleVisible","DeclarationComponent","checkForRevalidationQuestion","revalidationQuestion","dateOfFirstCohort","formatDate","userRenewalDate","DeclarationComponent_Template","DeclarationComponent_section_0_Template","DeclarationQuestionComponent","DeclarationQuestionComponent_Template","DeclarationQuestionComponent_p_4_Template","renewalId","card_r2","PaymentComponent_section_7_Template_mat_radio_group_ngModelChange_10_listener","PaymentComponent_section_7_mat_radio_button_11_Template","PaymentComponent_Template_mat_checkbox_ngModelChange_5_listener","PaymentComponent_section_7_Template","RenewalComponent_div_2_p_3_Template","RenewalComponent_div_3_div_1_Template","RenewalComponent_div_3_div_2_Template","RenewalComponent_div_5_Template_app_renewal_splash_onStart_1_listener","RenewalComponent_app_form_layout_7_section_4_span_4_Template","RenewalComponent_app_form_layout_7_section_4_span_5_Template","RenewalComponent_app_form_layout_7_section_4_span_10_Template","RenewalComponent_app_form_layout_7_section_4_span_11_Template","RenewalComponent_app_form_layout_7_div_11_div_9_Template_button_click_1_listener","RenewalComponent_app_form_layout_7_div_11_Template_button_click_2_listener","RenewalComponent_app_form_layout_7_div_11_div_7_Template","RenewalComponent_app_form_layout_7_div_11_div_9_Template","RenewalComponent_app_form_layout_7_div_11_div_10_Template","RenewalComponent_app_form_layout_7_app_declaration_2_Template","RenewalComponent_app_form_layout_7_app_payment_3_Template","RenewalComponent_app_form_layout_7_section_4_Template","RenewalComponent_app_form_layout_7_div_11_Template","started","showWorldpayDisabledMessage","tracking","loadFormTemplates","configureUi","saveDeclarationAndPaymentSelection","confirmedAgreement","handleValidationErrors","paymentDetails","redirectToWorldpay","worldpayEnabled","RenewalComponent_Query","RenewalComponent_Template","RenewalComponent_div_1_Template","RenewalComponent_div_2_Template","RenewalComponent_div_3_Template","RenewalComponent_div_4_Template","RenewalComponent_div_5_Template","RenewalComponent_app_form_layout_7_Template","RenewalComponent_div_8_Template","RenewalSplashComponent","expandedStates","Map","toggleAccordion","isExpanded","isButtonExpanded","RenewalFaqComponent_Template","RenewalFaqComponent_Template_button_click_12_listener","RenewalFaqComponent_Template_button_click_35_listener","RenewalFaqComponent_Template_button_click_87_listener","RenewalFaqComponent_Template_button_click_97_listener","RenewalFaqComponent_Template_button_click_110_listener","RenewalFaqComponent_Template_button_click_128_listener","RenewalFaqComponent_Template_button_click_146_listener","RenewalFaqComponent_Template_button_click_153_listener","RenewalFaqComponent_Template_button_click_196_listener","RenewalFaqComponent_Template_button_click_224_listener","RenewalFaqComponent_Template_button_click_245_listener","RenewalFaqComponent_Template_button_click_260_listener","RenewalFaqComponent_Template_button_click_278_listener","RenewalFaqComponent_Template_button_click_289_listener","RenewalFaqComponent_Template_button_click_296_listener","RenewalFaqComponent_Template_button_click_303_listener","RenewalSplashComponent_section_2_span_4_Template","RenewalSplashComponent_section_2_span_5_Template","RenewalSplashComponent_section_2_span_12_Template","RenewalSplashComponent_section_2_span_13_Template","RenewalSplashComponent_section_3_div_10_Template","RenewalSplashComponent_div_27_div_4_Template_button_click_1_listener","RenewalSplashComponent_div_27_div_1_Template","RenewalSplashComponent_div_27_div_2_Template","RenewalSplashComponent_div_27_div_4_Template","onStart","RenewalSplashComponent_Template","RenewalSplashComponent_section_2_Template","RenewalSplashComponent_section_3_Template","RenewalSplashComponent_div_27_Template","PerformanceIndicator","feedbacks","isCoreCriteriaFeedbackRequired","performanceIndicator","ReviewNextYear","CoreCriteriaNotMet","getTotal","Annotate","WriteFeedback","isLeadReviewer","annotationCount","currentReviewerAnnotation","currentReviewerAssessment","peerDiscussionFeedback","plannedCpdFeedback","unplannedCpdFeedback","reflectiveAccountFeedback","progressPercentage","option_r2","AutocompleteComponent","myControl","filteredOptions","trySelect","onOptionSelected","class","placeholder","AutocompleteComponent_Template","AutocompleteComponent_Template_input_keydown_enter_0_listener","AutocompleteComponent_Template_input_blur_0_listener","AutocompleteComponent_Template_mat_autocomplete_optionSelected_1_listener","AutocompleteComponent_mat_option_3_Template","BannerComponent_div_5_ng_content_1_Template","BannerComponent","leftColWidth","progressDark","noButtons","rightColWidth","childElement","focusMain","BannerComponent_Query","BannerComponent_div_5_Template","BannerComponent_mat_progress_bar_6_Template","heading","subHeading","Banner2Component","Banner2Component_HostBindings","Banner2Component_div_6_Template","Banner2Component_app_collapsible_7_Template","Banner2Component_mat_progress_bar_8_Template","dynamicHeading","CarouselNavComponent_div_2_Template_div_click_0_listener","selectedIndex","item_r2","CarouselNavComponent","onIndexSelected","CarouselNavComponent_Template","CarouselNavComponent_div_2_Template","CarouselNavComponent_Template_button_click_4_listener","CarouselNavComponent_Template_button_click_10_listener","DOCUMENT","isEqual","CarouselComponent_div_4_ng_template_2_Template","margin","childIndex","$item","CarouselComponent","elementRef","focusTrapFactory","scrollStart","scrollEnd","previouslyFocussedElement","startPress","lastX","slideEnabled","hasMargin","abs","templates","trapFocus","layoutChange","container","parentNode","setWidth","getBoundingClientRectValue","calcScroll","getBoundingClientRect","rect","onMousedown","which","clientX","onTouchdown","targetTouches","onMousemove","maxWidth","onTouchmove","onMouseup","elem","snap","onTouchup","counter","lastVal","forward","ngOnChanges","previousValue","currentValue","focusTrap","FocusTrapFactory","CarouselComponent_Query","CarouselComponent_div_4_Template","CollapsibleComponent_Template","visibility","ConfirmDialogComponent_Template","ConfirmDialogComponent_div_5_Template","ConfirmDialogComponent_div_6_Template","ConfirmDialogComponent_div_7_Template","ConfirmDialogComponent_div_8_Template","message_r1","DaterangeComponent","overlapError","changed","endDateTitle","isPastDateAllowed","fromDate","toDate","todayDate","fromMin","fromDateTooEarlyMessage","fromMax","fromDateTooLateMessage","toMin","toDateTooEarlyMessage","toDateTooLateMessage","overlapErrorMessage","toMax","DaterangeComponent_Template","DaterangeComponent_Template_app_utc_date_picker_ngModelChange_4_listener","DaterangeComponent_Template_app_utc_date_picker_ngModelChange_8_listener","DaterangeComponent_p_10_Template","FaqComponent","faqId","FaqComponent_Query","FaqDirective","onclick","FaqDirective_HostBindings","faqs","directive","FaqLinkDirective","faqLink","FaqLinkDirective_HostBindings","UploadStatus","FileUploadComponent_ng_container_13_td_11_Template_button_click_1_listener","upload_r15","disableDeleteButton","FileUploadComponent_ng_container_13_td_12_Template_button_click_1_listener","FileUploadComponent_ng_container_13_tr_15_div_6_Template_app_autocomplete_ngModelChange_3_listener","_r38","i_r16","titleOptions","FileUploadComponent_ng_container_13_tr_15_div_8_Template_app_utc_date_picker_ngModelChange_3_listener","FileUploadComponent_ng_container_13_tr_15_div_8_p_6_Template","FileUploadComponent_ng_container_13_tr_15_div_8_p_7_Template","_r41","matDatepickerMin","FileUploadComponent_ng_container_13_tr_15_ng_container_9_ng_container_1_Template","certifierTemplate","FileUploadComponent_ng_container_13_tr_15_div_6_Template","FileUploadComponent_ng_container_13_tr_15_div_8_Template","FileUploadComponent_ng_container_13_tr_15_ng_container_9_Template","requireTitle","requireExpiryDate","requireCertifier","FileUploadComponent_ng_container_13_i_3_Template","FileUploadComponent_ng_container_13_i_4_Template","FileUploadComponent_ng_container_13_i_5_Template","FileUploadComponent_ng_container_13_td_11_Template","FileUploadComponent_ng_container_13_td_12_Template","FileUploadComponent_ng_container_13_td_13_Template","FileUploadComponent_ng_container_13_tr_14_Template","FileUploadComponent_ng_container_13_tr_15_Template","Uploaded","tooBig","filesize","FileUploadComponent_div_14_label_1_Template","FileUploadComponent_div_14_Template_input_change_2_listener","fileChange","uploadedFileCount","allowedFileTypesString","FileUploadComponent_ng_template_15_ng_container_10_ng_container_1_Template","upload_r55","FileUploadComponent_ng_template_15_Template_app_autocomplete_ngModelChange_5_listener","_r62","certifier","FileUploadComponent_ng_template_15_ng_container_10_Template","FileUploadComponent_ng_template_15_Template_app_utc_date_picker_ngModelChange_15_listener","certifierTypes","FileUploadComponent_ng_template_17_Template_app_autocomplete_ngModelChange_5_listener","_r71","upload_r66","FileUploadComponent_ng_template_17_ng_container_10_Template","FileUploadComponent_ng_template_17_Template_app_utc_date_picker_ngModelChange_15_listener","_r67","birthCertificateCertifierTypes","_r69","FileUploadComponent_ng_template_19_Template_mat_radio_group_ngModelChange_5_listener","_r81","upload_r75","isDuplicateCopy","FileUploadComponent_ng_template_19_ng_container_18_Template","FileUploadComponent_ng_template_19_ng_container_20_Template","_r77","FileUploadComponent_ng_template_21_Template_app_autocomplete_ngModelChange_5_listener","upload_r83","FileUploadComponent_ng_template_21_Template_input_ngModelChange_13_listener","photoCertifierName","FileUploadComponent_ng_template_21_Template_input_ngModelChange_21_listener","companyName","FileUploadComponent_ng_template_21_Template_input_ngModelChange_29_listener","number","FileUploadComponent_ng_template_21_Template_app_autocomplete_ngModelChange_37_listener","FileUploadComponent_ng_template_21_Template_app_utc_date_picker_ngModelChange_46_listener","_r87","_r85","_r86","_r89","FileUploadComponent_ng_template_23_Template_input_ngModelChange_5_listener","_r108","upload_r103","ctx_r109","FileUploadComponent_ng_template_23_Template_input_ngModelChange_13_listener","ctx_r111","FileUploadComponent_ng_template_23_Template_input_ngModelChange_21_listener","ctx_r113","_r104","_r106","FileUploadComponent_ng_template_25_ng_container_6_Template","FileUploadComponent_ng_template_25_Template_app_utc_date_picker_ngModelChange_11_listener","upload_r114","ctx_r119","isBirthCertificateIsSolicitor","_r116","changeDetector","files","uploading","allowedFileTypes","additionalQuestion","uploaded","deleted","photoCertifierTemplate","birthCertificateCertifierTemplate","defaultCertifierTemplate","setExisting","existing","fstFileId","fileSize","uploadedFiles","fileInput","deleteAll","today","hasPhotoDrivingLiscense","fileList","size","maxMb","invalidType","FormData","FileUploadComponent_Query","FileUploadComponent_div_0_Template","FileUploadComponent_ng_container_13_Template","FileUploadComponent_div_14_Template","FileUploadComponent_ng_template_15_Template","FileUploadComponent_ng_template_17_Template","FileUploadComponent_ng_template_19_Template","FileUploadComponent_ng_template_21_Template","FileUploadComponent_ng_template_23_Template","FileUploadComponent_ng_template_25_Template","FormLayoutComponent","bodyWidth","spread","buttonsWidth","showHeader","ngAfterContentInit","formHeader","FormLayoutComponent_Query","FormReviewComponent","editWidth","readWidth","FormReviewComponent_Template","ɵɵclassMapInterpolate1","FormSectionComponent_app_gphc_icon_5_Template_app_gphc_icon_click_0_listener","toggleEdit","FormSectionComponent_app_gphc_icon_6_Template_app_gphc_icon_click_0_listener","FormSectionComponent_app_gphc_icon_7_Template_app_gphc_icon_click_0_listener","FormSectionComponent","foreground","elementFocusedBeforeDialogWasOpened","primary","editable","autoToggle","loaderFill","badge","onCancel","onSave","setEditing","editButtonRef","setLoading","restoreFocus","cancelEdit","onClick","onKeyPressEnter","savePreviouslyFocusedElement","activeElement","FormSectionComponent_Query","FormSectionComponent_Template_section_keydown_enter_0_listener","FormSectionComponent_Template_section_click_0_listener","FormSectionComponent_Template_section_keydown_escape_0_listener","FormSectionComponent_i_4_Template","FormSectionComponent_app_gphc_icon_5_Template","FormSectionComponent_app_gphc_icon_6_Template","FormSectionComponent_app_gphc_icon_7_Template","FormSectionComponent_div_10_Template","FormSectionComponent_div_11_Template","nextDisabled","FormStepComponent_Query","isObjectType","FormStepperComponent_section_1_ng_container_1_div_1_ng_container_2_p_2_Template","step_r5","validity_r10","FormStepperComponent_section_1_ng_container_1_div_1_ng_container_1_Template","FormStepperComponent_section_1_ng_container_1_div_1_ng_container_2_Template","FormStepperComponent_section_1_ng_container_1_div_1_Template","i_r6","stepIndex","FormStepperComponent_section_1_ng_container_1_Template","FormStepperComponent_div_2_div_2_button_1_Template_button_click_0_listener","FormStepperComponent_div_2_div_2_button_1_Template","allowPrev","FormStepperComponent_div_2_div_5_Template_button_click_1_listener","FormStepperComponent_div_2_div_2_Template","FormStepperComponent_div_2_div_5_Template","prevTouched","FormStepperComponent_ng_template_4_div_0_Template","FormStepperComponent_ng_template_4_div_1_Template","setSaving","setReady","stepComponents","stepSub","changeStep","newStepIndex","contentQueries","FormStepperComponent_ContentQueries","dirIndex","FormStepperComponent_section_1_Template","FormStepperComponent_div_2_Template","FormStepperComponent_ng_template_4_Template","furthestStep","nextStep","setMinStep","setMaxStep","minStepId","maxStepId","getStep","currentStepId","formStepperSteps","stepNumber","FormStepperMenuComponent_div_0_Template_div_click_0_listener","getIconCss","FormStepperMenuComponent","getTooltip","stepComponent","FormStepperMenuComponent_Template","FormStepperMenuComponent_div_0_Template","FullscreenSpinnerComponent_div_0_div_2_Template","FullscreenSpinnerComponent_div_0_div_3_Template","FullscreenSpinnerComponent","layoutState","FullscreenSpinnerComponent_Template","FullscreenSpinnerComponent_div_0_Template","showLabelAlways","iconType","GphcIconComponent","tabindex","position","small","offsetPixelsRight","showLabel","iconTypes","back","fa","edit","annotate","discussion","unapprove","return","static","fontSize","offsetPixelsTop","right","offsetRight","offsetLeft","offsetPixelsLeft","offsetTop","stopPropagation","onKeyupEnter","onKeydownEnter","GphcIconComponent_HostBindings","GphcIconComponent_Template_button_click_1_listener","GphcIconComponent_Template_button_keyup_enter_1_listener","GphcIconComponent_Template_button_keydown_enter_1_listener","GphcIconComponent_div_4_Template","NG_ASYNC_VALIDATORS","patternToTestLatinAlphabets","InputValidator","control","_validateInternal","LowercaseDirective","ngModelChange","onInputChange","LowercaseDirective_HostBindings","DateFormat","RevalidationSubmission","revalidationItemTypes","icon","feedbackType","updated$","overlap$","premiseId","tutor","tutorgPhCId","updatePremises","updateTutor","tutorGphcId","setDaterange","daterange","addTutor","removeTutor","tutorValid","hasTutor","contractRejected","tutorsEligible","hasIneligible","eligibleAsTutor","learningContractResponse","datesValid","isWithinPermittedRange","trainingSiteValid","isOwner","isRelated","allocationValid","getTrainingWeeks","totalWeeks","ms","weeks","getTrainingDays","totalDays","_MS_PER_DAY","startDateUtc","UTC","endDateUtc","days_difference","OverlayComponent","overlayState","OverlayComponent_Template","charAt","pure","DobDatePipe","FriendlyBooleanPipe","RevalidationItemTypePipe","KeysPipe","enumMember","displayName","ReversePipe","values","reverse","StripHtmlPipe","SubmissionPipe","TimePipe","hour","getHours","minute","getMinutes","second","getSeconds","milli","getMilliseconds","UtcDatePipe","Display","extraSmall","exSmall","progressLabel","background","getColor","stroke","radius","ProgressIndicatorComponent_div_0_Template_button_click_1_listener","ProgressIndicatorComponent_div_0_div_2_Template","ProgressIndicatorComponent_div_0_round_progress_3_Template","ProgressIndicatorComponent_div_0_i_6_Template","sizeName","hasClick","noLabel","ProgressIndicatorComponent","responsive","successColor","warningColor","percent","invert","light","observers","ProgressIndicatorComponent_HostBindings","ProgressIndicatorComponent_div_0_Template","RenewalMessageComponent_div_3_div_1_Template","RenewalMessageComponent_div_3_div_2_Template","RenewalMessageComponent_div_4_div_1_Template","RenewalMessageComponent_div_4_div_2_Template","RenewalMessageComponent","RenewalMessageComponent_Template","RenewalMessageComponent_div_1_Template","RenewalMessageComponent_div_2_Template","RenewalMessageComponent_div_3_Template","RenewalMessageComponent_div_4_Template","RenewalMessageComponent_div_5_Template","RenewalMessageComponent_div_6_Template","RenewalMessageComponent_div_7_Template","RenewalMessageComponent_div_8_Template","DDDeclarationMissed","DDPaymentFailed","RenewalDeadlineMissed","cpdEntry","CpdEntryComponent","typeVisible","annotationsVisible","CpdEntryComponent_Template","CpdEntryComponent_app_cpd_entry_annotations_6_Template","otherReviewerAnnotation","CpdEntryAnnotationsComponent_div_0_div_1_Template","CpdEntryAnnotationsComponent_div_0_div_2_Template","CpdEntryAnnotationsComponent","CpdEntryAnnotationsComponent_Template","CpdEntryAnnotationsComponent_div_0_Template","question_r4","CpdEntryAnswersComponent_div_0_div_1_div_1_div_2_Template","CpdEntryAnswersComponent_div_0_div_1_div_1_div_3_Template","DateTime","CpdEntryAnswersComponent_div_0_div_1_div_1_Template","group_r2","CpdEntryAnswersComponent_div_0_div_1_Template","CpdEntryAnswersComponent","CpdEntryAnswersComponent_Template","CpdEntryAnswersComponent_div_0_Template","RoundProgressComponent","_service","_easing","_defaults","_ngZone","_renderer","_lastAnimationId","animation","animationDelay","color","clockwise","semicircle","rounded","onRender","_animateChange","_clamp","changeInValue","startTime","getTimestamp","requestAnimationFrame","currentTime","_setPath","_path","__ngRendererSetElementAttributeHelper","getArc","getPathTransform","diameter","_diameter","resolveColor","_elementHeight","_viewBox","_paddingBottom","RoundProgressService","RoundProgressEase","RoundProgressConfig","RoundProgressComponent_Query","ɵɵnamespaceSVG","__ngRendererSplitNamespaceHelper","namespaceAndName","namespace","removeAttribute","_options","setDefaults","linearEase","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","easeInSine","cos","PI","easeOutSine","sin","easeInOutSine","easeInExpo","pow","easeOutExpo","easeInOutExpo","easeInCirc","sqrt","easeOutCirc","easeInOutCirc","easeInElastic","p","asin","easeOutElastic","easeInOutElastic","easeInBack","easeOutBack","easeInOutBack","easeInBounce","easeOutBounce","easeInOutBounce","RoundProgressModule","DEGREE_IN_RADIANS","supportsSvg","createElementNS","createSVGRect","_base","head","querySelector","_hasPerf","hashIndex","pathRadius","elementRadius","isSemicircle","maxAngle","percentage","_polarToCartesian","arcSweep","angleInDegrees","angleInRadians","requiredCount","overMaxWarning","countInfo","loaded","countQuestions","questionGroup","setItemProgress","expectedTotalCount","setProgress","getRequiredCount","getOverMaxWarning","getCountInfo","hasOverMax","expectedPeerDiscussions","expectedReflectiveAccounts","maxUnplanned","unplannedCpdCount","getUnplannedCpdCount","expectedCpds","plannedCpdCount","getPlannedCpdCount","plannedCpdCountToSubmit","getReflectiveAccountCount","getPeerDiscussionCount","getCompletedCpdCount","plannedCount","getNotCompleted","markAllIncludedItemsAsCompleted","notCompleted","reflectiveAccountCount","peerDiscussionCount","offset","getTimezoneOffset","oldDateToJSON","prototype","serverDate","dateParts","parts","displayDate","s4","floor","random","format","Server","WizardStepsComponent","StickyComponent","SpinnerComponent","MatProgressSpinnerModule","MatDialogModule","MatProgressBarModule","MatMenuModule","MatRadioModule","MatCheckboxModule","MatAutocompleteModule","ToolbarComponent","ValidationErrorsComponent","MatSelectModule","SupportingDocumentsItemComponent","SupportingDocumentsSummaryComponent","large","tiny","SpinnerComponent_Template","elRef","isFixed","onWindowScroll","documentElement","containerTop","StickyComponent_HostBindings","ɵɵresolveWindow","v","SupportingDocumentsItemComponent_app_gphc_icon_5_Template_app_gphc_icon_click_0_listener","mandatory","requirePOCertifier","isPostOfficeSelected","registered","requiresAdditionalQuestion","isInEnglish","isCCPS","PTValid","hasUploads","hasCertifier","hasPOCertifierTypeSelected","hasCertifiedDate","hasPOCertifier","hasSelectedIsDuplicateCopy","KnowledgeBasedQualification","CompetencyBasedQualification","CombinedQualification","SupportingDocumentsItemComponent_Template","SupportingDocumentsItemComponent_h3_2_Template","SupportingDocumentsItemComponent_h3_3_Template","SupportingDocumentsItemComponent_div_4_Template","SupportingDocumentsItemComponent_app_gphc_icon_5_Template","SupportingDocumentsItemComponent_Template_app_file_upload_uploaded_8_listener","file_r4","SupportingDocumentsSummaryComponent_ng_template_1_div_0_label_1_Template","SupportingDocumentsSummaryComponent_ng_template_1_div_0_label_2_Template","SupportingDocumentsSummaryComponent_ng_template_1_div_0_label_3_Template","SupportingDocumentsSummaryComponent_ng_template_1_div_0_Template_a_click_4_listener","SupportingDocumentsSummaryComponent_ng_template_1_div_0_div_10_Template","SupportingDocumentsSummaryComponent_ng_template_1_div_0_Template","isCountersignerView","removeAllButPhotos","putInAlphabeticalOrder","removePhotoDocsFromSupportingDocs","removeAllButPhotoDocsFromSupportingDocs","isArray","array","createDownload","SupportingDocumentsSummaryComponent_Template","SupportingDocumentsSummaryComponent_div_0_Template","SupportingDocumentsSummaryComponent_ng_template_1_Template","TextEditorComponent_div_0_Template_div_click_2_listener","bold","TextEditorComponent_div_0_Template_div_click_4_listener","italic","TextEditorComponent_div_0_Template_div_click_6_listener","underline","TextEditorComponent_div_0_Template_div_click_9_listener","orderedList","TextEditorComponent_div_0_Template_div_click_11_listener","unorderedList","TextEditorComponent_div_0_Template_div_click_13_listener","action","TextEditorComponent_div_0_Template_div_click_15_listener","inputId","sanitizeHtml","contentChanged","focussed","setContent","editor","setHTML","editorElement","Squire","isEmpty","div","fragment","cloneNode","innerHTML","clean","allowedTags","selfClosing","allowedAttributes","cleanDiv","cleanFragment","createDocumentFragment","getHTML","hasFormat","removeBold","removeItalic","removeList","makeUnorderedList","makeOrderedList","align","alignment","setTextAlignment","removeUnderline","makeHeading","setFontSize","TextEditorComponent_Query","TextEditorComponent_div_0_Template","TextEditorComponent_div_1_Template","TextEditorComponent_div_2_Template","titleCentered","ToolbarComponent_Template","ToolbarComponent_ng_content_7_Template","ToolbarComponent_div_8_Template","England","Wales","Scotland","RegExp","UtcDatePickerComponent_div_0_Template_input_ngModelChange_1_listener","dateValue","UtcDatePickerComponent_div_0_Template_input_click_1_listener","UtcDatePickerComponent_div_0_Template_div_click_2_listener","UtcDatePickerComponent_div_0_Template_mat_datepicker_closed_4_listener","onClose","whiteBackground","isExtendUntilQuestionId","setDateToUndefined","datePicker","adjustedDateString","UtcDatePickerComponent_Query","UtcDatePickerComponent_Template","UtcDatePickerComponent_div_0_Template","UtcDatePickerComponent_div_1_Template","ValidationErrorsComponent_p_0_ng_container_1_span_1_Template","showAsServerError","error_r1","ValidationErrorsComponent_p_0_ng_container_2_span_1_Template","ValidationErrorsComponent_p_0_ng_container_1_Template","ValidationErrorsComponent_p_0_ng_container_2_Template","ɵɵclassMap","block","ValidationErrorsComponent_Template","ValidationErrorsComponent_p_0_Template","WizardStepsComponent_li_1_i_1_Template","step_r1","sticky","WizardStepsComponent_Template","WizardStepsComponent_li_1_Template","ApplicationProcessType","EvidenceType","PreviousRegistrationType","TechnicianApplicationForm","TechnicianApplicationStep","WorkExperience","hasWorkExperiences","getHoursWorked","totalHours","workedHoursPerWeek","clearWorkExperience","clearAttachments","clearQualificationDocs","educationDetails","combined","removeTechnicianApplicationCombinedQualificationDocs","removeTechnicianApplicationKnowledgeCOmpetencyQualificationDocs","clearPreviousApplicationAndRegistrations","previousApplicationsAndRegistrations","appProp","preRegistrationTraining","isSupportingDocumentsForwardedConfirmed","clearStepsDependentOnApplicationType","clearQualificationAttachments","TechnicianQualificationType","jobTitle","supervisingPharmacist","supervisingPharmacists","updateSupervisor","superviser","updateWorkingHours","hours","updateJobTitle","accreditedTo","eligibleAsTrainingSite","workingHoursValid","jobTitleValid","supervisorValid","hasSupervisor","supervisor","premiseValid","ApplicationTypeStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","ApplicationTypeStepComponent_ng_template_0_Template_mat_radio_group_ngModelChange_39_listener","TwoYears","LessThanTwoYears","ApplicationTypeStepComponent","dependentStepsCleared","$value","hasSupportingDocs","warnForChangeAppType","clearDependentSteps","hasApplicationTypeValue","ApplicationTypeStepComponent_Template","ApplicationTypeStepComponent_ng_template_0_Template","CountersigningStepComponent_ng_template_0_form_38_div_12_Template_input_ngModelChange_4_listener","CountersigningStepComponent_ng_template_0_form_38_div_13_Template_input_ngModelChange_4_listener","CountersigningStepComponent_ng_template_0_form_38_div_14_Template_input_ngModelChange_4_listener","CountersigningStepComponent_ng_template_0_form_38_Template_mat_radio_group_ngModelChange_6_listener","CountersigningStepComponent_ng_template_0_form_38_div_12_Template","CountersigningStepComponent_ng_template_0_form_38_div_13_Template","CountersigningStepComponent_ng_template_0_form_38_div_14_Template","CountersigningStepComponent_ng_template_0_form_38_Template_button_click_16_listener","CountersigningStepComponent_ng_template_0_li_50_Template_button_click_1_listener","pharmacist_r37","CountersigningStepComponent_ng_template_0_li_51_Template_button_click_1_listener","CountersigningStepComponent_ng_template_0_li_51_span_2_Template","CountersigningStepComponent_ng_template_0_li_51_span_3_Template","CountersigningStepComponent_ng_template_0_li_51_div_4_Template","CountersigningStepComponent_ng_template_0_div_52_p_1_Template","CountersigningStepComponent_ng_template_0_div_52_p_2_Template","CountersigningStepComponent_ng_template_0_div_61_Template_button_click_1_listener","_r48","CountersigningStepComponent_ng_template_0_div_62_Template_button_click_1_listener","_r50","error_r51","CountersigningStepComponent_ng_template_0_ng_container_72_span_3_Template","CountersigningStepComponent_ng_template_0_ng_container_72_span_4_Template","CountersigningStepComponent_ng_template_0_ng_template_73_ng_container_0_Template","CountersigningStepComponent_ng_template_0_ng_template_75_Template_button_click_4_listener","CountersigningStepComponent_ng_template_0_label_25_Template","CountersigningStepComponent_ng_template_0_div_26_Template","CountersigningStepComponent_ng_template_0_form_38_Template","CountersigningStepComponent_ng_template_0_li_50_Template","CountersigningStepComponent_ng_template_0_li_51_Template","CountersigningStepComponent_ng_template_0_div_52_Template","CountersigningStepComponent_ng_template_0_div_61_Template","CountersigningStepComponent_ng_template_0_div_62_Template","CountersigningStepComponent_ng_template_0_p_64_Template","CountersigningStepComponent_ng_template_0_ng_container_72_Template","CountersigningStepComponent_ng_template_0_ng_template_73_Template","CountersigningStepComponent_ng_template_0_ng_template_75_Template","TechnicianDashboardComponent_div_8_ng_container_6_Template","TechnicianDashboardComponent_div_8_ng_container_7_Template","TechnicianDashboardComponent_ng_template_12_ng_template_4_div_2_Template","TechnicianDashboardComponent_ng_template_12_div_3_Template","TechnicianDashboardComponent_ng_template_12_ng_template_4_Template","TechnicianDashboardComponent_ng_template_14_div_3_Template","TechnicianDashboardComponent_ng_template_18_div_3_div_1_Template","TechnicianDashboardComponent_ng_template_18_div_3_Template","TechnicianDashboardComponent","TechnicianDashboardComponent_Template","TechnicianDashboardComponent_div_7_Template","TechnicianDashboardComponent_div_8_Template","TechnicianDashboardComponent_div_9_Template","TechnicianDashboardComponent_ng_template_10_Template","TechnicianDashboardComponent_ng_template_12_Template","TechnicianDashboardComponent_ng_template_14_Template","TechnicianDashboardComponent_ng_template_16_Template","TechnicianDashboardComponent_ng_template_18_Template","FtpDeclarationStepComponent_ng_template_0_section_4_Template","knowledgeQualification_r8","competencyQualification_r9","combinedQualification_r10","EducationDetailsStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","EducationDetailsStepComponent_ng_template_0_Template_mat_select_ngModelChange_24_listener","knowledge","EducationDetailsStepComponent_ng_template_0_mat_option_28_Template","EducationDetailsStepComponent_ng_template_0_Template_app_daterange_changed_31_listener","updateKnowledgeDates","EducationDetailsStepComponent_ng_template_0_Template_mat_select_ngModelChange_43_listener","competency","EducationDetailsStepComponent_ng_template_0_mat_option_47_Template","EducationDetailsStepComponent_ng_template_0_Template_app_daterange_changed_50_listener","updateCompetencyDates","EducationDetailsStepComponent_ng_template_0_Template_mat_select_ngModelChange_67_listener","EducationDetailsStepComponent_ng_template_0_mat_option_71_Template","EducationDetailsStepComponent_ng_template_0_Template_app_daterange_changed_74_listener","updateCombinedDates","hasKnowledgeQualificationSet","hasCombinedQualificationSet","hasCompetencyQualificationSet","knowledgeQualifications","knowledgeDateNotSet","dateCommenced","competencyQualifications","competencyDatesNotSet","combinedQualifications","combinedDatesNotSet","EducationDetailsStepComponent","dependentDocsStepsCleared","Education","isDisabled","loadKnowledgeQualifications","loadCompetencyQualifications","loadCombinedQualifications","Knowledge","Competency","Combined","hasValidDocs","warnForChangeOfDates","hasValidExperiences","hasdocs","hasValidDocTypes","docType","hasKnowledgeDateCommencedSet","hasKnowledgeDateAwardedSet","hasCompetencyDateCommencedSet","hasCompetencyDateAwardedSet","hasCombinedDateCommencedSet","hasCombinedDateAwardedSet","knowledgeDateAwarded_","competencyDateAwarded_","combinedDateAwarded_","knowledgeDateCommenced","knowledgeDateAwarded","competencyDateCommenced","competencyDateAwarded","validateQualificationDates","combinedDateCommenced","combinedDateAwarded","validateCombinedQualificationDates","commencedDateForFirst","awardDateForLast","awardDateForLastPlusTwoYears","commencedDateForFirstPlusFiveYears","lastDateOfCommencedPlusFiveYears","lastDateOfAwardPlusTwoYear","combinedCommencedDateForFirst","combinedAwardDateForLast","combinedAwardDateForLastPlusTwoYears","combinedCommencedDateForFirstPlusFiveYears","EducationDetailsStepComponent_Template","EducationDetailsStepComponent_ng_template_0_Template","PaymentStepComponent_ng_template_0_section_3_Template_mat_radio_group_ngModelChange_19_listener","PaymentStepComponent_ng_template_0_section_3_mat_radio_button_20_Template","AddressComponent_div_3_div_8_Template","AddressComponent_div_3_div_9_Template","AddressEditComponent_Template_app_address_search_technician_selected_1_listener","AddressEditComponent_Template_app_address_search_technician_manualInput_1_listener","AddressEditComponent_Template_app_address_technician_ngModelChange_3_listener","AddressEditableComponent_Template_app_address_search_technician_selected_6_listener","AddressEditableComponent_Template_app_address_search_technician_manualInput_6_listener","AddressSearchComponent_li_21_Template_button_click_1_listener","result_r2","AddressSearchComponent_li_21_Template","AddressSearchComponent_Template_button_click_23_listener","PersonalDetailsStepComponent_ng_template_0_Template_app_applicant_ngModelChange_13_listener","PersonalDetailsStepComponent_ng_template_0_Template_app_contact_edit_ngModelChange_29_listener","PersonalDetailsStepComponent_ng_template_0_Template_app_address_edit_technician_ngModelChange_38_listener","PreviousApplicationsAndRegistrationsComponent_ng_template_0_Template_mat_radio_group_ngModelChange_31_listener","applied","PreviousApplicationsAndRegistrationsComponent_ng_template_0_Template_mat_radio_group_ngModelChange_46_listener","PreviousApplicationsAndRegistrationsComponent_ng_template_0_Template_input_ngModelChange_57_listener","PreviousApplicationsAndRegistrationsComponent_ng_template_0_Template_app_utc_date_picker_ngModelChange_67_listener","PreviousApplicationsAndRegistrationsComponent_ng_template_0_Template_mat_radio_group_ngModelChange_73_listener","undertaken","PreviousApplicationsAndRegistrationsComponent_ng_template_0_Template_input_ngModelChange_89_listener","preRegistrationNumber","PreviousApplicationsAndRegistrationsComponent_ng_template_0_Template_app_utc_date_picker_ngModelChange_99_listener","PreviousApplicationsAndRegistrationsComponent_ng_template_0_Template_mat_radio_group_ngModelChange_108_listener","ukRegistration","PreviousApplicationsAndRegistrationsComponent_ng_template_0_Template_input_ngModelChange_125_listener","PreviousApplicationsAndRegistrationsComponent_ng_template_0_Template_input_ngModelChange_135_listener","nameOfBody","PreviousApplicationsAndRegistrationsComponent_ng_template_0_Template_mat_checkbox_ngModelChange_140_listener","wasCertificateRequested","PreviousApplicationsAndRegistrationsComponent_ng_template_0_Template_mat_radio_group_ngModelChange_147_listener","outsideUKRegistration","PreviousApplicationsAndRegistrationsComponent_ng_template_0_Template_input_ngModelChange_164_listener","PreviousApplicationsAndRegistrationsComponent_ng_template_0_Template_input_ngModelChange_174_listener","PreviousApplicationsAndRegistrationsComponent_ng_template_0_Template_mat_checkbox_ngModelChange_179_listener","PreviousApplicationsAndRegistrationsComponent","PreviousApplicationsAndRegistrations","hasUndertaken","hasApplied","secondDatePicker","firstDatePicker","nullifyDetail","prevAppAndRegDetail","isAnswerValid","isFirstQDetailValid","hasType","isSecondQDetailValid","isThirdQDetailValid","firstRegistration","hasRegNumber","hasNameOfBody","wasCertReq","isThirdConfirmed","isFourthQNameOfBodyEntered","secondRegistration","isFourthQConfirmed","hasRegisteredInUk","hasRegisteredOutsideUK","firstQValid","secondQValid","thirdQValid","fourthQValid","hasReducedWorkExperience","PreviousApplicationsAndRegistrationsComponent_Query","PreviousApplicationsAndRegistrationsComponent_Template","PreviousApplicationsAndRegistrationsComponent_ng_template_0_Template","TechnicianApplicationReviewComponent_section_7_Template_app_gphc_icon_click_6_listener","TechnicianApplicationReviewComponent_section_7_Template_app_gphc_icon_click_12_listener","TechnicianApplicationReviewComponent_section_27_Template_app_gphc_icon_click_4_listener","i_r11","nth","experience_r10","TechnicianApplicationReviewComponent_section_34_Template_app_gphc_icon_click_4_listener","TechnicianApplicationReviewComponent_section_41_Template_app_gphc_icon_click_4_listener","TechnicianApplicationReviewComponent_div_47_Template_div_click_4_listener","file_r18","TechnicianApplicationReviewComponent","showOverallDeclaration","ApplicationType","TechnicianApplicationReviewComponent_Template","TechnicianApplicationReviewComponent_Template_app_gphc_icon_click_5_listener","TechnicianApplicationReviewComponent_Template_app_applicant_ngModelChange_6_listener","TechnicianApplicationReviewComponent_section_7_Template","TechnicianApplicationReviewComponent_Template_app_gphc_icon_click_13_listener","TechnicianApplicationReviewComponent_div_19_Template","TechnicianApplicationReviewComponent_div_20_Template","TechnicianApplicationReviewComponent_Template_app_gphc_icon_click_25_listener","TechnicianApplicationReviewComponent_section_27_Template","TechnicianApplicationReviewComponent_Template_app_gphc_icon_click_32_listener","TechnicianApplicationReviewComponent_section_34_Template","TechnicianApplicationReviewComponent_Template_app_gphc_icon_click_39_listener","TechnicianApplicationReviewComponent_section_41_Template","TechnicianApplicationReviewComponent_Template_app_gphc_icon_click_46_listener","TechnicianApplicationReviewComponent_div_47_Template","TechnicianReviewStepComponent_ng_template_0_div_2_Template_app_technician_application_review_navigate_1_listener","TechnicianReviewStepComponent_ng_template_0_div_2_Template","TechnicianReviewStepComponent","TechnicianReviewStepComponent_Template","TechnicianReviewStepComponent_ng_template_0_Template","TechnicianReviewStepComponent_ng_template_2_Template","knowledgeQualification_r6","competencyQualification_r7","combinedQualification_r8","EducationDetailsSummaryComponent","combinedQualificationDateNotSet","isCombinedQualification","EducationDetailsSummaryComponent_Template","EducationDetailsSummaryComponent_Template_mat_select_ngModelChange_11_listener","EducationDetailsSummaryComponent_mat_option_13_Template","EducationDetailsSummaryComponent_Template_mat_select_ngModelChange_27_listener","EducationDetailsSummaryComponent_mat_option_29_Template","EducationDetailsSummaryComponent_Template_mat_select_ngModelChange_42_listener","EducationDetailsSummaryComponent_mat_option_44_Template","PreviousApplicationsAndRegistrationsSummaryComponent","outsideTheUkWithReducedExperience","PreviousApplicationsAndRegistrationsSummaryComponent_Template","PreviousApplicationsAndRegistrationsSummaryComponent_Template_app_utc_date_picker_ngModelChange_37_listener","PreviousApplicationsAndRegistrationsSummaryComponent_Template_app_utc_date_picker_ngModelChange_62_listener","SupportingDocumentsStepComponent_ng_template_0_div_9_div_18_Template_app_supporting_documents_item_registered_1_listener","SupportingDocumentsStepComponent_ng_template_0_div_9_div_18_Template_app_supporting_documents_item_uploaded_1_listener","SupportingDocumentsStepComponent_ng_template_0_div_9_div_18_Template_app_supporting_documents_item_registered_6_listener","SupportingDocumentsStepComponent_ng_template_0_div_9_div_18_Template_app_supporting_documents_item_uploaded_6_listener","SupportingDocumentsStepComponent_ng_template_0_div_9_div_19_Template_app_supporting_documents_item_registered_1_listener","SupportingDocumentsStepComponent_ng_template_0_div_9_div_19_Template_app_supporting_documents_item_uploaded_1_listener","SupportingDocumentsStepComponent_ng_template_0_div_9_Template_app_supporting_documents_item_registered_1_listener","SupportingDocumentsStepComponent_ng_template_0_div_9_Template_app_supporting_documents_item_uploaded_1_listener","SupportingDocumentsStepComponent_ng_template_0_div_9_div_18_Template","SupportingDocumentsStepComponent_ng_template_0_div_9_div_19_Template","SupportingDocumentsStepComponent_ng_template_0_div_9_Template_app_supporting_documents_item_registered_20_listener","SupportingDocumentsStepComponent_ng_template_0_div_9_Template_app_supporting_documents_item_uploaded_20_listener","SupportingDocumentsStepComponent_ng_template_0_div_9_Template_app_supporting_documents_item_registered_25_listener","SupportingDocumentsStepComponent_ng_template_0_div_9_Template_app_supporting_documents_item_uploaded_25_listener","SupportingDocumentsStepComponent_ng_template_0_div_10_div_25_Template_app_supporting_documents_item_registered_1_listener","SupportingDocumentsStepComponent_ng_template_0_div_10_div_25_Template_app_supporting_documents_item_uploaded_1_listener","SupportingDocumentsStepComponent_ng_template_0_div_10_div_25_Template_app_supporting_documents_item_registered_6_listener","SupportingDocumentsStepComponent_ng_template_0_div_10_div_25_Template_app_supporting_documents_item_uploaded_6_listener","SupportingDocumentsStepComponent_ng_template_0_div_10_div_26_Template_app_supporting_documents_item_registered_1_listener","SupportingDocumentsStepComponent_ng_template_0_div_10_div_26_Template_app_supporting_documents_item_uploaded_1_listener","SupportingDocumentsStepComponent_ng_template_0_div_10_Template_app_supporting_documents_item_registered_1_listener","SupportingDocumentsStepComponent_ng_template_0_div_10_Template_app_supporting_documents_item_uploaded_1_listener","SupportingDocumentsStepComponent_ng_template_0_div_10_Template_app_supporting_documents_item_registered_8_listener","SupportingDocumentsStepComponent_ng_template_0_div_10_Template_app_supporting_documents_item_uploaded_8_listener","SupportingDocumentsStepComponent_ng_template_0_div_10_div_25_Template","SupportingDocumentsStepComponent_ng_template_0_div_10_div_26_Template","SupportingDocumentsStepComponent_ng_template_0_div_10_Template_app_supporting_documents_item_registered_27_listener","SupportingDocumentsStepComponent_ng_template_0_div_10_Template_app_supporting_documents_item_uploaded_27_listener","SupportingDocumentsStepComponent_ng_template_0_div_10_Template_app_supporting_documents_item_registered_32_listener","SupportingDocumentsStepComponent_ng_template_0_div_10_Template_app_supporting_documents_item_uploaded_32_listener","SupportingDocumentsStepComponent_ng_template_0_div_10_Template_mat_checkbox_ngModelChange_39_listener","OverseasQualification","SupportingDocumentsStepComponent_ng_template_0_div_9_Template","SupportingDocumentsStepComponent_ng_template_0_div_10_Template","removeCombineDocs","dependentDocs","appTypeLessThanTwoYears","appTypeTwoYears","isSupportingDocumentsForwarded","getSupportingDocs","SelectPremisesComponent_div_13_Template_input_ngModelChange_2_listener","searched","SelectPremisesComponent_div_14_Template_input_ngModelChange_2_listener","SelectPremisesComponent_div_15_Template_input_ngModelChange_4_listener","unregisteredPremiseSearchModel","SelectPremisesComponent_div_15_Template_app_address_edit_technician_ngModelChange_13_listener","NotOnRegister","premiseSaved","SelectPremisesComponent_div_16_Template_button_click_2_listener","SelectPremisesComponent_tr_36_Template_tr_click_0_listener","item_r28","setSelected","ineligibleTooltip","owner","SelectPremisesComponent_div_37_Template_button_click_1_listener","SelectPremisesComponent_div_37_span_2_Template","SelectPremisesComponent_div_37_span_3_Template","SelectPremisesComponent_div_37_div_4_Template","SelectPremisesComponent_div_38_p_1_Template","SelectPremisesComponent_div_38_p_2_Template","SelectPremisesComponent_button_44_Template_button_click_0_listener","SelectPremisesComponent","searchParamsValid","hasUnregisteredPremiseName","hasUnregisteredAddress","searchByPostcode","searchByNotOnRegister","newAdd","SelectPremisesComponent_Query","SelectPremisesComponent_Template_mat_radio_group_ngModelChange_5_listener","SelectPremisesComponent_div_13_Template","SelectPremisesComponent_div_14_Template","SelectPremisesComponent_div_15_Template","SelectPremisesComponent_div_16_Template","SelectPremisesComponent_tr_36_Template","SelectPremisesComponent_div_37_Template","SelectPremisesComponent_div_38_Template","SelectPremisesComponent_div_42_Template","SelectPremisesComponent_button_44_Template","SelectRegistrantComponent_div_11_Template_input_ngModelChange_2_listener","SelectRegistrantComponent_div_12_Template_input_ngModelChange_2_listener","SelectRegistrantComponent_div_13_Template_input_ngModelChange_2_listener","SelectRegistrantComponent_tr_36_Template_tr_click_0_listener","item_r21","SelectRegistrantComponent_div_37_Template_button_click_1_listener","SelectRegistrantComponent_div_37_span_2_Template","SelectRegistrantComponent_div_37_span_3_Template","SelectRegistrantComponent_div_37_div_4_Template","SelectRegistrantComponent_div_38_p_1_Template","SelectRegistrantComponent_div_38_p_2_Template","SelectRegistrantComponent_button_46_Template_button_click_0_listener","SelectRegistrantComponent","calculateIfTutorIsEligible","isEligible","trainingPlacementStartDate","tutorRegistrationDate","tutorRegDate","initialRegistrationDate","tutorYear","tutorMonth","tutorDay","eligibleTutorDate","SelectRegistrantComponent_Query","SelectRegistrantComponent_Template_mat_radio_group_ngModelChange_5_listener","SelectRegistrantComponent_div_11_Template","SelectRegistrantComponent_div_12_Template","SelectRegistrantComponent_div_13_Template","SelectRegistrantComponent_Template_button_click_15_listener","SelectRegistrantComponent_tr_36_Template","SelectRegistrantComponent_div_37_Template","SelectRegistrantComponent_div_38_Template","SelectRegistrantComponent_button_46_Template","WorkExperienceComponent_div_5_Template_input_ngModelChange_7_listener","workExperience","WorkExperienceComponent_div_5_Template_input_ngModelChange_16_listener","WorkExperienceComponent_div_5_p_19_Template","WorkExperienceComponent_div_17_Template_app_select_registrant_selected_1_listener","i_r13","supervisor_r12","WorkExperienceComponent","ExtendedDate","field","WorkExperienceComponent_Template","WorkExperienceComponent_div_1_Template","WorkExperienceComponent_Template_app_select_premises_selected_4_listener","WorkExperienceComponent_div_5_Template","WorkExperienceComponent_Template_app_daterange_changed_10_listener","WorkExperienceComponent_div_12_Template","WorkExperienceComponent_div_17_Template","WorkExperienceStepComponent_ng_template_0_div_29_section_2_button_4_Template_button_click_0_listener","i_r9","removePlacement","WorkExperienceStepComponent_ng_template_0_div_29_section_2_button_4_Template","WorkExperienceStepComponent_ng_template_0_div_29_section_2_Template_app_work_experience_changed_6_listener","workExperience_r8","weeksProgress","getProgressTooltip","getHourProgressTooltip","hoursProgress","WorkExperienceStepComponent_ng_template_0_div_29_button_4_Template_button_click_0_listener","addWorkExperience","WorkExperienceStepComponent_ng_template_0_div_29_section_2_Template","WorkExperienceStepComponent_ng_template_0_div_29_div_3_Template","WorkExperienceStepComponent_ng_template_0_div_29_button_4_Template","workExperiencesValid","applicationTypeValue","WorkExperienceStepComponent_ng_template_0_Template_app_gphc_icon_click_4_listener","WorkExperienceStepComponent_ng_template_0_div_29_Template","WorkExperienceStepComponent","learningContractRejected","tutorIneligible","progressTooltip","hourProgressTooltip","getWorkExperiences","getApplicationTypeValue","calculateWeeks","calculateHoursWorked","createNewWorkExperience","mapWorkExperience","calcEducationDetailsEarliestDate","knowledgeDate","competencyDate","threeMonthsEarlier","calcCombinedEducationDetailsEarliestDate","combinedDate","earliestSubmissionDate","earliestCombinedSubmissionDate","n","hasWorkingHoursSet","hasJobTitle","validateDateRanges","WorkExperienceStepComponent_Query","WorkExperienceStepComponent_Template","WorkExperienceStepComponent_ng_template_0_Template","WorkExperienceStepComponent_ng_template_2_Template","TechnicianDetailsComponent","TechnicianApplicationComponent","TechnicianRoutingModule","TechnicianApplicationComponent_div_14_app_form_stepper_5_Template_app_form_stepper_stepChanged_0_listener","TechnicianApplicationComponent_div_14_app_form_stepper_5_Template_app_education_details_step_dependentDocsStepsCleared_3_listener","clearDocsSteps","TechnicianApplicationComponent_div_14_app_form_stepper_5_Template_app_education_details_step_navigate_3_listener","TechnicianApplicationComponent_div_14_app_form_stepper_5_Template_app_application_type_step_dependentStepsCleared_4_listener","clearSteps","TechnicianApplicationComponent_div_14_app_form_stepper_5_Template_app_technician_review_step_navigate_12_listener","TechnicianApplicationComponent_div_14_app_form_stepper_5_Template_app_technician_review_step_navigate_14_listener","InitialReview","TechnicianApplicationComponent_div_14_div_1_Template","TechnicianApplicationComponent_div_14_app_technician_application_review_4_Template","TechnicianApplicationComponent_div_14_app_form_stepper_5_Template","TechnicianApplicationComponent_button_17_Template_button_click_0_listener","TechnicianApplicationComponent_button_18_Template_button_click_0_listener","TechnicianApplicationComponent_div_19_Template_app_form_stepper_menu_navigate_1_listener","ApplicationStep","ignoreBackendSaveErrors","loadComplete","suppDocsComp","eduComp","TechnicianApplicationComponent_Query","TechnicianApplicationComponent_Template","TechnicianApplicationComponent_Template_app_form_stepper_menu_navigate_11_listener","TechnicianApplicationComponent_p_13_Template","TechnicianApplicationComponent_div_14_Template","TechnicianApplicationComponent_button_17_Template","TechnicianApplicationComponent_button_18_Template","TechnicianApplicationComponent_div_19_Template","technicianApplicant","TechnicianDetailsComponent_Template","production","hideLogin","enableProdMode","__NgCli_bootstrap_1","platformBrowser","bootstrapModule"],"sourceRoot":"webpack:///","x_google_ignoreList":[655]}