Added check for submission.

This commit is contained in:
Andrew Lalis 2023-01-26 16:53:55 +01:00
parent e0433753ea
commit a8168768a8
1 changed files with 9 additions and 1 deletions

View File

@ -89,17 +89,20 @@ A high-level overview of the submission process is as follows:
<script setup lang="ts">
import { onMounted, ref, Ref } from 'vue';
import { getGymFromRoute } from 'src/router/gym-routing';
import {getGymFromRoute, getGymRoute} from 'src/router/gym-routing';
import SlimForm from 'components/SlimForm.vue';
import api from 'src/api/main';
import { Gym } from 'src/api/main/gyms';
import { Exercise } from 'src/api/main/exercises';
import {useRouter} from 'vue-router';
interface Option {
value: string;
label: string;
}
const router = useRouter();
const gym: Ref<Gym | undefined> = ref<Gym>();
const exercises: Ref<Array<Exercise> | undefined> = ref<Array<Exercise>>();
const exerciseOptions: Ref<Array<Option>> = ref([]);
@ -116,6 +119,8 @@ let submissionModel = ref({
const selectedVideoFile: Ref<File | undefined> = ref<File>();
const weightUnits = ['KG', 'LBS'];
const submitting = ref(false);
// TODO: Make it possible to pass the gym to this via props instead.
onMounted(async () => {
try {
@ -143,6 +148,7 @@ function validateForm() {
async function onSubmitted() {
if (!selectedVideoFile.value || !gym.value) throw new Error('Invalid state.');
submitting.value = true;
submissionModel.value.videoId = await api.gyms.submissions.uploadVideoFile(
gym.value,
selectedVideoFile.value
@ -157,6 +163,8 @@ async function onSubmitted() {
submission.id
);
console.log(completedSubmission);
submitting.value = false;
await router.push(getGymRoute(gym.value));
}
</script>