{"en_US": "<t name=\"Posts List\" t-name=\"website_blog.posts_loop\">\n    <div id=\"o_wblog_posts_loop\" t-att-class=\"'o_wblog_list_view' if opt_blog_list_view else ''\">\n\n        <!-- Allow to filter post by published state. Visible only in edit-mode\n             and if both published/unpublished number is > 0 -->\n        <t t-if=\"state_info\" t-set=\"state\" t-value=\"state_info['state']\"/>\n\n        <!-- Check for active options -->\n        <t t-set=\"opt_posts_loop_show_cover\" t-value=\"is_view_active('website_blog.opt_posts_loop_show_cover')\"/>\n\n        <div groups=\"website.group_website_designer\" t-if=\"state_info and (state_info['published'] &gt; 0 and state_info['unpublished'] &gt; 0)\">\n            <div class=\"bg-200 py-2 mb-4 alert alert-dismissable\">\n                <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"alert\" aria-label=\"Close\"/>\n                <span class=\"me-1\">Show:</span>\n                <div class=\"btn-group btn-group-sm\">\n                    <a t-attf-class=\"btn #{state == 'published' and 'btn-success' or 'btn-default bg-white border'}\" t-attf-href=\"#{state == 'published' and blog_url(state='') or blog_url(state='published')}\">\n                        <i t-attf-class=\"fa me-1 #{state == 'published' and 'fa-check-square-o' or 'fa-square-o'}\"/>\n                        Published (<t t-esc=\"state_info['published']\"/>)\n                    </a>\n                    <a t-attf-class=\"btn #{state == 'unpublished' and 'btn-success' or 'btn-default bg-white border'}\" t-attf-href=\"#{state == 'unpublished' and blog_url(state='') or blog_url(state='unpublished')}\">\n                        <i t-attf-class=\"fa me-1 #{state == 'unpublished' and 'fa-check-square-o' or 'fa-square-o'}\"/>\n                        Unpublished (<t t-esc=\"state_info['unpublished']\"/>)\n                    </a>\n                </div>\n                <div class=\"pt-1 fst-italic small\">This box will not be visible to your visitors</div>\n            </div>\n        </div>\n\n        <div t-attf-class=\"row #{posts and not opt_blog_readable and 'mx-n2'}\">\n            <!-- Filters -->\n            <div t-if=\"tag or date_begin or search\" class=\"col-12 mb-3\">\n                <div t-if=\"posts\" class=\"h4 mb-3\">\n                    <t t-esc=\"search_count\"/>\n                    <t t-if=\"search_count &lt; 2\">Article</t>\n                    <t t-else=\"\">Articles</t>\n                </div>\n                <span t-if=\"search\" class=\"align-items-baseline border d-inline-flex ps-2 rounded mb-2\">\n                    <i class=\"fa fa-search me-2 text-muted\"/>\n                    <t t-esc=\"search\"/>\n                    <a t-att-href=\"blog_url(search=False, tag=tag)\" class=\"btn border-0 py-1 post_link\">×</a>\n                </span>\n                <t t-if=\"tag\">\n                    <!-- Show active tags with a category set -->\n                    <t t-foreach=\"tag_category\" t-as=\"nav_tag_category\">\n                        <t t-call=\"website_blog.tags_list\">\n                            <t t-set=\"tags\" t-value=\"nav_tag_category.tag_ids\"/>\n                            <t t-set=\"dismissibleBtn\" t-value=\"True\"/>\n                        </t>\n                    </t>\n\n                    <!-- Show active tags without a category set -->\n                    <t t-call=\"website_blog.tags_list\">\n                        <t t-set=\"tags\" t-value=\"other_tags\"/>\n                        <t t-set=\"dismissibleBtn\" t-value=\"True\"/>\n                    </t>\n                </t>\n                <span t-if=\"date_begin\" class=\"align-items-baseline border d-inline-flex ps-2 rounded mb-2\">\n                    <i class=\"fa fa-calendar-o me-2 text-muted\"/>\n                    <t t-esc=\"date_begin\" t-options=\"{'widget': 'date', 'format': 'MMM yyyy'}\"/>\n                    <a t-attf-href=\"#{blog_url(date_begin=False, date_end=False, tag=tag)}\" class=\"btn border-0 py-1\">×</a>\n                </span>\n                <hr class=\"mt-2\"/>\n            </div>\n\n            <!-- No blog post yet -->\n            <div t-if=\"not posts\" class=\"col\">\n                <t t-set=\"no_results_str\">No results for \"%s\".</t>\n                <h2 t-if=\"search\" t-esc=\"no_results_str % search\" class=\"fw-bold\"/>\n                <h2 t-else=\"\">No blog post yet.</h2>\n                <div class=\"alert alert-info\" groups=\"website.group_website_designer\">\n                    Click on \"<b>New</b>\" in the top-right corner to write your first blog post.\n                </div>\n            </div>\n\n            <!-- Posts -->\n\n            <!-- Define 'colWidth' qWeb variable, to be assigned later.\n            Adjust accordingly if sidebar and/or readability modes are active. -->\n            <t t-if=\"not opt_blog_list_view\">\n                <t t-if=\"opt_blog_readable\">\n                    <t t-if=\"opt_blog_sidebar_show\" t-set=\"colWidth\" t-value=\"'col-md-6'\"/>\n                    <t t-else=\"\" t-set=\"colWidth\" t-value=\"'col-md-6 col-xl-4'\"/>\n                </t>\n                <t t-else=\"\">\n                    <t t-if=\"opt_blog_sidebar_show\" t-set=\"colWidth\" t-value=\"'px-2 col-md-6 col-xl-4'\"/>\n                    <t t-else=\"\" t-set=\"colWidth\" t-value=\"'px-2 col-sm-6 col-lg-4 col-xl-3'\"/>\n                </t>\n            </t>\n            <!-- Loop through posts: exclude the first one if already displayed as top banner -->\n            <t t-foreach=\"posts\" t-as=\"blog_post\">\n                <!-- Assign 'colWidth': 'col-12' is default for List-View and mobile -->\n                <div t-attf-class=\"pb-4 col-12 #{colWidth}\" t-cache=\"blog_post,opt_blog_list_view,opt_blog_readable,active_tag_ids\">\n                    <article t-attf-class=\"o_wblog_post position-relative #{'card h-100' if opt_blog_cards_design else ''}\" name=\"blog_post\">\n                        <!-- List-View Design -->\n                        <t t-if=\"opt_blog_list_view\">\n                            <div t-att-class=\"opt_blog_cards_design and 'card-body py-3'\">\n                                <t t-call=\"website_blog.post_heading\"/>\n                            </div>\n                            <div t-if=\"not opt_blog_cards_design\" class=\"py-2\">\n                                <t t-call=\"website_blog.post_info\"/>\n                            </div>\n                            <div t-if=\"opt_posts_loop_show_cover\">\n                                <t t-call=\"website_blog.post_cover_image\"/>\n                            </div>\n                            <div t-if=\"is_view_active('website_blog.opt_posts_loop_show_teaser')\" t-att-class=\"opt_blog_cards_design and 'card-body pt-0'\">\n                                <t t-call=\"website_blog.post_teaser\"/>\n                            </div>\n                            <div t-if=\"opt_blog_cards_design\" t-attf-class=\"opt_blog_cards_design and 'card-body pt-0 pb-2'}\">\n                                <t t-call=\"website_blog.post_info\"/>\n                            </div>\n                            <div t-else=\"\" class=\"mt-3\">\n                                <a t-attf-href=\"/blog/#{slug(blog_post.blog_id)}/#{slug(blog_post)}\" class=\"btn btn-primary\">\n                                    Read more <i class=\"oi oi-chevron-right ms-2\"/>\n                                </a>\n                            </div>\n                        </t>\n                        <!-- Grid-View Design -->\n                        <t t-if=\"not opt_blog_list_view\">\n                            <t t-if=\"opt_posts_loop_show_cover\" t-call=\"website_blog.post_cover_image\"/>\n                            <div t-att-class=\"opt_blog_cards_design and 'card-body px-2 py-0 mb-2'\">\n                                <t t-call=\"website_blog.post_heading\"/>\n                                <div t-if=\"is_view_active('website_blog.opt_posts_loop_show_teaser')\">\n                                    <t t-call=\"website_blog.post_teaser\"/>\n                                </div>\n                            </div>\n                            <div t-attf-class=\"o_wblog_normalize_font #{'card-footer px-2 pb-2' if opt_blog_cards_design else 'pe-2 pb-2'}\">\n                                <t t-call=\"website_blog.post_info\"/>\n                            </div>\n                        </t>\n                        <!-- Add 'unpublished' badge -->\n                        <span t-if=\"not blog_post.website_published\" class=\"bg-danger small py-1 px-2 position-absolute o_not_editable\" style=\"top:0; right:0\">unpublished</span>\n                    </article>\n                </div>\n                <!-- List-View Design, add <hr> after post -->\n                <div t-if=\"opt_blog_list_view and not blog_post_last\" class=\"col-12 mt-2 mb-5 px-2\"><hr/></div>\n            </t>\n        </div>\n    </div>\n</t>", "fr_FR": "<t name=\"Posts List\" t-name=\"website_blog.posts_loop\">\n    <div id=\"o_wblog_posts_loop\" t-att-class=\"'o_wblog_list_view' if opt_blog_list_view else ''\">\n\n        <!-- Allow to filter post by published state. Visible only in edit-mode\n             and if both published/unpublished number is > 0 -->\n        <t t-if=\"state_info\" t-set=\"state\" t-value=\"state_info['state']\"/>\n\n        <!-- Check for active options -->\n        <t t-set=\"opt_posts_loop_show_cover\" t-value=\"is_view_active('website_blog.opt_posts_loop_show_cover')\"/>\n\n        <div groups=\"website.group_website_designer\" t-if=\"state_info and (state_info['published'] &gt; 0 and state_info['unpublished'] &gt; 0)\">\n            <div class=\"bg-200 py-2 mb-4 alert alert-dismissable\">\n                <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"alert\" aria-label=\"Fermer\"/>\n                <span class=\"me-1\">Montrer :</span>\n                <div class=\"btn-group btn-group-sm\">\n                    <a t-attf-class=\"btn #{state == 'published' and 'btn-success' or 'btn-default bg-white border'}\" t-attf-href=\"#{state == 'published' and blog_url(state='') or blog_url(state='published')}\">\n                        <i t-attf-class=\"fa me-1 #{state == 'published' and 'fa-check-square-o' or 'fa-square-o'}\"/>\n                        Publié (<t t-esc=\"state_info['published']\"/>)\n                    </a>\n                    <a t-attf-class=\"btn #{state == 'unpublished' and 'btn-success' or 'btn-default bg-white border'}\" t-attf-href=\"#{state == 'unpublished' and blog_url(state='') or blog_url(state='unpublished')}\">\n                        <i t-attf-class=\"fa me-1 #{state == 'unpublished' and 'fa-check-square-o' or 'fa-square-o'}\"/>\n                        Non publié (<t t-esc=\"state_info['unpublished']\"/>)\n                    </a>\n                </div>\n                <div class=\"pt-1 fst-italic small\">Cette boîte ne sera pas visible pour vos visiteurs</div>\n            </div>\n        </div>\n\n        <div t-attf-class=\"row #{posts and not opt_blog_readable and 'mx-n2'}\">\n            <!-- Filters -->\n            <div t-if=\"tag or date_begin or search\" class=\"col-12 mb-3\">\n                <div t-if=\"posts\" class=\"h4 mb-3\">\n                    <t t-esc=\"search_count\"/>\n                    <t t-if=\"search_count &lt; 2\">Article</t>\n                    <t t-else=\"\">Articles</t>\n                </div>\n                <span t-if=\"search\" class=\"align-items-baseline border d-inline-flex ps-2 rounded mb-2\">\n                    <i class=\"fa fa-search me-2 text-muted\"/>\n                    <t t-esc=\"search\"/>\n                    <a t-att-href=\"blog_url(search=False, tag=tag)\" class=\"btn border-0 py-1 post_link\">×</a>\n                </span>\n                <t t-if=\"tag\">\n                    <!-- Show active tags with a category set -->\n                    <t t-foreach=\"tag_category\" t-as=\"nav_tag_category\">\n                        <t t-call=\"website_blog.tags_list\">\n                            <t t-set=\"tags\" t-value=\"nav_tag_category.tag_ids\"/>\n                            <t t-set=\"dismissibleBtn\" t-value=\"True\"/>\n                        </t>\n                    </t>\n\n                    <!-- Show active tags without a category set -->\n                    <t t-call=\"website_blog.tags_list\">\n                        <t t-set=\"tags\" t-value=\"other_tags\"/>\n                        <t t-set=\"dismissibleBtn\" t-value=\"True\"/>\n                    </t>\n                </t>\n                <span t-if=\"date_begin\" class=\"align-items-baseline border d-inline-flex ps-2 rounded mb-2\">\n                    <i class=\"fa fa-calendar-o me-2 text-muted\"/>\n                    <t t-esc=\"date_begin\" t-options=\"{'widget': 'date', 'format': 'MMM yyyy'}\"/>\n                    <a t-attf-href=\"#{blog_url(date_begin=False, date_end=False, tag=tag)}\" class=\"btn border-0 py-1\">×</a>\n                </span>\n                <hr class=\"mt-2\"/>\n            </div>\n\n            <!-- No blog post yet -->\n            <div t-if=\"not posts\" class=\"col\">\n                <t t-set=\"no_results_str\">Aucun résultat pour \"%s\".</t>\n                <h2 t-if=\"search\" t-esc=\"no_results_str % search\" class=\"fw-bold\"/>\n                <h2 t-else=\"\">Aucun article pour le moment.</h2>\n                <div class=\"alert alert-info\" groups=\"website.group_website_designer\">\n                    Cliquez sur \"<b>Nouveau</b>\" dans le coin supérieur droit pour rédiger votre premier article de blog.\n                </div>\n            </div>\n\n            <!-- Posts -->\n\n            <!-- Define 'colWidth' qWeb variable, to be assigned later.\n            Adjust accordingly if sidebar and/or readability modes are active. -->\n            <t t-if=\"not opt_blog_list_view\">\n                <t t-if=\"opt_blog_readable\">\n                    <t t-if=\"opt_blog_sidebar_show\" t-set=\"colWidth\" t-value=\"'col-md-6'\"/>\n                    <t t-else=\"\" t-set=\"colWidth\" t-value=\"'col-md-6 col-xl-4'\"/>\n                </t>\n                <t t-else=\"\">\n                    <t t-if=\"opt_blog_sidebar_show\" t-set=\"colWidth\" t-value=\"'px-2 col-md-6 col-xl-4'\"/>\n                    <t t-else=\"\" t-set=\"colWidth\" t-value=\"'px-2 col-sm-6 col-lg-4 col-xl-3'\"/>\n                </t>\n            </t>\n            <!-- Loop through posts: exclude the first one if already displayed as top banner -->\n            <t t-foreach=\"posts\" t-as=\"blog_post\">\n                <!-- Assign 'colWidth': 'col-12' is default for List-View and mobile -->\n                <div t-attf-class=\"pb-4 col-12 #{colWidth}\" t-cache=\"blog_post,opt_blog_list_view,opt_blog_readable,active_tag_ids\">\n                    <article t-attf-class=\"o_wblog_post position-relative #{'card h-100' if opt_blog_cards_design else ''}\" name=\"blog_post\">\n                        <!-- List-View Design -->\n                        <t t-if=\"opt_blog_list_view\">\n                            <div t-att-class=\"opt_blog_cards_design and 'card-body py-3'\">\n                                <t t-call=\"website_blog.post_heading\"/>\n                            </div>\n                            <div t-if=\"not opt_blog_cards_design\" class=\"py-2\">\n                                <t t-call=\"website_blog.post_info\"/>\n                            </div>\n                            <div t-if=\"opt_posts_loop_show_cover\">\n                                <t t-call=\"website_blog.post_cover_image\"/>\n                            </div>\n                            <div t-if=\"is_view_active('website_blog.opt_posts_loop_show_teaser')\" t-att-class=\"opt_blog_cards_design and 'card-body pt-0'\">\n                                <t t-call=\"website_blog.post_teaser\"/>\n                            </div>\n                            <div t-if=\"opt_blog_cards_design\" t-attf-class=\"opt_blog_cards_design and 'card-body pt-0 pb-2'}\">\n                                <t t-call=\"website_blog.post_info\"/>\n                            </div>\n                            <div t-else=\"\" class=\"mt-3\">\n                                <a t-attf-href=\"/blog/#{slug(blog_post.blog_id)}/#{slug(blog_post)}\" class=\"btn btn-primary\">\n                                    En savoir plus <i class=\"oi oi-chevron-right ms-2\"/>\n                                </a>\n                            </div>\n                        </t>\n                        <!-- Grid-View Design -->\n                        <t t-if=\"not opt_blog_list_view\">\n                            <t t-if=\"opt_posts_loop_show_cover\" t-call=\"website_blog.post_cover_image\"/>\n                            <div t-att-class=\"opt_blog_cards_design and 'card-body px-2 py-0 mb-2'\">\n                                <t t-call=\"website_blog.post_heading\"/>\n                                <div t-if=\"is_view_active('website_blog.opt_posts_loop_show_teaser')\">\n                                    <t t-call=\"website_blog.post_teaser\"/>\n                                </div>\n                            </div>\n                            <div t-attf-class=\"o_wblog_normalize_font #{'card-footer px-2 pb-2' if opt_blog_cards_design else 'pe-2 pb-2'}\">\n                                <t t-call=\"website_blog.post_info\"/>\n                            </div>\n                        </t>\n                        <!-- Add 'unpublished' badge -->\n                        <span t-if=\"not blog_post.website_published\" class=\"bg-danger small py-1 px-2 position-absolute o_not_editable\" style=\"top:0; right:0\">Non publié</span>\n                    </article>\n                </div>\n                <!-- List-View Design, add <hr> after post -->\n                <div t-if=\"opt_blog_list_view and not blog_post_last\" class=\"col-12 mt-2 mb-5 px-2\"><hr/></div>\n            </t>\n        </div>\n    </div>\n</t>"}