{"id":327958,"date":"2026-01-25T17:47:40","date_gmt":"2026-01-25T16:47:40","guid":{"rendered":"https:\/\/mondial.tv\/?page_id=327958"},"modified":"2026-01-29T14:17:41","modified_gmt":"2026-01-29T13:17:41","slug":"acces-portail-application-client-mondial-tv","status":"publish","type":"page","link":"https:\/\/mondial.tv\/en\/acces-portail-application-client-mondial-tv\/","title":{"rendered":"Mondial TV Client Application Portal Access"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"327958\" class=\"elementor elementor-327958\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-249af95 e-flex e-con-boxed e-con e-parent\" data-id=\"249af95\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d3bb0a0 elementor-widget elementor-widget-html\" data-id=\"d3bb0a0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"mtv-portal-page\" id=\"mtvPortalPage\">\n  <style>\n    \/* =========================\n       Styles SCOP\u00c9S (anti-conflits th\u00e8me)\n       ========================= *\/\n    .mtv-portal-page{\n      --bg:#0b0d10;\n      --card:#12161c;\n\n      --text:#ffffff;\n      --text-strong:#ffffff;\n      --text-muted:rgba(255,255,255,.86);\n      --text-muted2:rgba(255,255,255,.70);\n\n      --border:rgba(255,255,255,.12);\n      --accent:#2d7dff;\n      --accent2:rgba(45,125,255,.16);\n      --shadow:0 12px 34px rgba(0,0,0,.28);\n\n      color: var(--text);\n      background: var(--bg);\n      padding: 22px 16px;\n      border-radius: 18px;\n      overflow: hidden;\n      isolation: isolate; \/* \u00e9vite des effets de blend\/z-index du th\u00e8me *\/\n    }\n\n    .mtv-portal-page *{ box-sizing:border-box; }\n\n    \/* Force la lisibilit\u00e9 m\u00eame si le th\u00e8me applique des couleurs globales *\/\n    .mtv-portal-page,\n    .mtv-portal-page p,\n    .mtv-portal-page span,\n    .mtv-portal-page li,\n    .mtv-portal-page b,\n    .mtv-portal-page strong,\n    .mtv-portal-page h1,\n    .mtv-portal-page h2{\n      color: var(--text) !important;\n    }\n    .mtv-portal-page p{ color: var(--text-muted) !important; }\n    .mtv-portal-page .mtv-title p,\n    .mtv-portal-page .mtv-step span,\n    .mtv-portal-page .mtv-iframe-head span,\n    .mtv-portal-page .mtv-fallback{\n      color: var(--text-muted2) !important;\n    }\n    .mtv-portal-page b,\n    .mtv-portal-page strong{\n      color: var(--text-strong) !important;\n      font-weight: 800;\n    }\n\n    .mtv-portal-page a{\n      color: #ffffff !important;\n      text-decoration: none;\n    }\n\n    .mtv-wrap{\n      width: min(1180px, 100%);\n      margin: 0 auto;\n    }\n\n    .mtv-head{\n      display:flex;\n      gap:12px;\n      align-items:center;\n      margin-bottom: 14px;\n    }\n\n    .mtv-logo{\n      width:40px;height:40px;\n      border-radius: 12px;\n      display:flex;\n      align-items:center;\n      justify-content:center;\n      font-weight: 900;\n      color: var(--accent) !important;\n      background: var(--accent2);\n      border: 1px solid rgba(45,125,255,.35);\n      user-select:none;\n      flex:0 0 auto;\n    }\n\n    .mtv-title{ min-width:0; }\n    .mtv-title h1{\n      margin:0;\n      font-size: 18px;\n      letter-spacing:.2px;\n      line-height: 1.25;\n      color: var(--text) !important;\n    }\n    .mtv-title p{\n      margin:4px 0 0;\n      font-size: 13px;\n      white-space:nowrap;\n      overflow:hidden;\n      text-overflow:ellipsis;\n    }\n\n    .mtv-grid{\n      display:grid;\n      grid-template-columns: 380px 1fr;\n      gap: 14px;\n      align-items: start;\n    }\n    @media (max-width: 980px){\n      .mtv-grid{ grid-template-columns: 1fr; }\n    }\n\n    .mtv-card{\n      background: var(--card);\n      border: 1px solid var(--border);\n      border-radius: 14px;\n      box-shadow: var(--shadow);\n      overflow: hidden;\n    }\n    .mtv-pad{ padding: 16px; }\n\n    .mtv-card h2{\n      margin:0 0 10px;\n      font-size: 16px;\n      letter-spacing:.2px;\n    }\n    .mtv-card p{\n      margin:0 0 12px;\n      font-size: 14px;\n      line-height: 1.55;\n    }\n\n    .mtv-steps{\n      list-style:none;\n      padding:0;\n      margin: 10px 0 0;\n      display:flex;\n      flex-direction:column;\n      gap:10px;\n    }\n    .mtv-step{\n      display:flex;\n      gap:10px;\n      padding:10px;\n      border:1px solid var(--border);\n      border-radius: 12px;\n      background: rgba(255,255,255,.02);\n    }\n    .mtv-badge{\n      width:28px;height:28px;\n      border-radius:10px;\n      display:flex;\n      align-items:center;\n      justify-content:center;\n      font-weight:900;\n      background: rgba(255,255,255,.06);\n      border:1px solid var(--border);\n      flex: 0 0 auto;\n      margin-top: 1px;\n      color: var(--text) !important;\n    }\n    .mtv-step b{ display:block; font-size: 14px; margin-bottom: 2px; }\n    .mtv-step span{ display:block; font-size: 13px; line-height:1.4; }\n\n    .mtv-hint{\n      margin-top: 12px;\n      padding: 10px;\n      border-radius: 12px;\n      border: 1px solid rgba(45,125,255,.35);\n      background: rgba(45,125,255,.10);\n      font-size: 13px;\n      line-height: 1.45;\n    }\n\n    .mtv-actions{\n      margin-top: 12px;\n      display:flex;\n      gap:10px;\n      flex-wrap:wrap;\n    }\n    .mtv-btn{\n      appearance:none;\n      border: 1px solid var(--border);\n      background: rgba(255,255,255,.06);\n      color:#fff !important;\n      padding:10px 12px;\n      border-radius:12px;\n      font-weight:900;\n      font-size: 13px;\n      cursor:pointer;\n      text-decoration:none;\n      display:inline-flex;\n      align-items:center;\n      justify-content:center;\n      gap:8px;\n      user-select:none;\n    }\n    .mtv-btn-primary{\n      background: var(--accent);\n      border-color: rgba(45,125,255,.65);\n    }\n\n    .mtv-iframe-head{\n      padding: 12px 14px;\n      border-bottom: 1px solid var(--border);\n      display:flex;\n      align-items:center;\n      justify-content:space-between;\n      gap:12px;\n    }\n    .mtv-iframe-head strong{\n      font-size: 14px;\n      color: var(--text) !important;\n    }\n    .mtv-iframe-head span{\n      font-size: 12px;\n    }\n\n    \/* =========================\n       \u2705 IFRAME PLUS GRANDE + RESPONSIVE\n       - Utilise svh\/dvh quand dispo\n       - fallback via vh si besoin\n       ========================= *\/\n\n    \/* Desktop \/ TV \/ grands \u00e9crans *\/\n    .mtv-iframe-viewport{\n      width: 100%;\n      \/* plus grand que la version pr\u00e9c\u00e9dente *\/\n      height: clamp(720px, 82vh, 1200px);\n      height: clamp(720px, 82svh, 1200px);\n      height: clamp(720px, 82dvh, 1200px);\n      background:#000;\n    }\n\n    \/* Tablette \/ mobile : on garde grand mais sans casser la page *\/\n    @media (max-width: 980px){\n      .mtv-iframe-viewport{\n        height: clamp(720px, 78vh, 1200px);\n        height: clamp(720px, 78svh, 1200px);\n        height: clamp(720px, 78dvh, 1200px);\n      }\n    }\n\n    .mtv-portal-iframe{\n      width:100%;\n      height:100%;\n      border:0;\n      display:block;\n      background:#000;\n    }\n\n    .mtv-fallback{\n      display:none;\n      padding: 12px 14px;\n      border-top: 1px solid var(--border);\n      font-size: 13px;\n      background: rgba(255,255,255,.02);\n    }\n  <\/style>\n\n  <div class=\"mtv-wrap\">\n    <div class=\"mtv-head\">\n      <div class=\"mtv-logo\">MTV<\/div>\n      <div class=\"mtv-title\">\n        <h1>Portail Application Client Mondial TV<\/h1>\n        <p>Acc\u00e8s informatif r\u00e9serv\u00e9 aux clients Mondial TV sous contrat<\/p>\n      <\/div>\n    <\/div>\n\n    <div class=\"mtv-grid\">\n      <!-- Informations -->\n      <section class=\"mtv-card mtv-pad\">\n        <h2>Acc\u00e8s r\u00e9serv\u00e9 \u2013 Informations uniquement<\/h2>\n\n        <p>\n          Cette page est destin\u00e9e aux <b>clients Mondial TV disposant d\u2019un contrat actif<\/b> et ayant re\u00e7u\n          un e-mail contenant les informations de connexion au portail.\n        <\/p>\n\n        <ul class=\"mtv-steps\">\n          <li class=\"mtv-step\">\n            <div class=\"mtv-badge\">1<\/div>\n            <div>\n              <b>Premi\u00e8re connexion<\/b>\n              <span>\n                Lors de votre premi\u00e8re connexion, utilisez la fonction\n                <b>\u00ab Mot de passe oubli\u00e9 \u00bb<\/b> afin de d\u00e9finir votre mot de passe.\n              <\/span>\n            <\/div>\n          <\/li>\n          <li class=\"mtv-step\">\n            <div class=\"mtv-badge\">2<\/div>\n            <div>\n              <b>Consultation du portail<\/b>\n              <span>\n                Le portail vous permet de consulter vos <b>informations personnelles<\/b>\n                et les <b>d\u00e9tails de votre abonnement existant<\/b>.\n              <\/span>\n            <\/div>\n          <\/li>\n          <li class=\"mtv-step\">\n            <div class=\"mtv-badge\">3<\/div>\n            <div>\n              <b>Aucune modification contractuelle<\/b>\n              <span>\n                Il n\u2019est <b>pas possible de modifier votre abonnement<\/b> ni d\u2019effectuer\n                <b>un paiement<\/b> depuis ce portail.\n              <\/span>\n            <\/div>\n          <\/li>\n        <\/ul>\n\n        <div class=\"mtv-hint\">\n          \u2139\ufe0f Ce portail est strictement <b>informatif<\/b> : aucun changement d\u2019offre, aucune souscription\n          et aucun paiement ne peuvent \u00eatre r\u00e9alis\u00e9s ici.\n        <\/div>\n\n        <div class=\"mtv-actions\">\n          <button class=\"mtv-btn mtv-btn-primary\" type=\"button\" id=\"mtvGoPortal\">\n            Acc\u00e9der au portail\n          <\/button>\n          <button class=\"mtv-btn\" type=\"button\" id=\"mtvOpenTab\">\n            Ouvrir dans un nouvel onglet\n          <\/button>\n        <\/div>\n      <\/section>\n\n      <!-- Iframe -->\n      <section class=\"mtv-card\">\n        <div class=\"mtv-iframe-head\">\n          <div>\n            <strong>Portail TVMS<\/strong><br \/>\n            <span>Consultation des informations client<\/span>\n          <\/div>\n          <button class=\"mtv-btn\" type=\"button\" id=\"mtvTop\">Haut de page<\/button>\n        <\/div>\n\n        <div class=\"mtv-iframe-viewport\" id=\"mtvPortalViewport\">\n          <iframe\n            id=\"mtvPortalIframe\"\n            class=\"mtv-portal-iframe\"\n            title=\"Portail TVMS\"\n            loading=\"lazy\"\n            referrerpolicy=\"no-referrer\"\n            scrolling=\"auto\"\n            allow=\"fullscreen; autoplay\"\n            sandbox=\"allow-scripts allow-forms allow-popups allow-modals allow-orientation-lock allow-same-origin\"\n            src=\"https:\/\/portal.tvms.io\/?o=home&h=eyJjbGllbnQiOiJNb25kaWFsIiwiZGVwbG95bWVudCI6Ik1UVi1Db250ZW50Iiwic2VydmljZSI6Ik1vbmRpYWwtVFYiLCJwb3J0YWxJZCI6IjY3MDc2NDNmOWZiYTQxOGNkNjU3YmM1OCJ9\"\n          ><\/iframe>\n        <\/div>\n\n        <div class=\"mtv-fallback\" id=\"mtvFallback\">\n          Si le portail ne s\u2019affiche pas correctement, vous pouvez\n          <button class=\"mtv-btn\" type=\"button\" id=\"mtvFallbackOpen\">\n            l\u2019ouvrir dans un nouvel onglet\n          <\/button>.\n        <\/div>\n      <\/section>\n    <\/div>\n  <\/div>\n\n  <script>\n    (function(){\n      \"use strict\";\n\n      const iframe = document.getElementById(\"mtvPortalIframe\");\n      const viewport = document.getElementById(\"mtvPortalViewport\");\n      const fallback = document.getElementById(\"mtvFallback\");\n\n      \/\/ Boutons UX\n      document.getElementById(\"mtvGoPortal\").onclick = () =>\n        viewport.scrollIntoView({ behavior:\"smooth\", block:\"start\" });\n\n      document.getElementById(\"mtvTop\").onclick = () =>\n        document.getElementById(\"mtvPortalPage\")\n          .scrollIntoView({ behavior:\"smooth\", block:\"start\" });\n\n      const openTab = () => window.open(iframe.src, \"_blank\", \"noopener,noreferrer\");\n      document.getElementById(\"mtvOpenTab\").onclick = openTab;\n      document.getElementById(\"mtvFallbackOpen\").onclick = openTab;\n\n      \/\/ Ajout safe de la querystring de la page vers l\u2019iframe\n      (function appendQueryStringOnce(){\n        try{\n          const pageUrl = new URL(window.location.href);\n          if ([...pageUrl.searchParams.keys()].length === 0) return;\n\n          const portalUrl = new URL(iframe.getAttribute(\"src\"));\n          const safeKey = (k) => \/^[a-zA-Z0-9_-]{1,64}$\/.test(k);\n\n          pageUrl.searchParams.forEach((value, key) => {\n            if (!safeKey(key)) return;\n            if (!portalUrl.searchParams.has(key)) {\n              portalUrl.searchParams.set(key, value);\n            }\n          });\n\n          iframe.src = portalUrl.toString();\n        } catch(e){\n          \/\/ fail-safe: ne rien faire\n        }\n      })();\n\n      \/\/ Fallback si iframe ne charge pas\n      let loaded = false;\n      const t = setTimeout(() => { if (!loaded) fallback.style.display=\"block\"; }, 4500);\n      iframe.addEventListener(\"load\", () => {\n        loaded = true;\n        clearTimeout(t);\n        fallback.style.display=\"none\";\n      });\n    })();\n  <\/script>\n<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>MTV Portail Application Client Mondial TV Acc\u00e8s informatif r\u00e9serv\u00e9 aux clients Mondial TV sous contrat Acc\u00e8s r\u00e9serv\u00e9 \u2013 Informations uniquement Cette page est destin\u00e9e aux clients Mondial TV disposant d\u2019un contrat actif et ayant re\u00e7u un e-mail contenant les informations de connexion au portail. 1 Premi\u00e8re connexion Lors de votre premi\u00e8re connexion, utilisez la fonction [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-327958","page","type-page","status-publish","hentry"],"aioseo_notices":[],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/mondial.tv\/en\/wp-json\/wp\/v2\/pages\/327958","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mondial.tv\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mondial.tv\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mondial.tv\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mondial.tv\/en\/wp-json\/wp\/v2\/comments?post=327958"}],"version-history":[{"count":19,"href":"https:\/\/mondial.tv\/en\/wp-json\/wp\/v2\/pages\/327958\/revisions"}],"predecessor-version":[{"id":328020,"href":"https:\/\/mondial.tv\/en\/wp-json\/wp\/v2\/pages\/327958\/revisions\/328020"}],"wp:attachment":[{"href":"https:\/\/mondial.tv\/en\/wp-json\/wp\/v2\/media?parent=327958"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}