diff --git a/src/lib/components/AssessmentHistory.svelte b/src/lib/components/AssessmentHistory.svelte new file mode 100644 index 0000000..3cf930a --- /dev/null +++ b/src/lib/components/AssessmentHistory.svelte @@ -0,0 +1,52 @@ + + +{#if history.length === 0} + {#if !hideIfEmpty} +
No previous assessments yet.
+ {/if} +{:else} +
+

Assessment History

+
+ + + + + + + + + + + {#each history as entry (entry.timestamp)} + + + + + + + {/each} + +
DateTask/AssignmentGradeActions
{new Date(entry.timestamp).toLocaleString()}{entry.task}{entry.grade} +
+ View +
+
Submission: {entry.submission}
+
Strengths: {entry.strengths}
+
Areas for Improvement: {entry.areas_for_improvement}
+
Individualized Activity: {entry.individualized_activity}
+
Reflection Question: {entry.reflection_question}
+
Teacher Suggestion: {entry.teacher_suggestion}
+
+ Show AI Reasoning +
{entry.reasoning}
+
+
+
+
+
+
+{/if} diff --git a/src/routes/results/+page.svelte b/src/routes/results/+page.svelte index 9c7ff5d..cf61422 100644 --- a/src/routes/results/+page.svelte +++ b/src/routes/results/+page.svelte @@ -1,13 +1,31 @@ @@ -17,7 +35,9 @@ onMount(() => {

View detailed feedback and recommendations for each student submission.

{#if feedback} - {:else} + {/if} + {#if !feedback && (!history || history.length === 0)}
No results yet. Upload submissions to see feedback here.
{/if} + diff --git a/src/routes/upload/+page.svelte b/src/routes/upload/+page.svelte index 351fb1f..437de79 100644 --- a/src/routes/upload/+page.svelte +++ b/src/routes/upload/+page.svelte @@ -54,8 +54,19 @@ async function handleSubmit(event: Event) { }); const result = await response.json(); if (response.ok && result.success) { - // Redirect to /results with feedback in history state - window.history.pushState({ feedback: result }, '', '/results'); + // Save to localStorage history + try { + let prev = JSON.parse(localStorage.getItem('assessmentHistory') || '[]'); + const entry = { + timestamp: Date.now(), + ...result, + submission: result.submission || textInput || '', + task: taskDescription, + }; + prev.unshift(entry); + localStorage.setItem('assessmentHistory', JSON.stringify(prev.slice(0, 50))); + } catch {} + // Redirect to /results window.location.assign('/results'); file = null; textInput = '';