fix(receipt-import): show create-product errors in modal dialog
This commit is contained in:
@@ -363,23 +363,17 @@ class _EditDialogState extends State<_EditDialog> {
|
||||
if (_entryMode == _ProductEntryMode.create) {
|
||||
final trimmedName = _newProductNameCtrl.text.trim();
|
||||
if (trimmedName.isEmpty) {
|
||||
ScaffoldMessenger.of(context).showSnackBar(
|
||||
const SnackBar(content: Text('Ange ett produktnamn först.')),
|
||||
);
|
||||
showGlobalErrorDialog(context, 'Ange ett produktnamn först.');
|
||||
return;
|
||||
}
|
||||
|
||||
if (_newCategoryId == null) {
|
||||
ScaffoldMessenger.of(context).showSnackBar(
|
||||
const SnackBar(content: Text('Välj kategori innan du skapar produkten.')),
|
||||
);
|
||||
showGlobalErrorDialog(context, 'Välj kategori innan du skapar produkten.');
|
||||
return;
|
||||
}
|
||||
|
||||
if (widget.onCreate == null) {
|
||||
ScaffoldMessenger.of(context).showSnackBar(
|
||||
const SnackBar(content: Text('Produktskapande är inte tillgängligt i den här vyn.')),
|
||||
);
|
||||
showGlobalErrorDialog(context, 'Produktskapande är inte tillgängligt i den här vyn.');
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -391,11 +385,7 @@ class _EditDialogState extends State<_EditDialog> {
|
||||
);
|
||||
if (newProduct == null || !mounted) {
|
||||
if (mounted) {
|
||||
ScaffoldMessenger.of(context).showSnackBar(
|
||||
const SnackBar(
|
||||
content: Text('Kunde inte skapa produkten. Försök igen.'),
|
||||
),
|
||||
);
|
||||
showGlobalErrorDialog(context, 'Kunde inte skapa produkten. Försök igen.');
|
||||
}
|
||||
return;
|
||||
}
|
||||
@@ -409,24 +399,17 @@ class _EditDialogState extends State<_EditDialog> {
|
||||
_productCategorySource = _newCategorySource ?? CategorySelectionSource.manual;
|
||||
} on ApiException catch (e) {
|
||||
if (mounted) {
|
||||
ScaffoldMessenger.of(context).showSnackBar(
|
||||
SnackBar(
|
||||
content: Text(
|
||||
showGlobalErrorDialog(
|
||||
context,
|
||||
e.message.trim().isEmpty
|
||||
? 'Kunde inte skapa produkten. Försök igen.'
|
||||
: e.message,
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
return;
|
||||
} catch (_) {
|
||||
if (mounted) {
|
||||
ScaffoldMessenger.of(context).showSnackBar(
|
||||
const SnackBar(
|
||||
content: Text('Kunde inte skapa produkten. Försök igen.'),
|
||||
),
|
||||
);
|
||||
showGlobalErrorDialog(context, 'Kunde inte skapa produkten. Försök igen.');
|
||||
}
|
||||
return;
|
||||
} finally {
|
||||
|
||||
Reference in New Issue
Block a user