{"id":324,"date":"2026-04-16T19:42:26","date_gmt":"2026-04-16T17:42:26","guid":{"rendered":"https:\/\/canaltsf.com\/?page_id=324"},"modified":"2026-04-27T23:05:09","modified_gmt":"2026-04-27T21:05:09","slug":"programmes","status":"publish","type":"page","link":"https:\/\/canaltsf.com\/index.php\/programmes\/","title":{"rendered":"Demandez le programme !"},"content":{"rendered":"\n<div class=\"wp-block-columns alignwide is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">    <div class=\"tsf-schedule-wrap\" id=\"tsf-schedule\">\n\n        <div class=\"tsf-schedule-header\">\n            <div class=\"tsf-header-left\">\n                <span class=\"tsf-live-dot\"><\/span>\n                <h2 class=\"tsf-schedule-title\">Canal TSF \u2014 Programme du jour<\/h2>\n            <\/div>\n            <span class=\"tsf-date\">vendredi 15 mai 2026<\/span>\n        <\/div>\n\n        \n            <div class=\"tsf-now-playing-bar\" id=\"tsf-now-bar\" style=\"display:none\">\n                <span class=\"tsf-now-label\">\ud83c\udfb5 En ce moment<\/span>\n                <span class=\"tsf-now-content\" id=\"tsf-now-content\"><\/span>\n            <\/div>\n\n            <table class=\"tsf-table\" role=\"grid\">\n                <thead>\n                    <tr>\n                        <th scope=\"col\">Heure<\/th>\n                        <th scope=\"col\">\u00c9mission<\/th>\n                    <\/tr>\n                <\/thead>\n                <tbody>\n                                    <tr class=\"tsf-row \"\n                        data-en-cours=\"0\">\n\n                        <td class=\"tsf-col-heure\" data-label=\"Heure\">\n                            <span class=\"tsf-heure\">00:30<\/span>\n                                                    <\/td>\n\n                        <td class=\"tsf-col-emission\" data-label=\"\u00c9mission\">\n                                                            <a class=\"tsf-emission-link\" href=\"https:\/\/canaltsf.com\/index.php\/en-tete-a-tete\/\">\n                                    En t\u00eate \u00e0 t\u00eate                                <\/a>\n                                                                                <\/td>\n\n                    <\/tr>\n                                    <tr class=\"tsf-row \"\n                        data-en-cours=\"0\">\n\n                        <td class=\"tsf-col-heure\" data-label=\"Heure\">\n                            <span class=\"tsf-heure\">10:00<\/span>\n                                                    <\/td>\n\n                        <td class=\"tsf-col-emission\" data-label=\"\u00c9mission\">\n                                                            <a class=\"tsf-emission-link\" href=\"https:\/\/canaltsf.com\/index.php\/ma-musique-mon-combat\/\">\n                                    Ma musique mon combat                                <\/a>\n                                                                                <\/td>\n\n                    <\/tr>\n                                    <tr class=\"tsf-row \"\n                        data-en-cours=\"0\">\n\n                        <td class=\"tsf-col-heure\" data-label=\"Heure\">\n                            <span class=\"tsf-heure\">11:30<\/span>\n                                                    <\/td>\n\n                        <td class=\"tsf-col-emission\" data-label=\"\u00c9mission\">\n                                                            <a class=\"tsf-emission-link\" href=\"https:\/\/canaltsf.com\/index.php\/en-tete-a-tete\/\">\n                                    En t\u00eate \u00e0 t\u00eate                                <\/a>\n                                                                                <\/td>\n\n                    <\/tr>\n                                    <tr class=\"tsf-row \"\n                        data-en-cours=\"0\">\n\n                        <td class=\"tsf-col-heure\" data-label=\"Heure\">\n                            <span class=\"tsf-heure\">22:30<\/span>\n                                                    <\/td>\n\n                        <td class=\"tsf-col-emission\" data-label=\"\u00c9mission\">\n                                                            <a class=\"tsf-emission-link\" href=\"https:\/\/canaltsf.com\/index.php\/en-tete-a-tete\/\">\n                                    En t\u00eate \u00e0 t\u00eate                                <\/a>\n                                                                                <\/td>\n\n                    <\/tr>\n                                <\/tbody>\n            <\/table>\n\n            <\/div>\n\n    <style>\n    #tsf-schedule {\n        --tsf-accent:      #e8321c;\n        --tsf-accent2:     #f5a623;\n        --tsf-text-muted:  #888;\n        --tsf-border:      rgba(128,128,128,0.2);\n        --tsf-active-bg:   rgba(30,48,80,0.12);\n        --tsf-active-left: #e8321c;\n        --tsf-radius:      10px;\n\n        font-family: inherit;\n        background:  transparent;\n        color:       inherit;\n        border-radius: var(--tsf-radius);\n        overflow: hidden;\n        max-width: 960px;\n        margin: 1rem auto;\n    }\n\n    \/* Header *\/\n    .tsf-schedule-header {\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        padding: 1rem 1.2rem;\n        border-bottom: 2px solid var(--tsf-accent);\n        flex-wrap: wrap;\n        gap: .5rem;\n        background: transparent;\n    }\n    .tsf-header-left { display: flex; align-items: center; gap: .75rem; }\n    .tsf-live-dot {\n        width: 10px; height: 10px;\n        background: var(--tsf-accent);\n        border-radius: 50%;\n        flex-shrink: 0;\n        animation: tsf-pulse 1.6s ease-in-out infinite;\n    }\n    @keyframes tsf-pulse {\n        0%,100% { box-shadow: 0 0 0 0 rgba(232,50,28,.6); }\n        50%      { box-shadow: 0 0 0 7px rgba(232,50,28,0); }\n    }\n    .tsf-schedule-title { font-size: 1.1rem; font-weight: 700; margin: 0; line-height: 1.2; }\n    .tsf-date { font-size: .8rem; color: var(--tsf-text-muted); text-transform: capitalize; }\n\n    \/* Now playing *\/\n    .tsf-now-playing-bar {\n        display: flex;\n        align-items: center;\n        gap: .75rem;\n        padding: .6rem 1.2rem;\n        border-bottom: 1px solid var(--tsf-border);\n        font-size: .9rem;\n        background: transparent;\n    }\n    .tsf-now-label { font-weight: 700; color: var(--tsf-accent2); white-space: nowrap; }\n\n    \/* Table *\/\n    .tsf-table {\n        width: 100%;\n        border-collapse: collapse;\n        font-size: .95rem;\n        background: transparent;\n    }\n    .tsf-table thead tr {\n        text-transform: uppercase;\n        font-size: .72rem;\n        letter-spacing: .08em;\n        color: var(--tsf-text-muted);\n        background: transparent;\n    }\n    .tsf-table th, .tsf-table td {\n        padding: .75rem 1rem;\n        text-align: left;\n        border-bottom: 1px solid var(--tsf-border);\n        vertical-align: middle;\n        background: transparent;\n    }\n    .tsf-table th { font-weight: 600; }\n\n    \/* Rows *\/\n    .tsf-row { transition: background .15s; }\n    .tsf-row--active {\n        background: var(--tsf-active-bg) !important;\n        border-left: 3px solid var(--tsf-active-left);\n    }\n\n    \/* Heure *\/\n    .tsf-col-heure { white-space: nowrap; width: 90px; }\n    .tsf-heure { font-weight: 700; font-size: 1rem; color: var(--tsf-accent2); }\n    .tsf-badge-live {\n        display: inline-block;\n        margin-left: .4rem;\n        padding: .1rem .45rem;\n        background: var(--tsf-accent);\n        color: #fff;\n        font-size: .65rem;\n        font-weight: 800;\n        border-radius: 3px;\n        letter-spacing: .06em;\n        vertical-align: middle;\n        animation: tsf-blink 2s step-start infinite;\n    }\n    @keyframes tsf-blink { 50% { opacity: .4; } }\n\n    \/* \u00c9mission *\/\n    .tsf-col-emission { vertical-align: middle; }\n    .tsf-emission-link {\n        display: block;\n        font-weight: 600;\n        color: inherit;\n        text-decoration: none;\n        transition: color .15s;\n    }\n    .tsf-emission-link:hover { color: var(--tsf-accent); text-decoration: underline; }\n    .tsf-emission { display: block; font-weight: 600; }\n    .tsf-theme {\n        display: block;\n        font-size: .82rem;\n        color: var(--tsf-text-muted);\n        margin-top: .2rem;\n        font-style: italic;\n    }\n\n    \/* No data *\/\n    .tsf-no-data { padding: 2rem; text-align: center; color: var(--tsf-text-muted); }\n\n    \/* Responsive *\/\n    @media (max-width: 600px) {\n        .tsf-table thead { display: none; }\n        .tsf-table tr { display: block; padding: .75rem 1rem; border-bottom: 1px solid var(--tsf-border); }\n        .tsf-table td { display: flex; justify-content: space-between; align-items: flex-start; padding: .2rem 0; border: none; }\n        .tsf-table td::before {\n            content: attr(data-label);\n            font-size: .7rem;\n            text-transform: uppercase;\n            color: var(--tsf-text-muted);\n            margin-right: .5rem;\n            padding-top: .15rem;\n            flex-shrink: 0;\n        }\n    }\n    <\/style>\n\n    <script>\n    \/\/<![CDATA[\n    (function tsfPlayerInit() {\n        var rows = document.querySelectorAll('#tsf-schedule .tsf-row[data-en-cours=\"1\"]');\n        if (rows.length) {\n            var r   = rows[0];\n            var em  = r.querySelector('.tsf-emission-link, .tsf-emission');\n            var h   = r.querySelector('.tsf-heure');\n            var bar = document.getElementById('tsf-now-bar');\n            var cnt = document.getElementById('tsf-now-content');\n            if (bar && cnt && em) {\n                cnt.textContent = (h ? h.textContent.trim() + ' \u2014 ' : '') + em.textContent.trim();\n                bar.style.display = 'flex';\n                r.scrollIntoView({ behavior: 'smooth', block: 'nearest' });\n            }\n        }\n    })();\n    <\/script>\n    \n<\/div>\n<\/div>\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":{"episode_type":"","audio_file":"","podmotor_file_id":"","podmotor_episode_id":"","cover_image":"","cover_image_id":"","duration":"","filesize":"","filesize_raw":"","date_recorded":"","explicit":"","block":"","itunes_episode_number":"","itunes_title":"","itunes_season_number":"","itunes_episode_type":"","footnotes":""},"class_list":["post-324","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/canaltsf.com\/index.php\/wp-json\/wp\/v2\/pages\/324","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/canaltsf.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/canaltsf.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/canaltsf.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/canaltsf.com\/index.php\/wp-json\/wp\/v2\/comments?post=324"}],"version-history":[{"count":9,"href":"https:\/\/canaltsf.com\/index.php\/wp-json\/wp\/v2\/pages\/324\/revisions"}],"predecessor-version":[{"id":513,"href":"https:\/\/canaltsf.com\/index.php\/wp-json\/wp\/v2\/pages\/324\/revisions\/513"}],"wp:attachment":[{"href":"https:\/\/canaltsf.com\/index.php\/wp-json\/wp\/v2\/media?parent=324"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}