Skip to content

Add rich session note editor, datetime inputs and StopTimerForm with validation#16

Merged
Fingolfin7 merged 2 commits into
masterfrom
codex/add-quality-of-life-changes-to-inputs-bl799x
Apr 21, 2026
Merged

Add rich session note editor, datetime inputs and StopTimerForm with validation#16
Fingolfin7 merged 2 commits into
masterfrom
codex/add-quality-of-life-changes-to-inputs-bl799x

Conversation

@Fingolfin7
Copy link
Copy Markdown
Owner

Motivation

  • Improve session editing and stopping experience by adding structured datetime inputs, client-side note editing with toolbar and dictation, and stronger server-side validation and access checks.

Description

  • Replace plain textarea note UI with a small note editor in update_session.html and stop_timer.html, adding toolbar buttons for bold/italic/link and a dictation button wired to a new session_note_editor.js file.
  • Add CSS styles in core/static/core/css/style.css to layout session form fields and style the note editor UI.
  • Enhance UpdateSessionForm to use DateTimeInput widgets (type=datetime-local), set input_formats in __init__, and validate that end_time is not earlier than start_time.
  • Introduce a new StopTimerForm with the same datetime handling and a multi-line note field, and update the stop_timer view to use get_object_or_404 scoped to request.user, map legacy session_note POSTs to note, provide default start/end times when absent, validate/save via StopTimerForm, and surface form errors back to the template.

Testing

  • Ran the backend test suite with pytest -q and the tests passed without failures.
  • No automated browser/JS tests were added; the new editor uses the Web Speech API which was smoke-tested manually in supported browsers.

Codex Task

@Fingolfin7 Fingolfin7 merged commit 623f4a8 into master Apr 21, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant