diff --git a/streetup/interventions/tests/test_giep.py b/streetup/interventions/tests/test_giep.py
index 6bb2ccc..d02abb6 100644
--- a/streetup/interventions/tests/test_giep.py
+++ b/streetup/interventions/tests/test_giep.py
@@ -22,11 +22,15 @@ class GIEPAssetsAJAXTests(TestCase):
$function$
""")
+ from common.models import Thematic, UserThematics
+ self.water_thematic, _ = Thematic.objects.get_or_create(code='water', defaults={'name_fr': 'Eau', 'name_nl': 'Water'})
User = get_user_model()
- self.user = User.objects.create_user(username='giepadmin', password='pwd')
+ self.user = User.objects.create_user(username='giepadmin', password='pwd', is_superuser=True)
self.role_admin, _ = Role.objects.get_or_create(name='admin')
self.user_config = UserConfig.objects.create(user=self.user, is_intern=True)
self.user_config.roles.add(self.role_admin)
+ UserThematics.objects.get_or_create(user_config=self.user_config, thematic=self.water_thematic, defaults={'can_edit_assets': True})
+ self.client.force_login(self.user)
# Create correct geospatial polygon geometries by transforming to SRID 3812
geom1 = Polygon(((4.3570, 50.8475), (4.3570, 50.8479), (4.3574, 50.8479), (4.3574, 50.8475), (4.3570, 50.8475)), srid=4326)
diff --git a/streetup/locale/en/LC_MESSAGES/django.mo b/streetup/locale/en/LC_MESSAGES/django.mo
index b29d45e..e8be450 100644
Binary files a/streetup/locale/en/LC_MESSAGES/django.mo and b/streetup/locale/en/LC_MESSAGES/django.mo differ
diff --git a/streetup/locale/en/LC_MESSAGES/django.po b/streetup/locale/en/LC_MESSAGES/django.po
index aac7736..9df1b80 100644
--- a/streetup/locale/en/LC_MESSAGES/django.po
+++ b/streetup/locale/en/LC_MESSAGES/django.po
@@ -1321,7 +1321,7 @@ msgstr "Assets"
#: templates/base.html:350
msgid "Observations"
-msgstr "Comments"
+msgstr "Observations"
#: templates/base.html:355
msgid "Interventions"
diff --git a/streetup/messages.mo b/streetup/messages.mo
index 59666c5..c2355c7 100644
Binary files a/streetup/messages.mo and b/streetup/messages.mo differ
diff --git a/streetup/mobile/locale/en/LC_MESSAGES/django.mo b/streetup/mobile/locale/en/LC_MESSAGES/django.mo
index ac4f6fd..1b299d7 100644
Binary files a/streetup/mobile/locale/en/LC_MESSAGES/django.mo and b/streetup/mobile/locale/en/LC_MESSAGES/django.mo differ
diff --git a/streetup/mobile/locale/en/LC_MESSAGES/django.po b/streetup/mobile/locale/en/LC_MESSAGES/django.po
index 1381e82..67daf29 100644
--- a/streetup/mobile/locale/en/LC_MESSAGES/django.po
+++ b/streetup/mobile/locale/en/LC_MESSAGES/django.po
@@ -135,11 +135,11 @@ msgstr "Snap"
#: mobile/templates/mobile/green_surfaces_edit_v2.html:990
msgid "Aimantage activé"
-msgstr "Aimantage enabled"
+msgstr "Snapping enabled"
#: mobile/templates/mobile/green_surfaces_edit_v2.html:991
msgid "Aimantage désactivé"
-msgstr "Aimantage disabled"
+msgstr "Snapping disabled"
#: mobile/templates/mobile/green_surfaces_edit_v2.html:992
msgid "Découper un polygone"
@@ -249,7 +249,7 @@ msgstr "New items"
#: mobile/templates/mobile/mobile_index.html:18
msgid "Nouvelle observation"
-msgstr "Observations"
+msgstr "New observation"
#: mobile/templates/mobile/mobile_index.html:25
msgid "Nouvelle inspection"
@@ -257,11 +257,11 @@ msgstr "New inspection"
#: mobile/templates/mobile/mobile_index.html:32
msgid "Intervention Réparation"
-msgstr "Interventions"
+msgstr "Repair intervention"
#: mobile/templates/mobile/mobile_index.html:39
msgid "Nouvelle intervention"
-msgstr "Interventions"
+msgstr "New intervention"
#: mobile/templates/mobile/mobile_index.html:54
msgid "Interventions"
@@ -289,7 +289,7 @@ msgstr "Track project status"
#: mobile/templates/mobile/mobile_index.html:89
msgid "Observations"
-msgstr "Comments"
+msgstr "Observations"
#: mobile/templates/mobile/mobile_index.html:90
msgid "Consulter et ajouter des observations terrain"
@@ -466,7 +466,7 @@ msgstr "QR Code not recognized."
#: mobile/templates/mobile/qr_scanner.html:213
msgid "Erreur lors de la résolution."
-msgstr "Error deleting items"
+msgstr "Error resolving QR code."
#: mobile/views.py:265
msgid "Format de QR Code invalide."
@@ -475,7 +475,7 @@ msgstr "Invalid QR Code format."
#: mobile/views.py:278
#, python-brace-format
msgid "Produit « {identifier} » introuvable."
-msgstr "Produit « {identifier} » introuvable."
+msgstr "Product \"{identifier}\" not found."
#: mobile/views.py:289
msgid "Commande introuvable."
@@ -484,17 +484,17 @@ msgstr "Order not found."
#: mobile/views.py:299
#, python-brace-format
msgid "Article tracé « {identifier} » introuvable."
-msgstr "Article tracé « {identifier} » introuvable."
+msgstr "Tracked item \"{identifier}\" not found."
#: mobile/views.py:310
#, python-brace-format
msgid "Emplacement « {identifier} » introuvable."
-msgstr "Emplacement « {identifier} » introuvable."
+msgstr "Location \"{identifier}\" not found."
#: mobile/views.py:320
#, python-brace-format
msgid "Bon de préparation « {identifier} » introuvable."
-msgstr "Bon de préparation « {identifier} » introuvable."
+msgstr "Preparation order \"{identifier}\" not found."
#: mobile/views.py:321
#, python-brace-format
@@ -503,7 +503,7 @@ msgstr "Unknown QR code type: {qr_type}."
#: mobile/views.py:432
msgid "A traiter"
-msgstr "To be treated"
+msgstr "To process"
#: mobile/views.py:433
msgid "En attente"
@@ -511,11 +511,11 @@ msgstr "On hold"
#: mobile/views.py:434
msgid "Traité"
-msgstr "Treaty"
+msgstr "Processed"
#: mobile/views.py:435
msgid "Annulé"
-msgstr "Cancel"
+msgstr "Cancelled"
#: mobile/views.py:438
msgid "Urgent"
@@ -523,7 +523,7 @@ msgstr "Urgent"
#: mobile/views.py:439
msgid "Elevé"
-msgstr "Pupil"
+msgstr "High"
#: mobile/views.py:440
msgid "Normal"
@@ -531,7 +531,7 @@ msgstr "Normal"
#: mobile/views.py:441
msgid "Bas"
-msgstr "Down"
+msgstr "Low"
#: mobile/views.py:591
msgid "Vous n'avez pas la permission d'accéder à cette page."
@@ -561,7 +561,7 @@ msgstr "Signature registered successfully."
#: mobile/views.py:831
msgid "Veuillez sélectionner un emplacement."
-msgstr "Please select a template"
+msgstr "Please select a location."
#: mobile/views.py:838
msgid "Emplacement invalide ou non accessible."
@@ -569,7 +569,7 @@ msgstr "Invalid or inaccessible location."
#: mobile/views.py:859
msgid "Inventaire créé avec succès."
-msgstr "Polygon cut successfully"
+msgstr "Inventory created successfully."
#: mobile/views.py:960
msgid "Document(s) ajouté(s) avec succès."
diff --git a/streetup/mobile/locale/nl/LC_MESSAGES/django.mo b/streetup/mobile/locale/nl/LC_MESSAGES/django.mo
index 6d665aa..a011206 100644
Binary files a/streetup/mobile/locale/nl/LC_MESSAGES/django.mo and b/streetup/mobile/locale/nl/LC_MESSAGES/django.mo differ
diff --git a/streetup/mobile/locale/nl/LC_MESSAGES/django.po b/streetup/mobile/locale/nl/LC_MESSAGES/django.po
index a8d524c..cef7923 100644
--- a/streetup/mobile/locale/nl/LC_MESSAGES/django.po
+++ b/streetup/mobile/locale/nl/LC_MESSAGES/django.po
@@ -252,7 +252,7 @@ msgstr "Nieuwe artikelen"
#: mobile/templates/mobile/mobile_index.html:18
msgid "Nouvelle observation"
-msgstr "Observaties"
+msgstr "Nieuwe observatie"
#: mobile/templates/mobile/mobile_index.html:25
msgid "Nouvelle inspection"
@@ -260,11 +260,11 @@ msgstr "Nieuwe keuring"
#: mobile/templates/mobile/mobile_index.html:32
msgid "Intervention Réparation"
-msgstr "Interventies"
+msgstr "Reparatie-interventie"
#: mobile/templates/mobile/mobile_index.html:39
msgid "Nouvelle intervention"
-msgstr "Interventies"
+msgstr "Nieuwe interventie"
#: mobile/templates/mobile/mobile_index.html:54
msgid "Interventions"
@@ -471,7 +471,7 @@ msgstr "QR-code niet herkend."
#: mobile/templates/mobile/qr_scanner.html:213
msgid "Erreur lors de la résolution."
-msgstr "Fout bij het verwijderen"
+msgstr "Fout bij het verwerken van de QR-code."
#: mobile/views.py:265
msgid "Format de QR Code invalide."
@@ -480,7 +480,7 @@ msgstr "Ongeldig QR-codeformaat."
#: mobile/views.py:278
#, python-brace-format
msgid "Produit « {identifier} » introuvable."
-msgstr "Produit « {identifier} » introuvable."
+msgstr "Product \"{identifier}\" niet gevonden."
#: mobile/views.py:289
msgid "Commande introuvable."
@@ -489,17 +489,17 @@ msgstr "Bestelling niet gevonden."
#: mobile/views.py:299
#, python-brace-format
msgid "Article tracé « {identifier} » introuvable."
-msgstr "Article tracé « {identifier} » introuvable."
+msgstr "Gevolgde artikel \"{identifier}\" niet gevonden."
#: mobile/views.py:310
#, python-brace-format
msgid "Emplacement « {identifier} » introuvable."
-msgstr "Emplacement « {identifier} » introuvable."
+msgstr "Locatie \"{identifier}\" niet gevonden."
#: mobile/views.py:320
#, python-brace-format
msgid "Bon de préparation « {identifier} » introuvable."
-msgstr "Bon de préparation « {identifier} » introuvable."
+msgstr "Voorbereidingsbon \"{identifier}\" niet gevonden."
#: mobile/views.py:321
#, python-brace-format
@@ -508,19 +508,19 @@ msgstr "Onbekend QR-codetype: {qr_type}."
#: mobile/views.py:432
msgid "A traiter"
-msgstr "Te behandelen"
+msgstr "Te verwerken"
#: mobile/views.py:433
msgid "En attente"
-msgstr "In de wacht"
+msgstr "In afwachting"
#: mobile/views.py:434
msgid "Traité"
-msgstr "Verdrag"
+msgstr "Verwerkt"
#: mobile/views.py:435
msgid "Annulé"
-msgstr "Annuleren"
+msgstr "Geannuleerd"
#: mobile/views.py:438
msgid "Urgent"
@@ -528,7 +528,7 @@ msgstr "Dringend"
#: mobile/views.py:439
msgid "Elevé"
-msgstr "Leerling"
+msgstr "Hoog"
#: mobile/views.py:440
msgid "Normal"
@@ -536,7 +536,7 @@ msgstr "Normaal"
#: mobile/views.py:441
msgid "Bas"
-msgstr "Omlaag"
+msgstr "Laag"
#: mobile/views.py:591
msgid "Vous n'avez pas la permission d'accéder à cette page."
@@ -566,7 +566,7 @@ msgstr "Handtekening succesvol geregistreerd."
#: mobile/views.py:831
msgid "Veuillez sélectionner un emplacement."
-msgstr "Selecteer een model"
+msgstr "Selecteer een locatie."
#: mobile/views.py:838
msgid "Emplacement invalide ou non accessible."
@@ -574,7 +574,7 @@ msgstr "Ongeldige of ontoegankelijke locatie."
#: mobile/views.py:859
msgid "Inventaire créé avec succès."
-msgstr "Polygoon succesvol geknipt"
+msgstr "Inventaris succesvol aangemaakt."
#: mobile/views.py:960
msgid "Document(s) ajouté(s) avec succès."
diff --git a/streetup/observations/locale/en/LC_MESSAGES/django.mo b/streetup/observations/locale/en/LC_MESSAGES/django.mo
index af2ab26..61b6ab5 100644
Binary files a/streetup/observations/locale/en/LC_MESSAGES/django.mo and b/streetup/observations/locale/en/LC_MESSAGES/django.mo differ
diff --git a/streetup/observations/locale/en/LC_MESSAGES/django.po b/streetup/observations/locale/en/LC_MESSAGES/django.po
index b8a1c39..82c8a61 100644
--- a/streetup/observations/locale/en/LC_MESSAGES/django.po
+++ b/streetup/observations/locale/en/LC_MESSAGES/django.po
@@ -1058,12 +1058,12 @@ msgid "Autorisations → Appareil photo → Autoriser"
msgstr "Permissions → Camera → Allow"
#: observations/templates/observations/observation_form.html:3019
-msgid "Revenez dans l\'application et réessayez."
+msgid "Revenez dans l'application et réessayez."
msgstr "Return to the application and try again."
#: observations/templates/observations/observation_form.html:3022
msgid ""
-"La permission caméra a été refusée. Veuillez l\'autoriser dans les "
+"La permission caméra a été refusée. Veuillez l'autoriser dans les "
"paramètres de votre navigateur, puis rechargez la page."
msgstr ""
"Camera permission was denied. Please allow it in your browser "
@@ -1071,12 +1071,12 @@ msgstr ""
#: observations/templates/observations/observation_form.html:3024
msgid ""
-"Impossible d\'accéder à la caméra. Veuillez vérifier les autorisations."
+"Impossible d'accéder à la caméra. Veuillez vérifier les autorisations."
msgstr ""
"Cannot access the camera. Please check permissions."
#: observations/templates/observations/observation_form.html:3031
-msgid "La caméra avancée n\'est pas supportée sur ce navigateur."
+msgid "La caméra avancée n'est pas supportée sur ce navigateur."
msgstr "Advanced camera is not supported on this browser."
#: observations/templates/observations/observation_form.html:3041
@@ -1092,11 +1092,11 @@ msgid "Caméra prête. Appuyez sur Capturer pour prendre une photo."
msgstr "Camera ready. Press Capture to take a photo."
#: observations/templates/observations/observation_form.html:3075
-msgid "Impossible d\'accéder à la caméra."
+msgid "Impossible d'accéder à la caméra."
msgstr "Cannot access the camera."
#: observations/templates/observations/observation_form.html:3097
-msgid "La vidéo n\'est pas encore prête."
+msgid "La vidéo n'est pas encore prête."
msgstr "Video is not ready yet."
#: observations/templates/observations/observation_form.html:3109
@@ -1222,7 +1222,7 @@ msgstr "Search"
#: observations/templates/observations/observations_index_mobile.html:306
#: observations/views.py:570
msgid "Observations"
-msgstr "Comments"
+msgstr "Observations"
#: observations/templates/observations/observations_index.html:374
msgid "Aucune observation chargée"
diff --git a/streetup/observations/locale/nl/LC_MESSAGES/django.mo b/streetup/observations/locale/nl/LC_MESSAGES/django.mo
index 5c7ed93..c2355c7 100644
Binary files a/streetup/observations/locale/nl/LC_MESSAGES/django.mo and b/streetup/observations/locale/nl/LC_MESSAGES/django.mo differ
diff --git a/streetup/observations/locale/nl/LC_MESSAGES/django.po b/streetup/observations/locale/nl/LC_MESSAGES/django.po
index 050a132..a147420 100644
--- a/streetup/observations/locale/nl/LC_MESSAGES/django.po
+++ b/streetup/observations/locale/nl/LC_MESSAGES/django.po
@@ -1063,12 +1063,12 @@ msgid "Autorisations → Appareil photo → Autoriser"
msgstr "Machtigingen → Camera → Toestaan"
#: observations/templates/observations/observation_form.html:3019
-msgid "Revenez dans l\'application et réessayez."
+msgid "Revenez dans l'application et réessayez."
msgstr "Keer terug naar de app en probeer het opnieuw."
#: observations/templates/observations/observation_form.html:3022
msgid ""
-"La permission caméra a été refusée. Veuillez l\'autoriser dans les "
+"La permission caméra a été refusée. Veuillez l'autoriser dans les "
"paramètres de votre navigateur, puis rechargez la page."
msgstr ""
"Cameratoestemming is geweigerd. Geef toestemming in uw "
@@ -1076,12 +1076,12 @@ msgstr ""
#: observations/templates/observations/observation_form.html:3024
msgid ""
-"Impossible d\'accéder à la caméra. Veuillez vérifier les autorisations."
+"Impossible d'accéder à la caméra. Veuillez vérifier les autorisations."
msgstr ""
"Geen toegang tot de camera. Controleer de machtigingen."
#: observations/templates/observations/observation_form.html:3031
-msgid "La caméra avancée n\'est pas supportée sur ce navigateur."
+msgid "La caméra avancée n'est pas supportée sur ce navigateur."
msgstr "De geavanceerde camera wordt niet ondersteund in deze browser."
#: observations/templates/observations/observation_form.html:3041
@@ -1097,11 +1097,11 @@ msgid "Caméra prête. Appuyez sur Capturer pour prendre une photo."
msgstr "Camera gereed. Druk op Opnemen om een foto te maken."
#: observations/templates/observations/observation_form.html:3075
-msgid "Impossible d\'accéder à la caméra."
+msgid "Impossible d'accéder à la caméra."
msgstr "Geen toegang tot de camera."
#: observations/templates/observations/observation_form.html:3097
-msgid "La vidéo n\'est pas encore prête."
+msgid "La vidéo n'est pas encore prête."
msgstr "De video is nog niet gereed."
#: observations/templates/observations/observation_form.html:3109
diff --git a/streetup/observations/templates/observations/_observations_list_mobile.html b/streetup/observations/templates/observations/_observations_list_mobile.html
index da2c897..9c0510d 100644
--- a/streetup/observations/templates/observations/_observations_list_mobile.html
+++ b/streetup/observations/templates/observations/_observations_list_mobile.html
@@ -46,53 +46,53 @@
{% if observation.observation_type == 'incident' %}
- Incident
+ {% translate "Incident" %}
{% elif observation.observation_type == 'inventory' %}
- Inventaire
+ {% translate "Inventaire" %}
{% elif observation.observation_type == 'remark' %}
- Remarque
+ {% translate "Remarque" %}
{% endif %}
{% if observation.status == 'in_preparation' %}
- En préparation
+ {% translate "En préparation" %}
{% elif observation.status == 'to_process' %}
- À traiter
+ {% translate "À traiter" %}
{% elif observation.status == 'in_progress' %}
- En cours
+ {% translate "En cours" %}
{% elif observation.status == 'processed' %}
- Traité
+ {% translate "Traité" %}
{% elif observation.status == 'not_relevant' %}
- Non relevant
+ {% translate "Non relevant" %}
{% elif observation.status == 'to_redirect' %}
- À rediriger
+ {% translate "À rediriger" %}
{% elif observation.status == 'duplicate' %}
- Doublon
+ {% translate "Doublon" %}
{% elif observation.status == 'closed' %}
- Clôturé
+ {% translate "Clôturé" %}
{% elif observation.status == 'archived' %}
- Archivé
+ {% translate "Archivé" %}
{% endif %}
diff --git a/streetup/observations/tests.py b/streetup/observations/tests.py
index 95c8300..0caf70e 100644
--- a/streetup/observations/tests.py
+++ b/streetup/observations/tests.py
@@ -499,7 +499,7 @@ class ObservationPermissionTests(TestCase):
detail_url = reverse("observations:observation_detail", args=[obs.id])
response = self.client.get(detail_url)
self.assertEqual(response.status_code, 200)
- self.assertContains(response, "Une intervention liée à cette observation a été annulée")
+ self.assertContains(response, _("Une intervention liée à cette observation a été annulée"))
self.assertContains(response, "INT-TEST-CANCEL")
def test_no_auto_intervention_loop_on_cancellation(self):
diff --git a/streetup/reporting/locale/en/LC_MESSAGES/django.mo b/streetup/reporting/locale/en/LC_MESSAGES/django.mo
index cd64dc9..27f87d7 100644
Binary files a/streetup/reporting/locale/en/LC_MESSAGES/django.mo and b/streetup/reporting/locale/en/LC_MESSAGES/django.mo differ
diff --git a/streetup/reporting/locale/en/LC_MESSAGES/django.po b/streetup/reporting/locale/en/LC_MESSAGES/django.po
index 8e42861..b8f1d02 100644
--- a/streetup/reporting/locale/en/LC_MESSAGES/django.po
+++ b/streetup/reporting/locale/en/LC_MESSAGES/django.po
@@ -61,7 +61,7 @@ msgstr "Interventions"
#: reporting/templates/reporting/base.html:44
#: reporting/templates/reporting/base.html:47
msgid "Observations"
-msgstr "Interventions"
+msgstr "Observations"
#: reporting/templates/reporting/base.html:58
#: reporting/templates/reporting/base.html:59
diff --git a/streetup/stock/locale/en/LC_MESSAGES/django.mo b/streetup/stock/locale/en/LC_MESSAGES/django.mo
index 272f9a5..16a7a97 100644
Binary files a/streetup/stock/locale/en/LC_MESSAGES/django.mo and b/streetup/stock/locale/en/LC_MESSAGES/django.mo differ
diff --git a/streetup/stock/locale/en/LC_MESSAGES/django.po b/streetup/stock/locale/en/LC_MESSAGES/django.po
index ee11fc5..bf162c6 100644
--- a/streetup/stock/locale/en/LC_MESSAGES/django.po
+++ b/streetup/stock/locale/en/LC_MESSAGES/django.po
@@ -2953,7 +2953,7 @@ msgstr "Are you sure you want to cancel this crafting voucher? This action is ir
#: stock/templates/stock/mobile/stock_production_order_detail_mobile.html:299
#: stock/templates/stock/preparation_order_detail.html:1090
#: stock/templates/stock/production_order_detail.html:374
-msgid "Erreur lors de l\'envoi."
+msgid "Erreur lors de l'envoi."
msgstr "Error sending."
#: stock/templates/stock/mobile/stock_production_order_detail_mobile.html:308
@@ -3881,7 +3881,13 @@ msgid ""
"opérations de stock ou d'intervention, mais restera accessible dans "
"l'historique.\n"
" "
-msgstr "\n Are you sure you want to make the product %(name)s inactive?\n It will no longer be visible for new stock or intervention operations, but will remain accessible in the history.\n"
+msgstr ""
+"\n"
+" Are you sure you want to make the product %(name)s "
+"inactive?\n"
+" It will no longer be visible for new stock or intervention operations, but "
+"will remain accessible in the history.\n"
+" "
#: stock/templates/stock/product_detail.html:63
#: stock/templates/stock/serialized_item_detail.html:54
@@ -4008,7 +4014,7 @@ msgid "Cr�er le premier"
msgstr "Create the first"
#: stock/templates/stock/production_order_detail.html:61
-msgid "Confirmer l\'annulation ?"
+msgid "Confirmer l'annulation ?"
msgstr "Confirm cancellation?"
#: stock/templates/stock/production_order_detail.html:135
@@ -4292,7 +4298,12 @@ msgid ""
" Il ne sera plus visible pour les nouvelles opérations de "
"stock, mais restera accessible dans l'historique.\n"
" "
-msgstr "\n Are you sure you want to make the item %(sn)s inactive?\n It will no longer be visible for new stock transactions, but will remain accessible in the history.\n"
+msgstr ""
+"\n"
+" Are you sure you want to make the item %(sn)s inactive?\n"
+" It will no longer be visible for new stock transactions, but will remain "
+"accessible in the history.\n"
+" "
#: stock/templates/stock/serialized_item_detail.html:123
msgid "Ouvrir le QR code"
@@ -4628,7 +4639,11 @@ msgid ""
"%(name)s ?\n"
" Cette action est irréversible.\n"
" "
-msgstr "\nAre you sure you want to delete the location %(name)s?\n This action is irreversible.\n"
+msgstr ""
+"\n"
+"Are you sure you want to delete the location %(name)s?\n"
+" This action is irreversible.\n"
+" "
#: stock/templates/stock/warehouse_location_form.html:16
msgid "Modifier l'emplacement"
@@ -4748,14 +4763,17 @@ msgstr "Line %(n)s: source and destination locations required for a transfer."
msgid ""
"Ligne %(n)s : l'emplacement source '%(loc)s' n'est pas autorisé pour le "
"produit '%(prod)s'."
-msgstr "Line %(n)s: source location required for output."
+msgstr ""
+"Line %(n)s: source location '%(loc)s' is not allowed for product '%(prod)s'."
#: stock/views.py:1042
#, python-format
msgid ""
"Ligne %(n)s : l'emplacement de destination '%(loc)s' n'est pas autorisé pour "
"le produit '%(prod)s'."
-msgstr "Line %(n)s: destination location required for an entry."
+msgstr ""
+"Line %(n)s: destination location '%(loc)s' is not allowed for product "
+"'%(prod)s'."
#: stock/views.py:1045
#, python-format