Fix images on languages update + add Beacon handling

This commit is contained in:
Fransolet Thomas 2022-12-27 22:46:42 +01:00
parent 509d7b6adf
commit 21b38052cc
2 changed files with 58 additions and 9 deletions

View File

@ -128,6 +128,23 @@ getTranslations(BuildContext context, AppContext appContext, ImageDTO imageDTO,
List<Widget> translations = <Widget>[];
ManagerAppContext managerAppContext = appContext.getContext();
for(var language in managerAppContext.selectedConfiguration.languages) {
if(imageDTO.title.where((element) => element.language == language).length == 0) {
imageDTO.title = <TranslationDTO>[];
var translationTitleDTO = new TranslationDTO();
translationTitleDTO.language = language;
translationTitleDTO.value = "";
imageDTO.title.add(translationTitleDTO);
}
if(imageDTO.description.where((element) => element.language == language).length == 0) {
imageDTO.description = <TranslationDTO>[];
var translationDescriptionDTO = new TranslationDTO();
translationDescriptionDTO.language = language;
translationDescriptionDTO.value = "";
imageDTO.description.add(translationDescriptionDTO);
}
translations.add(
Padding(
padding: const EdgeInsets.all(8.0),

View File

@ -1,5 +1,5 @@
import 'package:flutter/material.dart';
import 'package:manager_app/Components/audio_input_container.dart';
import 'package:manager_app/Components/check_input_container.dart';
import 'package:manager_app/Components/confirmation_dialog.dart';
import 'package:manager_app/Components/fetch_section_icon.dart';
import 'package:manager_app/Components/image_input_container.dart';
@ -149,14 +149,46 @@ class _SectionDetailScreenState extends State<SectionDetailScreen> {
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: [
if(sectionDTO.type == SectionType.Article)
Container(
width: size.width *0.1,
height: 125,
child: QrImage(
data: sectionDTO.id,
version: QrVersions.auto,
size: 50.0,
),
Column(
mainAxisAlignment: MainAxisAlignment.spaceAround,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Container(
width: size.width *0.1,
height: 125,
child: QrImage(
padding: EdgeInsets.only(left: 0.0, top: 5.0, bottom: 5.0),
data: sectionDTO.id,
version: QrVersions.auto,
size: 50.0,
),
),
SelectableText(sectionDTO.id, style: new TextStyle(fontSize: 15))
],
),
CheckInputContainer(
label: "Beacon :",
isChecked: sectionDTO.isBeacon,
fontSize: 25,
onChanged: (value) {
setState(() {
sectionDTO.isBeacon = value;
save(true, sectionDTO, appContext);
});
},
),
if(sectionDTO.isBeacon)
StringInputContainer(
label: "Identifiant Beacon :",
initialValue: sectionDTO != null ? sectionDTO.beaconId : "",
onChanged: (value) {
sectionDTO.beaconId = value;
},
),
],
),
Column(
mainAxisAlignment: MainAxisAlignment.spaceAround,