Skip to content

Commit

Permalink
merge with master and fix conflicts
Browse files Browse the repository at this point in the history
  • Loading branch information
soletsdev committed Oct 23, 2024
2 parents 26b71a2 + 382bb66 commit 7d4b80f
Show file tree
Hide file tree
Showing 24 changed files with 469 additions and 88 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -371,33 +371,18 @@ public record ProfessionalDevelopment([Required] string CourseName, [Required] s
public IEnumerable<string> NewFiles { get; set; } = Array.Empty<string>();
public IEnumerable<FileInfo> Files { get; set; } = Array.Empty<FileInfo>();
}
public record Transcript()
public record Transcript([Required] string EducationalInstitutionName, [Required] string ProgramName, [Required] string StudentLastName, [Required] DateTime StartDate, [Required] DateTime EndDate, [Required] bool IsNameUnverified, [Required] EducationRecognition EducationRecognition, [Required] EducationOrigin EducationOrigin)
{
public string? Id { get; set; }
[Required]
public string? EducationalInstitutionName { get; set; }
[Required]
public string? ProgramName { get; set; }
public string? CampusLocation { get; set; }
public string StudentFirstName { get; set; } = string.Empty;
[Required]
public string StudentLastName { get; set; } = string.Empty;
public string? StudentMiddleName { get; set; }
public string? StudentNumber { get; set; }
public string? LanguageofInstruction { get; set; }
[Required]
public DateTime StartDate { get; set; }
[Required]
public DateTime EndDate { get; set; }

public bool IsECEAssistant { get; set; }
public bool DoesECERegistryHaveTranscript { get; set; }
public bool IsOfficialTranscriptRequested { get; set; }
[Required]
public bool IsNameUnverified { get; set; }
[Required]
public EducationRecognition EducationRecognition { get; set; }
[Required]
public EducationOrigin EducationOrigin { get; set; }
}
public record WorkExperienceReference([Required] string FirstName, [Required] string LastName, [Required] string EmailAddress, [Required] int Hours)
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ const apiResultHandler = new ApiResultHandler();

const getUserInfo = async (): Promise<Components.Schemas.UserInfo | null> => {
const client = await getClient();
const response = await apiResultHandler.execute({ request: client.userinfo_get(), key: "userinfo_get" });
const response = await apiResultHandler.execute({ request: client.userinfo_get(), key: "userinfo_get", suppressErrorToast: true });
return response?.data ?? null;
};

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,14 @@
<ECEIteRegistrantRequirements v-else-if="applicationStore.isDraftCertificateTypeIte" />
</template>

<!-- New -->
<!-- New / LaborMobility -->
<template v-else>
<ECEAssistantRequirements v-if="applicationStore.isDraftCertificateTypeEceAssistant" />
<ECEOneYearRequirements v-if="applicationStore.isDraftCertificateTypeOneYear" />
<ECEFiveYearRequirements v-if="applicationStore.isDraftCertificateTypeFiveYears" />
<ECEAssistantRequirements
:is-labor-mobility="applicationStore.isDraftApplicationLaborMobility"
v-if="applicationStore.isDraftCertificateTypeEceAssistant"
/>
<ECEOneYearRequirements :is-labor-mobility="applicationStore.isDraftApplicationLaborMobility" v-if="applicationStore.isDraftCertificateTypeOneYear" />
<ECEFiveYearRequirements :is-labor-mobility="applicationStore.isDraftApplicationLaborMobility" v-if="applicationStore.isDraftCertificateTypeFiveYears" />
</template>

<v-btn class="mt-6" rounded="lg" color="primary" @click="continueClick">Apply now</v-btn>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,31 @@
</v-expansion-panel-text>
</v-expansion-panel>
</v-expansion-panels>
<h2 class="mt-10">Certified in Canada?</h2>
<p class="mt-3">
If you're certified in another province or territory in Canada, you might be able to transfer you certification to British Columbia. Check the
<!-- prettier-ignore -->
<a href="https://www2.gov.bc.ca/gov/content/education-training/early-learning/teach/training-and-professional-development/become-an-early-childhood-educator/transfer-your-certification/certification-from-province-to-province">certification levels from province to province chart</a>
to find out if your certification transfers.
</p>
<p class="mt-6">Are you applying to transfer your certification?</p>
<v-radio-group
class="mb-10"
:model-value="applicationStore.draftApplication.applicationType"
@update:model-value="handleUpdateCertifiedInCanada"
:mandatory="true"
:hide-details="true"
>
<v-radio color="primary" label="No" value="New"></v-radio>
<v-radio
color="primary"
label="Yes – I have reviewed the certification levels from province to province chart and my certification is eligible to transfer"
value="LaborMobility"
></v-radio>
</v-radio-group>
<v-input v-model="selection" :rules="[Rules.required('Select a certificate type to begin your application')]"></v-input>
</v-form>

