mirror of
https://github.com/wger-project/flutter.git
synced 2026-02-18 00:17:48 +01:00
Translate categories and equipment in other parts of the application
This commit is contained in:
@@ -22,6 +22,7 @@ import 'package:flutter_html/flutter_html.dart';
|
||||
import 'package:flutter_svg/svg.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:wger/helpers/consts.dart';
|
||||
import 'package:wger/helpers/i18n.dart';
|
||||
import 'package:wger/models/exercises/exercise.dart';
|
||||
import 'package:wger/models/exercises/muscle.dart';
|
||||
import 'package:wger/providers/exercises.dart';
|
||||
@@ -44,7 +45,7 @@ class ExerciseDetail extends StatelessWidget {
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
// Category and equipment
|
||||
getCategoriesAndEquipment(),
|
||||
getCategoriesAndEquipment(context),
|
||||
|
||||
// Videos
|
||||
...getVideos(),
|
||||
@@ -190,14 +191,16 @@ class ExerciseDetail extends StatelessWidget {
|
||||
return out;
|
||||
}
|
||||
|
||||
Widget getCategoriesAndEquipment() {
|
||||
Widget getCategoriesAndEquipment(BuildContext context) {
|
||||
final List<Widget> out = [];
|
||||
|
||||
out.add(Chip(
|
||||
label: Text(_exercise.baseObj.category.name),
|
||||
));
|
||||
out.add(
|
||||
Chip(label: Text(getTranslation(_exercise.baseObj.category.name, context))),
|
||||
);
|
||||
if (_exercise.baseObj.equipment.isNotEmpty) {
|
||||
_exercise.baseObj.equipment.map((e) => Chip(label: Text(e.name))).forEach((element) {
|
||||
_exercise.baseObj.equipment
|
||||
.map((e) => Chip(label: Text(getTranslation(e.name, context))))
|
||||
.forEach((element) {
|
||||
out.add(element);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:wger/helpers/i18n.dart';
|
||||
import 'package:wger/providers/exercises.dart';
|
||||
|
||||
class ExerciseFilterModalBody extends StatefulWidget {
|
||||
@@ -26,8 +27,7 @@ class ExerciseFilterModalBody extends StatefulWidget {
|
||||
}) : super(key: key);
|
||||
|
||||
@override
|
||||
_ExerciseFilterModalBodyState createState() =>
|
||||
_ExerciseFilterModalBodyState();
|
||||
_ExerciseFilterModalBodyState createState() => _ExerciseFilterModalBodyState();
|
||||
}
|
||||
|
||||
class _ExerciseFilterModalBodyState extends State<ExerciseFilterModalBody> {
|
||||
@@ -70,12 +70,11 @@ class _ExerciseFilterModalBodyState extends State<ExerciseFilterModalBody> {
|
||||
children: filterCategory.items.entries.map(
|
||||
(currentEntry) {
|
||||
return SwitchListTile(
|
||||
title: Text(currentEntry.key.name),
|
||||
title: Text(getTranslation(currentEntry.key.name, context)),
|
||||
value: currentEntry.value,
|
||||
onChanged: (_) {
|
||||
setState(() {
|
||||
filterCategory.items
|
||||
.update(currentEntry.key, (value) => !value);
|
||||
filterCategory.items.update(currentEntry.key, (value) => !value);
|
||||
Provider.of<ExercisesProvider>(context, listen: false)
|
||||
.setFilters(filters);
|
||||
});
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
*/
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:wger/helpers/i18n.dart';
|
||||
import 'package:wger/models/exercises/exercise.dart';
|
||||
import 'package:wger/screens/exercise_screen.dart';
|
||||
import 'package:wger/widgets/exercises/images.dart';
|
||||
@@ -56,7 +57,7 @@ class ExerciseListTile extends StatelessWidget {
|
||||
maxLines: 2,
|
||||
),
|
||||
subtitle: Text(
|
||||
'${exercise.category.name} / ${exercise.equipment.map((e) => e.name).toList().join(', ')}',
|
||||
'${getTranslation(exercise.category.name, context)} / ${exercise.equipment.map((e) => getTranslation(e.name, context)).toList().join(', ')}',
|
||||
),
|
||||
onTap: () {
|
||||
Navigator.pushNamed(context, ExerciseDetailScreen.routeName, arguments: exercise);
|
||||
|
||||
@@ -25,6 +25,7 @@ import 'package:provider/provider.dart';
|
||||
import 'package:wger/exceptions/http_exception.dart';
|
||||
import 'package:wger/helpers/consts.dart';
|
||||
import 'package:wger/helpers/gym_mode.dart';
|
||||
import 'package:wger/helpers/i18n.dart';
|
||||
import 'package:wger/helpers/json.dart';
|
||||
import 'package:wger/helpers/misc.dart';
|
||||
import 'package:wger/helpers/ui.dart';
|
||||
@@ -682,13 +683,13 @@ class ExerciseOverview extends StatelessWidget {
|
||||
padding: const EdgeInsets.symmetric(horizontal: 15),
|
||||
children: [
|
||||
Text(
|
||||
_exercise.category.name,
|
||||
getTranslation(_exercise.category.name, context),
|
||||
style: Theme.of(context).textTheme.headline6,
|
||||
textAlign: TextAlign.center,
|
||||
),
|
||||
..._exercise.equipment
|
||||
.map((e) => Text(
|
||||
e.name,
|
||||
getTranslation(e.name, context),
|
||||
style: Theme.of(context).textTheme.headline6,
|
||||
textAlign: TextAlign.center,
|
||||
))
|
||||
|
||||
Reference in New Issue
Block a user