diff --git a/frontend/src/pages/ActivityPage.jsx b/frontend/src/pages/ActivityPage.jsx index 3257180..5d721aa 100644 --- a/frontend/src/pages/ActivityPage.jsx +++ b/frontend/src/pages/ActivityPage.jsx @@ -3,6 +3,7 @@ import { Upload, Pencil, Trash2, Check, X, CheckCircle } from 'lucide-react' import { BarChart, Bar, XAxis, YAxis, Tooltip, ResponsiveContainer, CartesianGrid } from 'recharts' import { api } from '../utils/api' import UsageBadge from '../components/UsageBadge' +import TrainingTypeSelect from '../components/TrainingTypeSelect' import dayjs from 'dayjs' import 'dayjs/locale/de' dayjs.locale('de') @@ -18,7 +19,10 @@ function empty() { date: dayjs().format('YYYY-MM-DD'), activity_type: 'Traditionelles Krafttraining', duration_min: '', kcal_active: '', - hr_avg: '', hr_max: '', rpe: '', notes: '' + hr_avg: '', hr_max: '', rpe: '', notes: '', + training_type_id: null, + training_category: null, + training_subcategory: null } } @@ -89,11 +93,19 @@ function EntryForm({ form, setForm, onSave, onCancel, saveLabel='Speichern', sav set('date',e.target.value)}/> -
- - +
+ { + setForm(f => ({ + ...f, + training_type_id: typeId, + training_category: category, + training_subcategory: subcategory + })) + }} + required={false} + />
diff --git a/frontend/src/pages/Dashboard.jsx b/frontend/src/pages/Dashboard.jsx index 586805c..1649544 100644 --- a/frontend/src/pages/Dashboard.jsx +++ b/frontend/src/pages/Dashboard.jsx @@ -10,6 +10,7 @@ import { useProfile } from '../context/ProfileContext' import { getBfCategory } from '../utils/calc' import TrialBanner from '../components/TrialBanner' import EmailVerificationBanner from '../components/EmailVerificationBanner' +import TrainingTypeDistribution from '../components/TrainingTypeDistribution' import { getInterpretation, getStatusColor, getStatusBg } from '../utils/interpret' import Markdown from '../utils/Markdown' import dayjs from 'dayjs' @@ -470,6 +471,20 @@ export default function Dashboard() { )}
+ {/* Training Type Distribution */} + {activities.length > 0 && ( +
+
+
🏋️ Trainingstyp-Verteilung
+ +
+ +
+ )} + {/* Latest AI insight */}