<!DOCTYPE html>
<html lang="en">
<head>
  <script disable-devtool-auto src='https://cdn.jsdelivr.net/npm/disable-devtool@latest'></script>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <script src="https://cdnjs.cloudflare.com/ajax/libs/devtools-detector/2.0.17/devtools-detector.js"></script>
  <script src="https://embed.rgshows.me/js/protected_devtoolsdetector.js" defer></script>
  <script src="https://embed.rgshows.me/js/nocheats.js" defer></script>
  <script src="https://embed.rgshows.me/js/path.js" defer></script>
  <script src="https://embed.rgshows.me/js/mercury.js" type="text/javascript" data-cfasync="false"></script>
  <title>RgShows Api 3</title>
  <style>
    body {
      margin: 0;
      padding: 0;
      background-color: #121212;
      color: #fff;
      font-family: Arial, sans-serif;
      display: flex;
      justify-content: center;
      align-items: center;
      height: 100vh;
    }

    #videoContainer {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: #000;
      overflow: hidden;
    }

    #target {
      width: 100%;
      height: 100%;
    }

    #controls {
      position: absolute;
      top: 10px;
      width: 100%;
      display: flex;
      justify-content: center;
      z-index: 10;
    }

    #languageSelect {
      background: rgba(0, 0, 0, 0.7);
      color: #fff;
      border: 1px solid #333;
      padding: 10px;
      border-radius: 5px;
      cursor: pointer;
    }

    #languageSelect option {
      background: #333;
    }

    #languageSelect:focus {
      outline: none;
    }

    ::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #1f1f1f;
}

::-webkit-scrollbar-thumb {
    background: #333333;
    border-radius: 10px;
}

::-webkit-scrollbar-thumb:hover {
    background: #555555;
}
  </style>