<v-btn class="mt-6" rounded="lg" color="primary" @click="continueClick">Continue</v-btn>
</v-container>
</template>
Expand All @@ -52,7 +75,7 @@ import certificationOptions from "@/config/certification-types";
import { useAlertStore } from "@/store/alert";
import { useApplicationStore } from "@/store/application";
import { useCertificationTypeStore } from "@/store/certificationType";
import type { Components } from "@/types/openapi";
import type { ApplicationTypes, Components } from "@/types/openapi";
import { CertificationType } from "@/utils/constant";
import * as Rules from "@/utils/formRules";
import { useRouter } from "vue-router";
Expand Down Expand Up @@ -120,6 +143,11 @@ export default defineComponent({
...mapState(useCertificationTypeStore, ["certificationTypes"]),
},
methods: {
handleUpdateCertifiedInCanada(value: ApplicationTypes | null) {
if (value) {
this.applicationStore.$patch({ draftApplication: { applicationType: value } });
}
},
async continueClick() {
const { valid } = await (this.$refs.certificationForm as VForm).validate();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,20 @@
<p>You need the following information to apply:</p>
</v-col>
</v-row>
<v-row>
<v-row v-if="isLaborMobility">
<v-col>
<ECEHeader title="Certificate information"></ECEHeader>
<div class="d-flex flex-column ga-3 mt-6">
<p>After you submit your application, we'll contact you to get your certificate information, including:</p>
<ul class="ml-10">
<li>Your certification or registration number</li>
<li>The type of registration</li>
<li>The province or territory that you're certified in</li>
</ul>
</div>
</v-col>
</v-row>
<v-row v-if="!isLaborMobility">
<v-col>
<ECEHeader title="Education information"></ECEHeader>
<p>You must have completed an early childhood education course in at least one of the following:</p>
Expand Down Expand Up @@ -67,5 +80,11 @@ import ECEHeader from "./ECEHeader.vue";
export default defineComponent({
name: "ECEAssistantRequirements",
components: { ECEHeader },
props: {
isLaborMobility: {
type: Boolean,
default: false,
},
},
});
</script>
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,20 @@
<p>You need the following information to apply:</p>
</v-col>
</v-row>
<v-row>
<v-row v-if="isLaborMobility">
<v-col>
<ECEHeader title="Certificate information"></ECEHeader>
<div class="d-flex flex-column ga-3 mt-6">
<p>After you submit your application, we'll contact you to get your certificate information, including:</p>
<ul class="ml-10">
<li>Your certification or registration number</li>
<li>The type of registration</li>
<li>The province or territory that you're certified in</li>
</ul>
</div>
</v-col>
</v-row>
<v-row v-if="!isLaborMobility">
<v-col>
<ECEHeader title="Education information"></ECEHeader>
<p>
Expand All @@ -27,7 +40,7 @@
</p>
</v-col>
</v-row>
<v-row v-if="applicationStore.isDraftCertificateTypeIte">
<v-row v-if="applicationStore.isDraftCertificateTypeIte && !isLaborMobility">
<v-col>
<ECEHeader title="Education for Infant and Toddler Educator (ITE)"></ECEHeader>
<p>
Expand All @@ -45,7 +58,7 @@
</p>
</v-col>
</v-row>
<v-row v-if="applicationStore.isDraftCertificateTypeSne">
<v-row v-if="applicationStore.isDraftCertificateTypeSne && !isLaborMobility">
<v-col>
<ECEHeader title="Education for Special Needs Educator (SNE)"></ECEHeader>
<p>
Expand Down Expand Up @@ -116,6 +129,12 @@ import ECEHeader from "./ECEHeader.vue";
export default defineComponent({
name: "ECEFiveYearRequirements",
components: { ECEHeader },
props: {
isLaborMobility: {
type: Boolean,
default: false,
},
},
setup() {
const applicationStore = useApplicationStore();
return { applicationStore };
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,20 @@
<p>You need the following information to apply:</p>
</v-col>
</v-row>
<v-row>
<v-row v-if="isLaborMobility">
<v-col>
<ECEHeader title="Certificate information"></ECEHeader>
<div class="d-flex flex-column ga-3 mt-6">
<p>After you submit your application, we'll contact you to get your certificate information, including:</p>
<ul class="ml-10">
<li>Your certification or registration number</li>
<li>The type of registration</li>
<li>The province or territory that you're certified in</li>
</ul>
</div>
</v-col>
</v-row>
<v-row v-if="!isLaborMobility">
<v-col>
<ECEHeader title="Education information"></ECEHeader>
<p>
Expand Down Expand Up @@ -55,5 +68,11 @@ import ECEHeader from "./ECEHeader.vue";
export default defineComponent({
name: "ECEOneYearRequirements",
components: { ECEHeader },
props: {
isLaborMobility: {
type: Boolean,
default: false,
},
},
});
</script>
Original file line number Diff line number Diff line change
Expand Up @@ -456,10 +456,10 @@ export default defineComponent({
(this.studentMiddleName = educationData.education.studentMiddleName ?? null),
(this.studentLastName = educationData.education.studentLastName ?? ""),
(this.studentNumber = educationData.education.studentNumber ?? "");
this.isNameUnverified = educationData.education.isNameUnverified;
this.isNameUnverified = educationData.education.isNameUnverified ?? false;
this.language = educationData.education.languageofInstruction ?? "";
this.startYear = formatDate(educationData.education.startDate) ?? "";
this.endYear = formatDate(educationData.education.endDate) ?? "";
this.startYear = formatDate(educationData.education.startDate || "") ?? "";
this.endYear = formatDate(educationData.education.endDate || "") ?? "";
this.educationRecognition = educationData.education.educationRecognition;
this.educationOrigin = educationData.education.educationOrigin;
if (educationData.education.isOfficialTranscriptRequested) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,15 @@
<p class="small">Start date of program</p>
</v-col>
<v-col>
<p class="small font-weight-bold">{{ formatDate(education.startDate, "LLLL d, yyyy") }}</p>
<p class="small font-weight-bold">{{ formatDate(education.startDate || "", "LLLL d, yyyy") }}</p>
</v-col>
</v-row>
<v-row>
<v-col cols="4">
<p class="small">End date of program</p>
</v-col>
<v-col>
<p class="small font-weight-bold">{{ formatDate(education.endDate, "LLLL d, yyyy") }}</p>
<p class="small font-weight-bold">{{ formatDate(education.endDate || "", "LLLL d, yyyy") }}</p>
</v-col>
</v-row>
<v-row>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,13 +81,12 @@ import Wizard from "@/components/Wizard.vue";
import WizardHeader from "@/components/WizardHeader.vue";
import applicationWizardAssistantAndOneYear from "@/config/application-wizard-assistant-and-one-year";
import applicationWizardFiveYear from "@/config/application-wizard-five-year";
import applicationWizardRenewAssistant from "@/config/application-wizard-renew-assistant";
import { useAlertStore } from "@/store/alert";
import { useApplicationStore } from "@/store/application";
import { useLoadingStore } from "@/store/loading";
import { useUserStore } from "@/store/user";
import { useWizardStore } from "@/store/wizard";
import type { ApplicationStage, Wizard as WizardType } from "@/types/wizard";
import type { ApplicationStage } from "@/types/wizard";
import { AddressType } from "@/utils/constant";
import type { ProfessionalDevelopmentExtended } from "../inputs/EceProfessionalDevelopment.vue";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -133,12 +133,12 @@ export default defineComponent({
setup: async () => {
const userStore = useUserStore();
const oidcStore = useOidcStore();
const router = useRouter();
const oidcUserInfo = await oidcStore.oidcUserInfo();
const oidcAddress = await oidcStore.oidcAddress();
const loadingStore = useLoadingStore();
const phoneNumber = ref(oidcUserInfo.phone);
const email = ref(oidcUserInfo.email);
const router = useRouter();
return { userStore, oidcStore, phoneNumber, email, loadingStore, oidcUserInfo, oidcAddress, router };
},
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
import type { Wizard } from "@/types/wizard";

import characterReferencesForm from "./character-references-form";
import previewFormLaborMobilityAssistantAndOneYear from "./preview-form-labor-mobility-assistant-and-one-year";
import profileInformationForm from "./profile-information-form";

const applicationWizard: Wizard = {
id: "form-1",
steps: {
profile: {
stage: "ContactInformation",
title: "Contact information",
form: profileInformationForm,
key: "item.1",
},

characterReferences: {
stage: "CharacterReferences",
title: "Character reference",
form: characterReferencesForm,
key: "item.2",
},
review: {
stage: "Review",
title: "Review and submit",
form: previewFormLaborMobilityAssistantAndOneYear,
key: "item.3",
},
},
};

export default applicationWizard;
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
import type { Wizard } from "@/types/wizard";

import characterReferencesForm from "./character-references-form";
import previewFormLaborMobilityFiveYear from "./preview-form-labor-mobility-five-year";
import profileInformationForm from "./profile-information-form";
import referencesForm from "./references-form";

const applicationWizard: Wizard = {
id: "form-1",
steps: {
profile: {
stage: "ContactInformation",
title: "Contact information",
form: profileInformationForm,
key: "item.1",
},
characterReferences: {
stage: "CharacterReferences",
title: "Character reference",
form: characterReferencesForm,
key: "item.2",
},
workReference: {
stage: "WorkReferences",
title: "Work experience reference",
form: referencesForm,
key: "item.3",
},
review: {
stage: "Review",
title: "Review and submit",
form: previewFormLaborMobilityFiveYear,
key: "item.4",
},
},
};

export default applicationWizard;
Loading

0 comments on commit 7d4b80f

Please sign in to comment.