diff --git a/lib/ProductOpener/KnowledgePanels.pm b/lib/ProductOpener/KnowledgePanels.pm
index 6b4affdb8f414..edf7681387c5d 100644
--- a/lib/ProductOpener/KnowledgePanels.pm
+++ b/lib/ProductOpener/KnowledgePanels.pm
@@ -197,15 +197,24 @@ sub create_knowledge_panels ($product_ref, $target_lc, $target_cc, $options_ref)
create_health_card_panel($product_ref, $target_lc, $target_cc, $options_ref);
create_environment_card_panel($product_ref, $target_lc, $target_cc, $options_ref);
- create_report_problem_card_panel($product_ref, $target_lc, $target_cc, $options_ref);
+ my $has_report_problem_card;
+ if (not $options_ref->{producers_platform}) {
+ $has_report_problem_card = create_report_problem_card_panel($product_ref, $target_lc, $target_cc, $options_ref);
+ }
my $has_contribution_card = create_contribution_card_panel($product_ref, $target_lc, $target_cc, $options_ref);
# Create the root panel that contains the panels we want to show directly on the product page
create_panel_from_json_template(
"root",
"api/knowledge-panels/root.tt.json",
- {has_contribution_card => $has_contribution_card},
- $product_ref, $target_lc, $target_cc, $options_ref
+ {
+ has_report_problem_card => $has_report_problem_card,
+ has_contribution_card => $has_contribution_card
+ },
+ $product_ref,
+ $target_lc,
+ $target_cc,
+ $options_ref
);
return;
}
diff --git a/lib/ProductOpener/KnowledgePanelsReportProblem.pm b/lib/ProductOpener/KnowledgePanelsReportProblem.pm
index 75ce17b8abcb5..e9e9884bff7ff 100644
--- a/lib/ProductOpener/KnowledgePanelsReportProblem.pm
+++ b/lib/ProductOpener/KnowledgePanelsReportProblem.pm
@@ -81,7 +81,6 @@ sub create_report_problem_card_panel ($product_ref, $target_lc, $target_cc, $opt
$log->debug("create contribution card panel", {code => $product_ref->{code}}) if $log->is_debug();
my @panels = ();
- my $panel_data_ref = {};
# TODO: add a panel to display the consumer service contact information if we have it
# for the owner of the product. Otherwise, warn that we don't make or sell the product
@@ -92,7 +91,7 @@ sub create_report_problem_card_panel ($product_ref, $target_lc, $target_cc, $opt
create_panel_from_json_template(
"incomplete_or_incorrect_data",
"api/knowledge-panels/report_problem/incomplete_or_incorrect_data.tt.json",
- $panel_data_ref, $product_ref, $target_lc, $target_cc, $options_ref
+ {}, $product_ref, $target_lc, $target_cc, $options_ref
);
push(@panels, "incomplete_or_incorrect_data");
@@ -107,7 +106,7 @@ sub create_report_problem_card_panel ($product_ref, $target_lc, $target_cc, $opt
create_panel_from_json_template(
"fr_report_product_signalconso",
"api/knowledge-panels/report_problem/fr_report_product_signalconso.tt.json",
- $panel_data_ref, $product_ref, $target_lc, $target_cc, $options_ref
+ {}, $product_ref, $target_lc, $target_cc, $options_ref
);
push(@panels, "fr_report_product_signalconso");
}
@@ -117,7 +116,7 @@ sub create_report_problem_card_panel ($product_ref, $target_lc, $target_cc, $opt
"api/knowledge-panels/report_problem/report_problem_card.tt.json",
$panel_data_ref, $product_ref, $target_lc, $target_cc, $options_ref);
- return;
+ return 1;
}
1;
diff --git a/templates/api/knowledge-panels/report_problem/fr_report_product_signalconso.tt.json b/templates/api/knowledge-panels/report_problem/fr_report_product_signalconso.tt.json
index def790d4b53b5..1f71da2273b7b 100644
--- a/templates/api/knowledge-panels/report_problem/fr_report_product_signalconso.tt.json
+++ b/templates/api/knowledge-panels/report_problem/fr_report_product_signalconso.tt.json
@@ -17,8 +17,8 @@
"html": `
Vous avez rencontré un problème avec ce produit : étiquetage non conforme, produit périmé encore en vente,
présence d'un corps étranger, etc. ?
-Faites un signalement à l'entreprise et à la répression des fraudes sur SignalConso, un outil de la
-Direction générale de la concurrence, de la consommation et de la répression des fraudes (DGCCRF).
+Faites un signalement à l'entreprise et à la répression des fraudes sur SignalConso,
+un outil de la Direction générale de la concurrence, de la consommation et de la répression des fraudes (DGCCRF).
`
},
},
diff --git a/templates/api/knowledge-panels/root.tt.json b/templates/api/knowledge-panels/root.tt.json
index e17e24d623071..6a70100975474 100644
--- a/templates/api/knowledge-panels/root.tt.json
+++ b/templates/api/knowledge-panels/root.tt.json
@@ -14,12 +14,14 @@
"panel_id": "environment_card",
},
},
+ [% IF panel.has_report_problem_card %]
{
"element_type": "panel",
"panel_element": {
"panel_id": "report_problem_card",
},
- },
+ },
+ [% END %]
[% IF panel.has_contribution_card %]
{
"element_type": "panel",
diff --git a/templates/web/pages/product/product_page.tt.html b/templates/web/pages/product/product_page.tt.html
index 5c20fcc2e0458..79a04128341ee 100755
--- a/templates/web/pages/product/product_page.tt.html
+++ b/templates/web/pages/product/product_page.tt.html
@@ -230,9 +230,6 @@