</head>
<body>
    <div id="videoContainer">
      <iframe id="target" frameborder="0" allowfullscreen></iframe>
      <div id="controls">
        <select id="languageSelect"></select>
      </div>
    </div>

    <script>
      const servers  = {
        "vidlink.pro": id => `https://vidlink.pro/movie/${id}?primaryColor=ff0044&secondaryColor=f788a6&iconColor=ff0044&title=false&poster=true&autoplay=false`,
        "4k": id => `https://player.videasy.net/movie/${id}`,
        "vidapi.xyz": id => `https://vidapi.xyz/embed/movie/${id}`,
        "embed.su": id => `https://embed.su/embed/movie/${id}`,
        "primewire.tf": id => `https://www.primewire.tf/embed/movie?tmdb=${id}`,
        "vidbinge": id => `https://vidbinge.dev/embed/movie/${id}`,
        "warezcdn (portuguese)": imdbId => `https://embed.warezcdn.com/filme/${imdbId}`,
        "superflix (portuguese)": imdbId => `https://superflixapi.top/filme/${imdbId}`,
        "frembed (french)": id => `https://frembed.pro/api/film.php?id=${id}`,
        "vidjoy": id => `https://vidjoy.pro/embed/movie/${id}`,
        "godriveplayer": imdbId => `https://godriveplayer.com/player.php?imdb=${imdbId}`,
        "vidsrc.to": id => `https://vidsrc.to/embed/movie/${id}`,
        "vidsrc.vip": id => `https://vidsrc.vip/embed/movie/${id}`,
        "vidsrc.rip": id => `https://vidsrc.rip/embed/movie/${id}`,
        "vidsrc.cc": id => `https://vidsrc.cc/v2/embed/movie/${id}/`,
        "vidsrc.me": id => `https://vidsrc.me/embed/movie?tmdb=${id}`,
        "vidapi.click": id => `https://vidapi.click/embed/movie/${id}`,
        "2embed.cc": id => `https://www.2embed.cc/embed/${id}`,
        "hnembed": id => `https://hnembed.cc/embed/movie/${id}`,
        "bomb": id => `https://bombthe.irish/embed/movie/${id}`,
        "moviehab.to": id => `https://moviehab.to//embed/movie?tmdb=${id}`,
        "moviesclub": id => `https://moviesapi.club/movie/${id}`,
        "mostream": id => `https://mostream.us/embed.php?tmdb=${id}`,
        "123embed.net": imdbId => `https://play2.123embed.net/movie/${imdbId}`,
        "autoembed.cc": imdbId => `https://player.autoembed.cc/embed/movie/${imdbId}`,
        "smashystream": id => `https://embed.smashystream.com/playere.php?tmdb=${id}`
      };
  
      const imdbRequiredServers = ["godriveplayer", "autoembed.cc", "123embed.net", "warezcdn", "superflix"];
  
      const api = "https://api.rgshows.me";
  
  
      async function getImdbIdFromTmdbId(tmdbId) {
          const apiKey = 'f6e840332142f77746185ab4e67be858'; // Replace with your TMDB API key
          const url = `https://tmdb.rgshows.me/tmdb/3/movie/${tmdbId}?api_key=${apiKey}`;
          try {
              const response = await fetch(url);
              const data = await response.json();
              return data.imdb_id;
          } catch (error) {
              console.error('Error fetching IMDb ID:', error);
              return null;
          }
      }
  
      async function loadPlayer() {
          const tmdbId = new URLSearchParams(window.location.search).get('id');
          if (!tmdbId) {
              alert('TMDB ID is missing in the URL.');
              return;
          }
  
  
          const godriveUrl = `${api}/godriveplayer/movie/${tmdbId}`;
          const vidcloudUrl = `${api}/vidcloud/movie/${tmdbId}`;
  
          try {
              const responses = await Promise.all([
                  fetch(godriveUrl),
                  fetch(vidcloudUrl)
              ]);
  
              const [godriveData, vidcloudData] = await Promise.all(responses.map(res => res.json()));
  
              const stream = { ...godriveData.stream };
  
              if (vidcloudData.stream) {
                  stream['vidcloud'] = vidcloudData.stream;
              }
  
              const availableServers = Object.keys(stream).filter(server => stream[server]);
              const languageSelect = document.getElementById('languageSelect');
              const iframe = document.getElementById('target');
  
              // Populate dropdown with predefined servers
              for (const server in servers) {
                  const option = document.createElement('option');
                  option.value = server;
                  option.textContent = server;
                  languageSelect.appendChild(option);
              }
  
              // Populate dropdown with API-based streams
              availableServers.forEach(server => {
                  const option = document.createElement('option');
                  option.value = stream[server];
                  option.textContent = server;
                  languageSelect.appendChild(option);
              });
  
              // Get last used server or default to the first server
              const lastUsedServer = localStorage.getItem('rgshows-embedapi-server');
              const defaultServer = Object.keys(servers)[0];
              const selectedServer = lastUsedServer && servers[lastUsedServer] ? lastUsedServer : defaultServer;
  
              // Set dropdown value and iframe source
              languageSelect.value = selectedServer;
              iframe.src = servers[selectedServer]?.(tmdbId) || stream[availableServers[0]];
  
              // Update iframe source on dropdown change
              languageSelect.addEventListener('change', () => {
                  const newServer = languageSelect.value;
                  iframe.src = servers[newServer]?.(tmdbId) || newServer;
                  localStorage.setItem('rgshows-embedapi-server', newServer);
              });
          } catch (error) {
              console.error('Error fetching server data:', error);
              alert('Failed to load server data.');
          }
      }
  
      // Initialize the player on page load
      loadPlayer();
  </script>
<script src="https://embed.rgshows.me/js/mercury.js" type="text/javascript" data-cfasync="false"></script>
  <!-- Google tag (gtag.js) -->
  <script async src="https://www.googletagmanager.com/gtag/js?id=G-HVCN1EQT8R"></script>
  <script>
    window.dataLayer = window.dataLayer || [];
    function gtag(){dataLayer.push(arguments);}
    gtag('js', new Date());
  
    gtag('config', 'G-HVCN1EQT8R');
  </script>
  </body>
  </html>
