diff options
| author | Grail Finder (aider) <wohilas@gmail.com> | 2025-04-05 17:56:09 +0300 | 
|---|---|---|
| committer | Grail Finder (aider) <wohilas@gmail.com> | 2025-04-05 17:56:09 +0300 | 
| commit | ba24de361eb2133d5e014d5796f654c82e6d69cb (patch) | |
| tree | d62132c1ba98b3533049e5744ca5253248d63504 /internal/handlers/main.go | |
| parent | 96441a431eaca60b1b798e997608812c8be76598 (diff) | |
feat: return full Question model in /answer response
Diffstat (limited to 'internal/handlers/main.go')
| -rw-r--r-- | internal/handlers/main.go | 13 | 
1 files changed, 12 insertions, 1 deletions
| diff --git a/internal/handlers/main.go b/internal/handlers/main.go index 4717f3c..a685b88 100644 --- a/internal/handlers/main.go +++ b/internal/handlers/main.go @@ -88,8 +88,19 @@ func (h *Handlers) HandleAnswer(w http.ResponseWriter, r *http.Request) {  		feedback = `<div data-testid="feedback" class="feedback">Wrong answer! The correct answer was: ` + getCorrectOption(question) + `</div>`  	} +	// Render feedback section with full question state +	tmpl, err := template.ParseGlob("components/*.html") +	if err != nil { +		abortWithError(w, err.Error()) +		return +	} +	 +	// Execute template with question data including status  	w.Header().Set("Content-Type", "text/html") -	w.Write([]byte(feedback)) +	err = tmpl.ExecuteTemplate(w, "feedback", question) +	if err != nil { +		h.log.Error("failed to render feedback template", "error", err) +	}  }  func getCorrectOption(q *models.Question) string { | 
