fix: misc ui issues

This commit is contained in:
Jannat Patel
2025-05-13 20:04:39 +05:30
parent 0a71620046
commit da4f134095
11 changed files with 58 additions and 41 deletions

View File

@@ -266,7 +266,8 @@ const students = createResource({
onSuccess(data) { onSuccess(data) {
chartData.value = getChartData() chartData.value = getChartData()
showProgressChart.value = showProgressChart.value =
data.length && (props.batch?.data?.courses?.length || assessmentCount.value) data.length &&
(props.batch?.data?.courses?.length || assessmentCount.value)
}, },
}) })

View File

@@ -92,7 +92,10 @@
{{ option.label }} {{ option.label }}
</div> </div>
<div <div
v-if="option.description && option.description != option.label" v-if="
option.description &&
option.description != option.label
"
class="text-xs text-ink-gray-7" class="text-xs text-ink-gray-7"
v-html="option.description" v-html="option.description"
></div> ></div>

View File

@@ -25,21 +25,23 @@
v-model="assessment" v-model="assessment"
:doctype="assessmentType" :doctype="assessmentType"
:label="__('Assessment')" :label="__('Assessment')"
:onCreate="(value, close) => { :onCreate="
close() (value, close) => {
if (assessmentType === 'LMS Quiz') { close()
router.push({ if (assessmentType === 'LMS Quiz') {
name: 'QuizForm', router.push({
params: { name: 'QuizForm',
quizID: 'new', params: {
}, quizID: 'new',
}) },
} else if (assessmentType === 'LMS Assignment') { })
router.push({ } else if (assessmentType === 'LMS Assignment') {
name: 'Assignments' router.push({
}) name: 'Assignments',
})
}
} }
}" "
/> />
</div> </div>
</template> </template>

View File

@@ -19,15 +19,17 @@
v-model="course" v-model="course"
:label="__('Course')" :label="__('Course')"
:required="true" :required="true"
:onCreate="(value, close) => { :onCreate="
close() (value, close) => {
router.push({ close()
name: 'CourseForm', router.push({
params: { name: 'CourseForm',
courseName: 'new' params: {
} courseName: 'new',
}) },
}" })
}
"
/> />
<Link <Link
doctype="Course Evaluator" doctype="Course Evaluator"

View File

@@ -14,7 +14,13 @@
<div class="text-xl font-semibold"> <div class="text-xl font-semibold">
{{ student.full_name }} {{ student.full_name }}
</div> </div>
<Badge v-if="Object.keys(student.assessments).length || Object.keys(student.courses).length" :theme="student.progress === 100 ? 'green' : 'red'"> <Badge
v-if="
Object.keys(student.assessments).length ||
Object.keys(student.courses).length
"
:theme="student.progress === 100 ? 'green' : 'red'"
>
{{ student.progress }}% {{ __('Complete') }} {{ student.progress }}% {{ __('Complete') }}
</Badge> </Badge>
</div> </div>
@@ -26,7 +32,10 @@
<div class="space-y-8"> <div class="space-y-8">
<!-- Assessments --> <!-- Assessments -->
<div v-if="Object.keys(student.assessments).length" class="space-y-2 text-sm"> <div
v-if="Object.keys(student.assessments).length"
class="space-y-2 text-sm"
>
<div class="flex items-center border-b pb-1 font-medium"> <div class="flex items-center border-b pb-1 font-medium">
<span class="flex-1"> <span class="flex-1">
{{ __('Assessment') }} {{ __('Assessment') }}
@@ -73,7 +82,10 @@
</div> </div>
<!-- Courses --> <!-- Courses -->
<div v-if="Object.keys(student.courses).length" class="space-y-2 text-sm"> <div
v-if="Object.keys(student.courses).length"
class="space-y-2 text-sm"
>
<div class="flex items-center border-b pb-1 font-medium"> <div class="flex items-center border-b pb-1 font-medium">
<span class="flex-1"> <span class="flex-1">
{{ __('Courses') }} {{ __('Courses') }}

View File

@@ -19,9 +19,11 @@
doctype="User" doctype="User"
v-model="student" v-model="student"
:filters="{ ignore_user_type: 1 }" :filters="{ ignore_user_type: 1 }"
:onCreate="(value, close) => { :onCreate="
openSettings('Members', close) (value, close) => {
}" openSettings('Members', close)
}
"
/> />
</div> </div>
</template> </template>

View File

@@ -358,9 +358,8 @@ watch(tabIndex, () => {
const canMakeAnnouncement = () => { const canMakeAnnouncement = () => {
if (readOnlyMode) return false if (readOnlyMode) return false
if (!batch.data?.students?.length) if (!batch.data?.students?.length) return false
return false
return user.data?.is_moderator || user.data?.is_evaluator return user.data?.is_moderator || user.data?.is_evaluator
} }

View File

@@ -499,8 +499,6 @@ const validateFile = (file) => {
} }
} }
const breadcrumbs = computed(() => { const breadcrumbs = computed(() => {
let crumbs = [ let crumbs = [
{ {

View File

@@ -3,7 +3,7 @@
class="sticky flex items-center justify-between top-0 z-10 border-b bg-surface-white px-3 py-2.5 sm:px-5" class="sticky flex items-center justify-between top-0 z-10 border-b bg-surface-white px-3 py-2.5 sm:px-5"
> >
<Breadcrumbs :items="breadcrumbs" /> <Breadcrumbs :items="breadcrumbs" />
<router-link :to="{ name: 'Batches', query: { 'certification': true } }"> <router-link :to="{ name: 'Batches', query: { certification: true } }">
<Button> <Button>
<template #prefix> <template #prefix>
<GraduationCap class="h-4 w-4 stroke-1.5" /> <GraduationCap class="h-4 w-4 stroke-1.5" />

View File

@@ -29,9 +29,7 @@
v-if="jobCount" v-if="jobCount"
class="flex flex-col lg:flex-row space-y-4 lg:space-y-0 lg:items-center justify-between w-full md:w-4/5 mx-auto p-5" class="flex flex-col lg:flex-row space-y-4 lg:space-y-0 lg:items-center justify-between w-full md:w-4/5 mx-auto p-5"
> >
<div <div class="text-xl font-semibold text-ink-gray-7 mb-4 md:mb-0">
class="text-xl font-semibold text-ink-gray-7 mb-4 md:mb-0"
>
{{ __('{0} Open Jobs').format(jobCount) }} {{ __('{0} Open Jobs').format(jobCount) }}
</div> </div>

View File

@@ -558,4 +558,4 @@ export const openSettings = (category, close) => {
close() close()
settingsStore.activeTab = category settingsStore.activeTab = category
settingsStore.isSettingsOpen = true settingsStore.isSettingsOpen = true
} }