1
0

feat: allow selecting a parent project when creating a project

This commit is contained in:
kolaente
2023-03-29 17:05:09 +02:00
parent 799c0be830
commit ce887c38f3
3 changed files with 15 additions and 1 deletions

View File

@ -22,6 +22,12 @@
<p class="help is-danger" v-if="showError && project.title === ''">
{{ $t('project.create.addTitleRequired') }}
</p>
<div class="field">
<label class="label">{{ $t('project.parent') }}</label>
<div class="control">
<project-search v-model="parentProject"/>
</div>
</div>
<div class="field">
<label class="label">{{ $t('project.color') }}</label>
<div class="control">
@ -44,6 +50,8 @@ import ColorPicker from '@/components/input/ColorPicker.vue'
import {success} from '@/message'
import {useTitle} from '@/composables/useTitle'
import {useProjectStore} from '@/stores/projects'
import ProjectSearch from '@/components/tasks/partials/projectSearch.vue'
import type {IProject} from '@/modelTypes/IProject'
const {t} = useI18n({useScope: 'global'})
const router = useRouter()
@ -55,6 +63,7 @@ const showError = ref(false)
const project = reactive(new ProjectModel())
const projectService = shallowReactive(new ProjectService())
const projectStore = useProjectStore()
const parentProject = ref<IProject | null>(null)
async function createNewProject() {
if (project.title === '') {
@ -62,6 +71,10 @@ async function createNewProject() {
return
}
showError.value = false
if (parentProject.value) {
project.parentProjectId = parentProject.value.id
}
const newProject = await projectStore.createProject(project)
await router.push({