Merge pull request #1319 from pateljannat/assignment-grading-comment-field

feat: assignment comments is now text editor
This commit is contained in:
Jannat Patel
2025-02-17 19:56:22 +05:30
committed by GitHub
3 changed files with 40 additions and 14 deletions

View File

@@ -1,7 +1,7 @@
<template> <template>
<div <div
v-if="assignment.data" v-if="assignment.data"
class="grid grid-cols-[68%,32%] h-full" class="grid grid-cols-[65%,35%] h-full"
:class="{ 'border rounded-lg': !showTitle }" :class="{ 'border rounded-lg': !showTitle }"
> >
<div class="border-r p-5 overflow-y-auto h-[calc(100vh-3.2rem)]"> <div class="border-r p-5 overflow-y-auto h-[calc(100vh-3.2rem)]">
@@ -81,8 +81,8 @@
</template> </template>
</FileUploader> </FileUploader>
<div v-else> <div v-else>
<div class="flex items-center text-ink-gray-7"> <div class="flex text-ink-gray-7">
<div class="border rounded-md p-2 mr-2"> <div class="border self-start rounded-md p-2 mr-2">
<FileText class="h-5 w-5 stroke-1.5" /> <FileText class="h-5 w-5 stroke-1.5" />
</div> </div>
<a <a
@@ -90,7 +90,7 @@
target="_blank" target="_blank"
class="flex flex-col cursor-pointer !no-underline" class="flex flex-col cursor-pointer !no-underline"
> >
<span> <span class="text-sm leading-5">
{{ submissionFile.file_name }} {{ submissionFile.file_name }}
</span> </span>
<span class="text-sm text-ink-gray-5 mt-1"> <span class="text-sm text-ink-gray-5 mt-1">
@@ -155,12 +155,23 @@
type="select" type="select"
:options="submissionStatusOptions" :options="submissionStatusOptions"
/> />
<FormControl <div>
v-if="submissionResource.doc" <div class="text-sm text-ink-gray-5 mb-1">
v-model="submissionResource.doc.comments" {{ __('Comments') }}
:label="__('Comments')" </div>
type="textarea" <TextEditor
/> :content="comments"
@change="
(val) => {
comments = val
isDirty = true
}
"
:editable="true"
:fixedMenu="true"
editorClass="prose-sm max-w-none border-b border-x bg-surface-gray-2 rounded-b-md py-1 px-2 min-h-[7rem]"
/>
</div>
</div> </div>
</div> </div>
</div> </div>
@@ -184,6 +195,7 @@ import { useRouter } from 'vue-router'
const submissionFile = ref(null) const submissionFile = ref(null)
const answer = ref(null) const answer = ref(null)
const comments = ref(null)
const router = useRouter() const router = useRouter()
const user = inject('$user') const user = inject('$user')
const showTitle = router.currentRoute.value.name == 'AssignmentSubmission' const showTitle = router.currentRoute.value.name == 'AssignmentSubmission'
@@ -281,6 +293,9 @@ watch(submissionResource, () => {
if (submissionResource.doc.answer) { if (submissionResource.doc.answer) {
answer.value = submissionResource.doc.answer answer.value = submissionResource.doc.answer
} }
if (submissionResource.doc.comments) {
comments.value = submissionResource.doc.comments
}
if (submissionResource.isDirty) { if (submissionResource.isDirty) {
isDirty.value = true isDirty.value = true
} else if (showUploader() && !submissionFile.value) { } else if (showUploader() && !submissionFile.value) {
@@ -305,11 +320,14 @@ const submitAssignment = () => {
submissionResource.doc && submissionResource.doc.owner != user.data?.name submissionResource.doc && submissionResource.doc.owner != user.data?.name
? user.data?.name ? user.data?.name
: null : null
submissionResource.setValue.submit( submissionResource.setValue.submit(
{ {
...submissionResource.doc, ...submissionResource.doc,
assignment_attachment: submissionFile.value?.file_url, assignment_attachment: submissionFile.value?.file_url,
evaluator: evaluator, evaluator: evaluator,
comments: comments.value,
answer: answer.value,
}, },
{ {
onSuccess(data) { onSuccess(data) {

View File

@@ -21,7 +21,10 @@
</Button> </Button>
</div> </div>
</header> </header>
<div v-if="batch.data" class="grid grid-cols-[75%,25%]"> <div
v-if="batch.data"
class="grid grid-cols-[75%,25%] h-[calc(100vh-3.2rem)]"
>
<div class="border-r"> <div class="border-r">
<Tabs <Tabs
v-model="tabIndex" v-model="tabIndex"

View File

@@ -13,11 +13,12 @@
"column_break_3", "column_break_3",
"member", "member",
"member_name", "member_name",
"evaluator",
"section_break_dlzh", "section_break_dlzh",
"assignment_attachment", "assignment_attachment",
"answer", "answer",
"section_break_ydgh",
"column_break_oqqy", "column_break_oqqy",
"evaluator",
"status", "status",
"comments", "comments",
"section_break_rqal", "section_break_rqal",
@@ -80,7 +81,7 @@
}, },
{ {
"fieldname": "comments", "fieldname": "comments",
"fieldtype": "Small Text", "fieldtype": "Text Editor",
"label": "Comments" "label": "Comments"
}, },
{ {
@@ -139,12 +140,16 @@
{ {
"fieldname": "column_break_oqqy", "fieldname": "column_break_oqqy",
"fieldtype": "Column Break" "fieldtype": "Column Break"
},
{
"fieldname": "section_break_ydgh",
"fieldtype": "Section Break"
} }
], ],
"index_web_pages_for_search": 1, "index_web_pages_for_search": 1,
"links": [], "links": [],
"make_attachments_public": 1, "make_attachments_public": 1,
"modified": "2024-12-24 21:22:35.212732", "modified": "2025-02-17 18:40:53.374932",
"modified_by": "Administrator", "modified_by": "Administrator",
"module": "LMS", "module": "LMS",
"name": "LMS Assignment Submission", "name": "LMS Assignment Submission",