Merge pull request #1866 from muhamiyan/issues-1

fix: open dialog directly to create quiz and assignment
This commit is contained in:
Jannat Patel
2025-12-11 17:15:47 +05:30
committed by GitHub
3 changed files with 13 additions and 4 deletions

View File

@@ -71,7 +71,7 @@ const addAssessment = () => {
}
const redirectToForm = () => {
if (props.type == 'quiz') window.open('/lms/quizzes/new', '_blank')
else window.open('/lms/assignments/new', '_blank')
if (props.type == 'quiz') window.open('/lms/quizzes?new=true', '_blank')
else window.open('/lms/assignments?new=true', '_blank')
}
</script>

View File

@@ -85,7 +85,7 @@ import {
} from 'frappe-ui'
import { computed, inject, onMounted, ref, watch } from 'vue'
import { Plus } from 'lucide-vue-next'
import { useRouter } from 'vue-router'
import { useRouter, useRoute } from 'vue-router'
import { sessionStore } from '../stores/session'
import AssignmentForm from '@/components/Modals/AssignmentForm.vue'
import EmptyState from '@/components/EmptyState.vue'
@@ -99,12 +99,17 @@ const assignmentID = ref('new')
const assignmentCount = ref(0)
const { brand } = sessionStore()
const router = useRouter()
const route = useRoute()
const readOnlyMode = window.read_only_mode
onMounted(() => {
if (!user.data?.is_moderator && !user.data?.is_instructor) {
router.push({ name: 'Courses' })
}
if (route.query.new === 'true') {
assignmentID.value = 'new'
showAssignmentForm.value = true
}
getAssignmentCount()
titleFilter.value = router.currentRoute.value.query.title
typeFilter.value = router.currentRoute.value.query.type

View File

@@ -134,7 +134,7 @@ import {
toast,
usePageMeta,
} from 'frappe-ui'
import { useRouter } from 'vue-router'
import { useRouter, useRoute } from 'vue-router'
import { computed, inject, onMounted, ref, watch } from 'vue'
import { Plus } from 'lucide-vue-next'
import { sessionStore } from '@/stores/session'
@@ -145,6 +145,7 @@ const { brand } = sessionStore()
const user = inject('$user')
const dayjs = inject('$dayjs')
const router = useRouter()
const route = useRoute()
const search = ref('')
const readOnlyMode = window.read_only_mode
const quizFilters = ref({})
@@ -157,6 +158,9 @@ onMounted(() => {
} else if (!user.data?.is_moderator) {
quizFilters.value['owner'] = user.data?.name
}
if (route.query.new === 'true') {
showForm.value = true
}
})
watch(search, () => {