{ "exam": { "list": { "title": "Exams", "create": "Create Exam", "empty": "No exams yet", "emptyFiltered": "No exams match your filters", "emptyDescription": "Create your first exam to start assigning and grading.", "emptyFilteredDescription": "Try clearing filters or adjusting keywords.", "clearFilters": "Clear filters", "showing": "Showing", "examsUnit": "exams", "searchPlaceholder": "Search exams..." }, "form": { "createTitle": "Create Exam", "createDescription": "Configure a new exam for your classes.", "buildTitle": "Build Exam", "buildDescription": "Assemble questions for your exam.", "title": "Exam Title", "subject": "Subject", "grade": "Grade", "difficulty": "Difficulty", "totalScore": "Total Score", "durationMin": "Duration (minutes)", "scheduledAt": "Scheduled At", "questions": "Questions", "missingSubjectOrGrade": "Missing subject or grade configuration", "previewBeforeCreate": "Please preview and confirm before creating", "createSuccess": "Exam draft created", "redirecting": "Redirecting to exam builder...", "createFailed": "Failed to create exam", "loadFormFailed": "Failed to load form data", "loadSubjectsFailed": "Failed to load subjects", "loadGradesFailed": "Failed to load grades", "creating": "Creating...", "detailsTitle": "Exam Details", "detailsDesc": "Define the core information for your exam.", "titlePlaceholder": "e.g. Midterm Mathematics Exam", "subjectPlaceholder": "Select subject", "gradePlaceholder": "Select grade level", "difficultyPlaceholder": "Select level", "difficultyLevel1": "Level 1 (Easy)", "difficultyLevel2": "Level 2", "difficultyLevel3": "Level 3 (Medium)", "difficultyLevel4": "Level 4", "difficultyLevel5": "Level 5 (Hard)", "loadingSubjects": "Loading subjects...", "loadingGrades": "Loading grades...", "scheduledAtDesc": "If set, this exam will be scheduled for a specific time.", "modeManual": "Manual Assembly", "modeManualDesc": "Manually select questions from the bank and organize structure.", "modeManualAction": "Create & Start Building", "modeAi": "AI Generation", "modeAiDesc": "Paste exam text and AI will auto-parse questions into structured preview.", "modeAiAction": "Generate in Background", "modeRich": "Rich Text Editor", "modeRichDesc": "Use rich text editor to paste exam text, manually or AI-assisted marking of questions, groups, blanks, etc.", "modeRichHint": "The rich text editor supports selecting text to mark as questions/groups/dotted chars/blanks, with live preview on the right.", "modeRichAction": "Open Rich Text Editor" }, "status": { "draft": "Draft", "published": "Published", "archived": "Archived" }, "difficulty": { "1": "Easy", "2": "Easy-Med", "3": "Medium", "4": "Med-Hard", "5": "Hard", "ariaLabel": "Difficulty level {{level}}: {{label}}" }, "actions": { "preview": "Preview Exam", "copyId": "Copy ID", "edit": "Edit", "build": "Build", "duplicate": "Duplicate", "publish": "Publish", "moveToDraft": "Move to Draft", "archive": "Archive", "delete": "Delete", "deleteConfirmTitle": "Are you absolutely sure?", "deleteConfirmDescription": "This action cannot be undone. This will permanently delete the exam \"{{title}}\" and remove all associated data.", "cancel": "Cancel", "deleteSuccess": "Exam deleted successfully", "deleteFailed": "Failed to delete exam", "publishSuccess": "Exam published", "archiveSuccess": "Exam archived", "draftSuccess": "Exam moved to draft", "duplicateSuccess": "Exam duplicated", "duplicateFailed": "Failed to duplicate exam", "updateFailed": "Failed to update exam", "previewFailed": "Failed to load exam preview", "idCopied": "Exam ID copied to clipboard", "openMenu": "Open menu", "selectRow": "Select row", "selectAll": "Select all", "noQuestions": "No questions in this exam.", "loadingPreview": "Loading preview..." }, "columns": { "examInfo": "Exam Info", "status": "Status", "stats": "Stats", "difficulty": "Difficulty", "date": "Date", "scheduled": "Scheduled", "created": "Created", "questions": "Qs", "points": "Pts" }, "filters": { "status": "Status", "anyStatus": "Any Status", "difficulty": "Difficulty", "anyDifficulty": "Any Difficulty" }, "error": { "notFound": "Exam not found", "loadFailed": "Failed to load exam" }, "analytics": { "title": "Exam Analytics", "description": "View score distribution and per-question analysis", "totalStudents": "Total Students", "submitted": "Submitted", "gradedCount": "Graded", "assignmentCount": "Assignments", "averageScore": "Average Score", "passRate": "Pass Rate", "scoreDistribution": "Score Distribution", "scoreDistributionDesc": "Student count by percentage range", "questionAnalysis": "Question Analysis", "questionAnalysisDesc": "Error rate and difficulty (error rate >= 70% is hard)", "questionType": "Type", "questionText": "Question", "maxScore": "Max Score", "errorCount": "Errors", "errorRate": "Error Rate", "difficulty": "Difficulty", "difficultyEasy": "Easy", "difficultyMedium": "Medium", "difficultyHard": "Hard", "highErrorWarning": "High Error Rate Warning", "highErrorWarningDesc": "The following questions have an error rate above 70% and are recommended for focused review", "noData": "No analytics data yet. Data will be available after students submit and grading is complete.", "viewAnalytics": "View Analytics" }, "richEditor": { "title": "Rich Text Exam Builder", "description": "Paste exam text, use toolbar to mark questions/groups/blanks/dotted chars, live preview on the right", "basicInfo": "Basic Info", "sourceText": "Source Text", "sourceTextPlaceholder": "Paste the full exam text here...", "aiAutoMark": "AI Auto-Mark", "aiMarking": "AI marking...", "aiMarkSuccess": "AI auto-marking complete", "aiMarkFailed": "AI auto-marking failed", "aiMarkHint": "After pasting exam text in the editor, click this button to let AI auto-detect question structure", "titlePlaceholder": "Exam title (e.g. 2024-2025 Final Academic Quality Assessment)", "editorArea": "Editor (paste exam text, select text to mark questions/groups/dotted/blanks)", "previewArea": "Preview", "emptyEditor": "Enter or paste exam content in the editor on the left", "emptyPreview": "Preview will appear here", "markQuestion": "Mark Question", "markGroup": "Mark Group", "markDotted": "Dotted Char", "markBlank": "Blank", "insertImage": "Insert Image", "questionType": "Type", "score": "Score", "groupTitle": "Group Title", "saveDraft": "Save Draft", "saving": "Saving...", "saveSuccess": "Exam draft created", "saveFailed": "Failed to create", "loadFormFailed": "Failed to load form data", "titleRequired": "Please fill in the exam title", "subjectGradeRequired": "Please select subject and grade", "emptyContent": "Exam content is empty", "pasteSourceFirst": "Please paste exam text first", "bold": "Bold", "italic": "Italic", "strike": "Strikethrough", "dotted": "Dotted", "bulletList": "Bullet List", "orderedList": "Ordered List", "quote": "Quote", "undo": "Undo", "redo": "Redo", "questionTypes": { "single_choice": "Single Choice", "multiple_choice": "Multiple Choice", "true_false": "True/False", "fill_blank": "Fill in the Blank", "short_answer": "Short Answer", "essay": "Essay", "text": "Text" } } }, "homework": { "list": { "title": "Assignments", "description": "Manage assignments, view submission rates and grading progress.", "create": "Create Assignment", "empty": "No assignments yet", "emptyFiltered": "No assignments match your filters", "emptyDescription": "You haven't created any assignments yet.", "emptyFilteredDescription": "Try clearing filters or adjusting keywords.", "clearFilters": "Clear filters", "filterByClass": "Filter by class: {{className}}", "columns": { "title": "Title", "status": "Status", "dueAt": "Due Date", "submissionRate": "Submission Rate", "averageScore": "Average Score", "overdue": "Overdue", "sourceExam": "Source Exam", "createdAt": "Created At" }, "pagination": { "itemLabel": "assignments" } }, "form": { "createTitle": "Create Assignment", "quickMode": "Quick Assignment", "quickModeDescription": "Enter title and description directly, no questions needed", "examMode": "Exam-based Assignment", "examModeDescription": "Derive assignment from an existing exam", "class": "Class", "selectClass": "Select a class", "sourceExam": "Source Exam", "selectExam": "Select an exam", "assignmentTitle": "Assignment Title", "titlePlaceholderQuick": "e.g. Recite Lesson 3", "titlePlaceholderExam": "Defaults to exam title", "description": "Description (optional)", "descriptionPlaceholderQuick": "Enter assignment requirements, question content, or instructions...", "availableAt": "Available At (optional)", "dueAt": "Due At (optional)", "allowLate": "Allow late submissions", "lateDueAt": "Late Due At (optional)", "maxAttempts": "Max Attempts", "submit": "Create Assignment", "submitting": "Creating...", "creating": "Creating assignment...", "selectExamRequired": "Please select an exam", "titleRequired": "Please enter a title", "selectClassRequired": "Please select a class", "createSuccess": "Assignment created", "createFailed": "Failed to create" }, "take": { "questions": "Questions", "question": "Question {{index}}", "points": "points", "startAssignment": "Start Assignment", "submitAssignment": "Submit Assignment", "submitAll": "Submit All", "saveAnswer": "Save Answer", "saved": "Saved", "saveFailed": "Failed to save", "starting": "Starting...", "submitting": "Submitting...", "started": "Started", "submitted": "Submitted", "notStarted": "Not Started", "readyToStart": "Ready to start?", "readyDescription": "Click the \"Start Assignment\" button above to begin. Your answers will be saved when you click \"Save Answer\".", "startNow": "Start Now", "back": "Back", "timedExam": "Timed exam: {{minutes}} minutes", "timeRemaining": "Time remaining", "timeUpAutoSubmit": "Time is up, auto-submitting...", "confirmSubmit": "Confirm Submission", "confirmSubmitDescription": "All questions have been answered. Submitted answers cannot be changed. Are you sure you want to submit?", "unansweredWarning": "You have {{count}} unanswered question(s). Submitted answers cannot be changed. Are you sure you want to submit?", "cancel": "Cancel", "confirmSubmitAction": "Confirm Submit", "submitSuccess": "Submitted", "submitFailed": "Failed to submit", "startSuccess": "Started", "startFailed": "Failed to start", "assignmentInfo": "Assignment Info", "status": "Status", "dueDate": "Due Date", "overdue": "Overdue", "hoursLeft": "{{hours}} hour(s) left", "lessThanOneHour": "Less than 1 hour left", "attempts": "Attempts", "attemptsUsed": "{{used}} / {{max}} used", "attemptsRemaining": "· {{remaining}} remaining", "description": "Description", "noDescription": "No description provided.", "progress": "Progress", "jumpToQuestion": "Jump to question {{index}}", "answered": "Answered", "unanswered": "Not answered", "yourAnswer": "Your answer", "answerPlaceholder": "Type your answer here...", "true": "True", "false": "False", "unsupportedType": "Unsupported question type", "teacherFeedback": "Teacher Feedback", "noFeedback": "No specific feedback provided.", "makeSureAnswered": "Make sure you have answered all questions.", "autoSaveIdle": "Auto-save ready", "autoSaveSaving": "Auto-saving...", "autoSaveSaved": "Auto-saved", "autoSaveError": "Auto-save failed. Will retry when network recovers.", "autoSaveRestored": "Restored unsaved answers from offline cache", "autoSaveCacheError": "Failed to restore offline cache", "scanTitle": "Answer Scan Upload", "scanDescription": "After answering on paper, photograph and upload the full paper", "selectImageFiles": "Please select image files", "uploadFailed": "Upload failed", "uploadSuccess": "Uploaded {{count}} images", "deleteScan": "Delete", "moveUp": "Move Up", "moveDown": "Move Down", "dragDropHint": "Drag images here, or click to select files", "pageLabel": "Page {{page}}", "scanDisabled": "Submitted, scan images cannot be modified" }, "grade": { "title": "Grade", "submissions": "Submissions", "student": "Student", "status": "Status", "submitted": "Submitted", "score": "Score", "action": "Action", "back": "Back", "openAssignment": "Open Assignment", "late": "Late", "targets": "Targets", "submittedCount": "Submitted", "gradedCount": "Graded", "exam": "Exam", "gradingSummary": "Grading Summary", "totalScore": "Total Score", "correct": "Correct", "incorrect": "Incorrect", "partial": "Partial", "questionStatus": "Question Status", "studentAnswer": "Student Answer", "referenceAnswer": "Reference Answer", "noReferenceAnswer": "No reference answer provided.", "noQuestionText": "No question text", "autoGraded": "Auto-graded", "correctButton": "Correct", "incorrectButton": "Incorrect", "scoreLabel": "Score", "addFeedback": "Add Feedback", "hideFeedback": "Hide Feedback", "feedbackPlaceholder": "Provide feedback for {{name}}...", "submitGrades": "Submit Grades", "saving": "Saving...", "gradesSaved": "Grading saved successfully", "gradesSaveFailed": "Failed to save grading", "previousStudent": "Previous Student", "nextStudent": "Next Student", "prev": "Prev", "next": "Next", "gradesAutoSaveNote": "Grades are saved automatically when you click Submit. Students will see their grades and feedback immediately after you submit.", "batchAutoGrade": "Batch Auto-Grade", "batchSelected": "{{count}} submissions selected", "batchSelectAtLeastOne": "Please select at least one submission", "batchFailed": "Batch grading failed", "selectAll": "Select All", "selectRow": "Select this row", "scanGrading": "Scan Grading", "prevSubmission": "Previous", "nextSubmission": "Next", "saveGrading": "Save Grading", "questionsAndGrading": "Questions & Grading", "studentScanImages": "Student Scan Images", "loadingScans": "Loading...", "loadingImages": "Loading scan images...", "noScans": "No scan images", "saveFailed": "Save failed", "scanFeedbackPlaceholder": "Grading feedback (optional)...", "scoreOutOf": "/ {{max}} pts", "questionsCount": "Questions & Grading ({{count}} items)", "scanPagesCount": "Student Scan Images ({{count}} pages)" }, "review": { "title": "Review", "yourAnswer": "Your Answer", "correctAnswer": "Correct Answer", "teacherFeedback": "Teacher Feedback", "score": "Score", "maxScore": "Max Score", "correctMarker": "✓ Correct", "backToList": "Back to List", "gradedReport": "Graded Report", "submissionDetails": "Submission Details", "questionsUnit": "Questions", "noAnswer": "No answer provided", "noFeedback": "No specific feedback provided.", "questionBreakdown": "Question Breakdown", "responseSummary": "Response Summary", "description": "Description", "noDescription": "No description provided.", "totalScore": "Total Score", "correctAnswerTrue": "True", "correctAnswerFalse": "False" }, "result": { "title": "Submission Result", "scoreRate": "Score Rate", "fullyGraded": "All questions have been graded", "partiallyGraded": "Objective questions auto-graded. Subjective questions awaiting teacher review.", "correctCount": "Correct", "incorrectCount": "Incorrect", "partialCount": "Partial", "pendingCount": "Pending", "wrongAnswersTitle": "Wrong Answers Preview", "wrongAnswersDesc": "These questions need focused review", "backToList": "Back to Assignments", "viewErrorBook": "View Error Book" }, "status": { "draft": "Draft", "published": "Published", "archived": "Archived", "started": "Started", "submitted": "Submitted", "graded": "Graded", "not_started": "Not Started", "in_progress": "In Progress" }, "error": { "notFound": "Assignment not found", "submissionNotFound": "Submission not found", "unauthorized": "Unauthorized", "submissionLocked": "Submission is locked", "pastDue": "Past due", "pastLateDue": "Past late due", "noActiveStudents": "No active students in this class", "classNotFound": "Class not found", "examNotFound": "Exam not found", "examSubjectNotSet": "Exam subject not set", "notAssignedToClass": "Not assigned to this class", "notAssignedToSubject": "Not assigned to this subject", "notAssigned": "Not assigned", "notAvailableYet": "Not available yet", "noAttemptsLeft": "No attempts left", "assignmentNotFound": "Assignment not found", "assignmentNotAvailable": "Assignment not available" } }, "proctoring": { "mode": { "title": "Exam Mode", "description": "Select exam mode and configure options. Proctored mode enables anti-cheat monitoring.", "homework": "Homework Mode", "timed": "Timed Mode", "proctored": "Proctored Mode", "homeworkDescription": "Students can answer at any time, no time limit", "timedDescription": "Timed answering, auto-submit on timeout", "proctoredDescription": "Timed + anti-cheat + forced fullscreen" }, "config": { "duration": "Duration (minutes)", "durationTimedDescription": "Auto-submit after timeout when student starts", "durationProctoredDescription": "Required in proctored mode", "shuffleQuestions": "Shuffle Questions", "shuffleQuestionsDescription": "Each student sees questions in random order", "antiCheat": "Enable Anti-cheat Monitoring", "antiCheatDescription": "Monitor tab switch, copy, right-click, devtools, etc.", "allowLateStart": "Allow Late Start", "allowLateStartDescription": "Allow students to enter within a grace period after exam starts", "lateStartGrace": "Late Start Grace (minutes)", "lateStartGraceDescription": "No new students allowed after this time" }, "dashboard": { "title": "Proctoring Dashboard", "summary": "Summary", "students": "Students", "recentEvents": "Recent Events", "noEvents": "No events", "eventCount": "Event Count", "abnormalCount": "Abnormal Count" }, "events": { "tab_switch": "Tab Switch", "window_blur": "Window Blur", "copy_attempt": "Copy Attempt", "paste_attempt": "Paste Attempt", "right_click": "Right Click", "devtools_open": "DevTools Open", "fullscreen_exit": "Fullscreen Exit", "idle_timeout": "Idle Timeout" } }, "common": { "loading": "Loading...", "save": "Save", "cancel": "Cancel", "confirm": "Confirm", "back": "Back", "edit": "Edit", "delete": "Delete", "create": "Create", "search": "Search", "filter": "Filter", "noResults": "No results", "error": "Error", "success": "Success", "failed": "Failed", "retry": "Retry", "page": "Page", "of": "of", "selected": "selected", "rows": "row(s)", "view": "View", "continue": "Continue", "other": "Other", "completed": "Completed" } }