|
@@ -42,7 +42,7 @@
|
|
|
<v-file-input
|
|
<v-file-input
|
|
|
id="jobApplicationResume"
|
|
id="jobApplicationResume"
|
|
|
v-model="resumeUpload"
|
|
v-model="resumeUpload"
|
|
|
- :rules="[validateResume, validateFileSize]"
|
|
|
|
|
|
|
+ :rules="[validateResume, validateResumeFileSize]"
|
|
|
label="Dépôt de CV*"
|
|
label="Dépôt de CV*"
|
|
|
accept=".pdf, .jpeg, .png"
|
|
accept=".pdf, .jpeg, .png"
|
|
|
show-size
|
|
show-size
|
|
@@ -52,7 +52,10 @@
|
|
|
<v-file-input
|
|
<v-file-input
|
|
|
id="jobApplicationMotivationLetter"
|
|
id="jobApplicationMotivationLetter"
|
|
|
v-model="motivationLetterUpload"
|
|
v-model="motivationLetterUpload"
|
|
|
- :rules="[validateFileSize]"
|
|
|
|
|
|
|
+ :rules="[
|
|
|
|
|
+ validateMotivationLetter,
|
|
|
|
|
+ validateMotivationLetterFileSize,
|
|
|
|
|
+ ]"
|
|
|
label="Dépôt de lettre de motivation"
|
|
label="Dépôt de lettre de motivation"
|
|
|
accept=".pdf, .jpeg, .png"
|
|
accept=".pdf, .jpeg, .png"
|
|
|
show-size
|
|
show-size
|
|
@@ -134,14 +137,25 @@ const validatePhone = (email: string | null) =>
|
|
|
|
|
|
|
|
const validateResume = () =>
|
|
const validateResume = () =>
|
|
|
(resumeUpload.value !== null && resumeUpload.value[0] !== null) ||
|
|
(resumeUpload.value !== null && resumeUpload.value[0] !== null) ||
|
|
|
- "Vous devez joindre un CV à l'un des formats indiqués"
|
|
|
|
|
|
|
+ "Vous devez joindre un CV à l'un des formats suivants : .pdf, .jpeg, .png"
|
|
|
|
|
|
|
|
-const validateFileSize = () =>
|
|
|
|
|
|
|
+const validateResumeFileSize = () =>
|
|
|
(resumeUpload.value !== null &&
|
|
(resumeUpload.value !== null &&
|
|
|
// @ts-ignore
|
|
// @ts-ignore
|
|
|
resumeUpload.value.size < maxFileSize * 1024 * 1024) ||
|
|
resumeUpload.value.size < maxFileSize * 1024 * 1024) ||
|
|
|
'La taille du fichier ne doit pas dépasser ' + maxFileSize + ' Mo'
|
|
'La taille du fichier ne doit pas dépasser ' + maxFileSize + ' Mo'
|
|
|
|
|
|
|
|
|
|
+const validateMotivationLetter = () =>
|
|
|
|
|
+ motivationLetterUpload.value === null ||
|
|
|
|
|
+ motivationLetterUpload.value[0] !== null ||
|
|
|
|
|
+ "Vous devez joindre votre lettre de motivation à l'un des formats suivants : .pdf, .jpeg, .png"
|
|
|
|
|
+
|
|
|
|
|
+const validateMotivationLetterFileSize = () =>
|
|
|
|
|
+ motivationLetterUpload.value === null ||
|
|
|
|
|
+ // @ts-ignore
|
|
|
|
|
+ motivationLetterUpload.value.size < maxFileSize * 1024 * 1024 ||
|
|
|
|
|
+ 'La taille du fichier ne doit pas dépasser ' + maxFileSize + ' Mo'
|
|
|
|
|
+
|
|
|
const validateNonEmptyMessage = (message: string | null) =>
|
|
const validateNonEmptyMessage = (message: string | null) =>
|
|
|
(!!message && message.length > 0) || 'Le message ne peut pas être vide'
|
|
(!!message && message.length > 0) || 'Le message ne peut pas être vide'
|
|
|
|
|
|
|
@@ -167,9 +181,7 @@ const submit = async () => {
|
|
|
? {
|
|
? {
|
|
|
// @ts-ignore
|
|
// @ts-ignore
|
|
|
name: motivationLetterUpload.value.name,
|
|
name: motivationLetterUpload.value.name,
|
|
|
- content: await FileUtils.blobToBase64(
|
|
|
|
|
- motivationLetterUpload.value
|
|
|
|
|
- ),
|
|
|
|
|
|
|
+ content: await FileUtils.blobToBase64(motivationLetterUpload.value),
|
|
|
}
|
|
}
|
|
|
: null
|
|
: null
|
|
|
|
|
|