{"id":3777,"date":"2026-09-15T10:37:05","date_gmt":"2026-09-15T10:37:05","guid":{"rendered":"https:\/\/pnin.ins.ne\/?page_id=3777"},"modified":"2026-09-15T10:37:05","modified_gmt":"2026-09-15T10:37:05","slug":"calculateur-nutritionnel-de-repas","status":"publish","type":"page","link":"https:\/\/pnin.ins.ne\/?page_id=3777","title":{"rendered":"Calculateur Nutritionnel de Repas"},"content":{"rendered":"    <div class=\"pnin-calc-wrapper\" id=\"pnin-meal-app\">\n        <!-- 1. Saisie des recettes du repas -->\n        <div class=\"pnin-panel\">\n            <h3>\ud83c\udf7d\ufe0f Composition du Repas (Multi-recettes)<\/h3>\n            <p>S\u00e9lectionnez des plats (recettes) ou des aliments simples et saisissez la quantit\u00e9 consomm\u00e9e pour afficher automatiquement leurs ingr\u00e9dients et le profil nutritionnel global.<\/p>\n            \n            <div class=\"pnin-table-responsive\">\n                <table class=\"pnin-table\">\n                    <thead>\n                        <tr>\n                            <th style=\"width: 60%;\">Aliment \/ Recette<\/th>\n                            <th style=\"width: 25%;\">Quantit\u00e9 (g)<\/th>\n                            <th style=\"width: 15%; text-align: center;\">Action<\/th>\n                        <\/tr>\n                    <\/thead>\n                    <tbody id=\"pnin-ingredients-list\"><\/tbody>\n                    <tfoot>\n                        <tr>\n                            <td><strong>Poids total consomm\u00e9 :<\/strong><\/td>\n                            <td colspan=\"2\"><strong id=\"pnin-total-weight\">0 g<\/strong><\/td>\n                        <\/tr>\n                    <\/tfoot>\n                <\/table>\n            <\/div>\n\n            <div style=\"margin-top: 14px; display: flex; gap: 10px;\">\n                <button type=\"button\" id=\"pnin-add-row-btn\" class=\"pnin-btn pnin-btn-add\">\u2795 Ajouter un plat<\/button>\n                <button type=\"button\" id=\"pnin-reset-btn\" class=\"pnin-btn pnin-btn-reset\">\ud83d\udd04 R\u00e9initialiser<\/button>\n            <\/div>\n        <\/div>\n\n        <!-- 2. Composition en ingr\u00e9dients des plats choisis -->\n        <div class=\"pnin-panel\" style=\"border-left: 4px solid #dd6b20;\">\n            <h4 style=\"margin-bottom: 6px;\">\ud83e\udd63 Composition en ingr\u00e9dients<\/h4>\n            <p style=\"font-size: 0.85rem; color: #718096; margin-top:0;\">De quoi est fait votre repas : les ingr\u00e9dients de chaque recette avec leur part, puis le total de tous les ingr\u00e9dients et ce que chacun apporte.<\/p>\n            <div id=\"pnin-ingredients-breakdown\"><\/div>\n        <\/div>\n\n        <!-- 3. Contr\u00f4le qualit\u00e9 expliqu\u00e9 simplement -->\n        <div class=\"pnin-panel\" style=\"border-left: 4px solid #3182ce;\">\n            <h4 style=\"margin-bottom: 6px;\">\ud83d\udee1\ufe0f Contr\u00f4le qualit\u00e9 : peut-on se fier \u00e0 ces chiffres ?<\/h4>\n            <p style=\"font-size: 0.85rem; color: #718096; margin-top:0;\">Trois v\u00e9rifications automatiques, expliqu\u00e9es simplement. Vert = tout va bien, orange = petite r\u00e9serve, rouge = \u00e0 v\u00e9rifier.<\/p>\n            <div id=\"pnin-consistency-verdict\" class=\"pnin-verdict-box\"><\/div>\n        <\/div>\n\n        <!-- 3. Vignettes KPI (\u00c9nergie, Macros, Fer, Vit A, Sodium, Sel, Iode) -->\n        <div class=\"pnin-kpi-grid\">\n            <div class=\"pnin-kpi-card\">\n                <span class=\"pnin-kpi-title\">\u00c9nergie<\/span>\n                <span class=\"pnin-kpi-num\" id=\"kpi-energie-kcal\">0 kcal<\/span>\n                <span class=\"pnin-kpi-sub\" id=\"kpi-energie-kj\">0 kJ<\/span>\n            <\/div>\n            <div class=\"pnin-kpi-card\">\n                <span class=\"pnin-kpi-title\">Prot\u00e9ines<\/span>\n                <span class=\"pnin-kpi-num\" id=\"kpi-proteines\">0 g<\/span>\n            <\/div>\n            <div class=\"pnin-kpi-card\">\n                <span class=\"pnin-kpi-title\">Lipides<\/span>\n                <span class=\"pnin-kpi-num\" id=\"kpi-lipides\">0 g<\/span>\n            <\/div>\n            <div class=\"pnin-kpi-card\">\n                <span class=\"pnin-kpi-title\">Glucides<\/span>\n                <span class=\"pnin-kpi-num\" id=\"kpi-glucides\">0 g<\/span>\n            <\/div>\n            <div class=\"pnin-kpi-card\">\n                <span class=\"pnin-kpi-title\">Fer<\/span>\n                <span class=\"pnin-kpi-num\" id=\"kpi-fer\">0 mg<\/span>\n            <\/div>\n            <div class=\"pnin-kpi-card\">\n                <span class=\"pnin-kpi-title\">Vitamine A (RAE)<\/span>\n                <span class=\"pnin-kpi-num\" id=\"kpi-vita\">0 \u00b5g<\/span>\n            <\/div>\n            <div class=\"pnin-kpi-card\" style=\"border-top-color: #d69e2e;\">\n                <span class=\"pnin-kpi-title\">Sodium<\/span>\n                <span class=\"pnin-kpi-num\" id=\"kpi-sodium\">0 mg<\/span>\n            <\/div>\n            <div class=\"pnin-kpi-card\" style=\"border-top-color: #e53e3e;\">\n                <span class=\"pnin-kpi-title\">\u00c9quiv. Sel (NaCl)<\/span>\n                <span class=\"pnin-kpi-num\" id=\"kpi-sel\">0 g<\/span>\n                <span class=\"pnin-kpi-sub\">Rep\u00e8re OMS &lt; 5 g\/j<\/span>\n            <\/div>\n            <div class=\"pnin-kpi-card\" style=\"border-top-color: #805ad5;\">\n                <span class=\"pnin-kpi-title\">Iode<\/span>\n                <span class=\"pnin-kpi-num\" id=\"kpi-iode\">0 \u00b5g<\/span>\n            <\/div>\n        <\/div>\n\n        <!-- 4. Tableau complet filtrable -->\n        <div class=\"pnin-panel\">\n            <div style=\"display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; margin-bottom: 12px; gap: 10px;\">\n                <h4 style=\"margin: 0;\">Composition d\u00e9taill\u00e9e du repas et Apports de R\u00e9f\u00e9rence (AR)<\/h4>\n                <div>\n                    <label for=\"pnin-group-filter\" style=\"font-size: 0.85rem; font-weight: 600;\">Filtrer par cat\u00e9gorie :<\/label>\n                    <select id=\"pnin-group-filter\" class=\"pnin-select\" style=\"width: auto; display: inline-block;\">\n                        <option value=\"all\">Tous les nutriments (~60)<\/option>\n                        <option value=\"\u00c9nergie\">\u00c9nergie<\/option>\n                        <option value=\"Macronutriments\">Macronutriments<\/option>\n                        <option value=\"Min\u00e9raux\">Min\u00e9raux (Fer, Calcium, Sodium, Sel, Iode...)<\/option>\n                        <option value=\"Vitamines liposolubles\">Vitamines liposolubles (A, D, E...)<\/option>\n                        <option value=\"Vitamines hydrosolubles\">Vitamines hydrosolubles (B1, B2, C, Folates...)<\/option>\n                        <option value=\"Lipides d\u00e9taill\u00e9s\">Profil des Acides Gras & Cholest\u00e9rol<\/option>\n                        <option value=\"Anti-nutriments\">Facteurs Anti-nutritionnels (Phytates, IP3-IP6)<\/option>\n                    <\/select>\n                <\/div>\n            <\/div>\n\n            <div class=\"pnin-table-responsive\">\n                <table class=\"pnin-table\">\n                    <thead>\n                        <tr>\n                            <th>Nutriment<\/th>\n                            <th style=\"text-align: right;\">Quantit\u00e9 totale<\/th>\n                            <th style=\"text-align: center;\">Unit\u00e9<\/th>\n                            <th style=\"text-align: center;\">AR Adulte (UE \/ OMS)<\/th>\n                            <th style=\"text-align: center;\">% AR couvert<\/th>\n                        <\/tr>\n                    <\/thead>\n                    <tbody id=\"pnin-nutrients-tbody\"><\/tbody>\n                <\/table>\n            <\/div>\n        <\/div>\n\n        <!-- 5. Planificateur : combinaisons de plats selon des objectifs nutritionnels -->\n        <div class=\"pnin-panel\" id=\"pnin-planner\" style=\"border-left: 4px solid #38a169;\">\n            <h3>\ud83c\udfaf Planificateur de repas : atteindre des objectifs nutritionnels<\/h3>\n            <p>Indiquez les quantit\u00e9s d'\u00e9nergie ou de nutriments souhait\u00e9es : le calculateur propose diff\u00e9rentes combinaisons de plats avec la quantit\u00e9 (en grammes) de chacun pour les atteindre.<\/p>\n\n            <div class=\"pnin-table-responsive\">\n                <table class=\"pnin-table\">\n                    <thead>\n                        <tr>\n                            <th style=\"width: 45%;\">Nutriment<\/th>\n                            <th style=\"width: 20%;\">Type d'objectif<\/th>\n                            <th style=\"width: 25%;\">Valeur<\/th>\n                            <th style=\"width: 10%; text-align: center;\">Action<\/th>\n                        <\/tr>\n                    <\/thead>\n                    <tbody id=\"pnin-target-list\"><\/tbody>\n                <\/table>\n            <\/div>\n\n            <div style=\"margin-top: 10px; display: flex; gap: 10px; flex-wrap: wrap;\">\n                <button type=\"button\" id=\"pnin-add-target-btn\" class=\"pnin-btn pnin-btn-add\">\u2795 Ajouter un objectif<\/button>\n                <button type=\"button\" id=\"pnin-example-target-btn\" class=\"pnin-btn pnin-btn-reset\">\ud83d\udca1 Exemple (200 kcal, \u2265 3 mg fer, \u2264 5 mg sodium)<\/button>\n            <\/div>\n\n            <details class=\"pnin-plan-options\" open>\n                <summary>\u2699\ufe0f Options de recherche<\/summary>\n                <div class=\"pnin-plan-options-grid\">\n                    <label>Rechercher parmi\n                        <select id=\"pnin-plan-source\" class=\"pnin-select\">\n                            <option value=\"plat\" selected>Plats pr\u00e9par\u00e9s uniquement<\/option>\n                            <option value=\"tout\">Plats et aliments simples<\/option>\n                            <option value=\"aliment\">Aliments simples uniquement<\/option>\n                        <\/select>\n                    <\/label>\n                    <label>Nombre maximum de plats par combinaison\n                        <select id=\"pnin-plan-max-dishes\" class=\"pnin-select\">\n                            <option value=\"1\">1<\/option>\n                            <option value=\"2\">2<\/option>\n                            <option value=\"3\" selected>3<\/option>\n                            <option value=\"4\">4<\/option>\n                        <\/select>\n                    <\/label>\n                    <label>Quantit\u00e9 minimale par plat (g)\n                        <input type=\"number\" id=\"pnin-plan-min-qty\" class=\"pnin-input\" min=\"0\" step=\"5\" value=\"50\">\n                    <\/label>\n                    <label>Quantit\u00e9 maximale par plat (g)\n                        <input type=\"number\" id=\"pnin-plan-max-qty\" class=\"pnin-input\" min=\"5\" step=\"5\" value=\"400\">\n                    <\/label>\n                    <label>Nombre de propositions\n                        <input type=\"number\" id=\"pnin-plan-nb-results\" class=\"pnin-input\" min=\"1\" max=\"20\" step=\"1\" value=\"6\">\n                    <\/label>\n                    <label>Uniquement les plats contenant (mots s\u00e9par\u00e9s par des virgules)\n                        <input type=\"text\" id=\"pnin-plan-include\" class=\"pnin-input\" placeholder=\"ex : bouillie, mil\">\n                    <\/label>\n                    <label>Exclure les plats contenant\n                        <input type=\"text\" id=\"pnin-plan-exclude\" class=\"pnin-input\" placeholder=\"ex : sucre, beignet\">\n                    <\/label>\n                <\/div>\n                <small style=\"color:#718096;\">\u2248 environ : on vise la valeur (tol\u00e9rance \u00b110 %) \u00b7 \u2265 au moins : minimum \u00e0 atteindre \u00b7 \u2264 au plus : limite \u00e0 ne pas d\u00e9passer.<\/small>\n            <\/details>\n\n            <div style=\"margin-top: 14px;\">\n                <button type=\"button\" id=\"pnin-plan-btn\" class=\"pnin-btn pnin-btn-add pnin-plan-run\">\ud83d\udd0d Rechercher des combinaisons<\/button>\n            <\/div>\n\n            <div id=\"pnin-plan-results\" style=\"margin-top: 16px;\"><\/div>\n        <\/div>\n    <\/div>\n    \n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-3777","page","type-page","status-publish",""],"_links":{"self":[{"href":"https:\/\/pnin.ins.ne\/index.php?rest_route=\/wp\/v2\/pages\/3777","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pnin.ins.ne\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/pnin.ins.ne\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/pnin.ins.ne\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/pnin.ins.ne\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3777"}],"version-history":[{"count":1,"href":"https:\/\/pnin.ins.ne\/index.php?rest_route=\/wp\/v2\/pages\/3777\/revisions"}],"predecessor-version":[{"id":3778,"href":"https:\/\/pnin.ins.ne\/index.php?rest_route=\/wp\/v2\/pages\/3777\/revisions\/3778"}],"wp:attachment":[{"href":"https:\/\/pnin.ins.ne\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3777"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}