coobert

old html homepage

Dec 1st, 2024
46
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 14.53 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6.     <title>Coobertory - Home</title>
  7.     <link rel="icon" href="images/coobert.ico" type="image/x-icon">
  8.     <link href="https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;700&display=swap" rel="stylesheet">
  9.     <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
  10.     <style>
  11.         body {
  12.             font-family: roboto;
  13.             line-height: 1.6;
  14.             margin: 0;
  15.             padding: 20px;
  16.             min-height: 100vh;
  17.             display: flex;
  18.             align-items: center;
  19.             background: linear-gradient(-45deg, #ee7752, #e73c7e, #23a6d5, #23d5ab);
  20.             background-size: 400% 400%;
  21.             animation: gradient 15s ease infinite;
  22.         }
  23.  
  24.         @keyframes gradient {
  25.             0% {
  26.                 background-position: 0% 50%;
  27.             }
  28.             50% {
  29.                 background-position: 100% 50%;
  30.             }
  31.             100% {
  32.                 background-position: 0% 50%;
  33.             }
  34.         }
  35.  
  36.         .container {
  37.             max-width: 1200px;
  38.             margin: 0 auto;
  39.             text-align: center;
  40.         }
  41.  
  42.         h1 {
  43.             font-size: 3.5em;
  44.             color: #f7f7f7;
  45.             margin-bottom: 20px;
  46.             text-shadow: 2px 2px 4px rgba(0,0,0,0.2);
  47.         }
  48.  
  49.         p {
  50.             font-size: 1em;
  51.             color: #f7f7f7;
  52.             margin-bottom: 20px;
  53.             text-shadow: 2px 2px 4px rgba(0,0,0,0.2);
  54.         }
  55.  
  56.         .subtitle {
  57.             font-size: 1.5em;
  58.             color: #f7f7f7;
  59.             margin-bottom: 40px;
  60.         }
  61.  
  62.         .main-buttons {
  63.             display: flex;
  64.             justify-content: center;
  65.             gap: 30px;
  66.             margin-top: 50px;
  67.         }
  68.  
  69.         .button {
  70.             background: #3f403f;
  71.             color: white;
  72.             padding: 20px 40px;
  73.             border-radius: 8px;
  74.             text-decoration: none;
  75.             font-size: 1.2em;
  76.             transition: all 0.3s ease;
  77.             box-shadow: 0 4px 6px rgba(0,0,0,0.1);
  78.         }
  79.  
  80.         .discord {
  81.             background: #7289DA;
  82.             color: white;
  83.             padding: 20px 40px;
  84.             border-radius: 8px;
  85.             text-decoration: none;
  86.             font-size: 1.2em;
  87.             transition: all 0.3s ease;
  88.             box-shadow: 0 4px 6px rgba(0,0,0,0.1);
  89.         }
  90.  
  91.         .button:hover {
  92.             transform: translateY(-5px);
  93.             background: #2c2d2c;
  94.             box-shadow: 0 6px 12px rgba(0,0,0,0.2);
  95.         }
  96.  
  97.         .feature-section {
  98.             margin-top: 60px;
  99.             display: grid;
  100.             grid-template-columns: repeat(3, 1fr);
  101.             gap: 30px;
  102.             color: #f7f7f7;
  103.             max-width: 100%;
  104.             padding: 0 20px;
  105.         }
  106.        
  107.         @media (max-width: 768px) {
  108.             .feature-section {
  109.                 grid-template-columns: 1fr;
  110.             }
  111.         }
  112.        
  113.         .feature-box {
  114.             background: rgba(63, 64, 63, 0.8);
  115.             padding: 30px;
  116.             border-radius: 8px;
  117.             box-shadow: 0 4px 6px rgba(0,0,0,0.1);
  118.         }
  119.  
  120.         .feature-box h3 {
  121.             margin-top: 0;
  122.         }
  123.  
  124.         .feature-box a {
  125.             color: #f7f7f7;
  126.         }
  127.  
  128.         .settings-icon {
  129.             position: fixed;
  130.             top: 20px;
  131.             right: 20px;
  132.             color: white;
  133.             font-size: 24px;
  134.             cursor: pointer;
  135.             transition: transform 0.3s ease;
  136.         }
  137.        
  138.         .settings-icon:hover {
  139.             transform: rotate(90deg);
  140.         }
  141.  
  142.  
  143.         .settings-modal {
  144.             display: none;
  145.             position: fixed;
  146.             top: 50%;
  147.             left: 50%;
  148.             transform: translate(-50%, -50%);
  149.             background: rgba(63, 64, 63, 0.95);
  150.             padding: 20px;
  151.             border-radius: 8px;
  152.             box-shadow: 0 4px 6px rgba(0,0,0,0.1);
  153.             z-index: 1001;
  154.             color: white;
  155.             min-width: 300px;
  156.         }
  157.  
  158.         .modal-header {
  159.             display: flex;
  160.             justify-content: space-between;
  161.             align-items: center;
  162.             margin-bottom: 20px;
  163.         }
  164.  
  165.         .close-btn {
  166.             cursor: pointer;
  167.             font-size: 20px;
  168.         }
  169.  
  170.         .setting-item {
  171.             display: flex;
  172.             justify-content: space-between;
  173.             align-items: center;
  174.             margin: 10px 0;
  175.         }
  176.  
  177.         .switch {
  178.             position: relative;
  179.             display: inline-block;
  180.             width: 60px;
  181.             height: 34px;
  182.         }
  183.  
  184.         .switch input {
  185.             opacity: 0;
  186.             width: 0;
  187.             height: 0;
  188.         }
  189.  
  190.         .slider {
  191.             position: absolute;
  192.             cursor: pointer;
  193.             top: 0;
  194.             left: 0;
  195.             right: 0;
  196.             bottom: 0;
  197.             background-color: #ccc;
  198.             transition: .4s;
  199.             border-radius: 34px;
  200.         }
  201.  
  202.         .slider:before {
  203.             position: absolute;
  204.             content: "";
  205.             height: 26px;
  206.             width: 26px;
  207.             left: 4px;
  208.             bottom: 4px;
  209.             background-color: white;
  210.             transition: .4s;
  211.             border-radius: 50%;
  212.         }
  213.  
  214.         input:checked + .slider {
  215.             background-color: #2196F3;
  216.         }
  217.  
  218.         input:checked + .slider:before {
  219.             transform: translateX(26px);
  220.         }
  221.  
  222.         .theme-dropdown {
  223.             padding: 8px;
  224.             border-radius: 4px;
  225.             background: #2196F3;
  226.             color: white;
  227.             border: none;
  228.             cursor: pointer;
  229.         }
  230.        
  231.         .theme-dropdown option {
  232.             background: #3f403f;
  233.             color: white;
  234.         }
  235.        
  236.         .theme-dark {
  237.             background: #1a1a1a !important;
  238.             background-image: none !important;
  239.         }
  240.        
  241.         .theme-light {
  242.             background: #f0f0f0 !important;
  243.             background-image: none !important;
  244.         }
  245.        
  246.         .theme-sunset {
  247.             background: linear-gradient(-45deg, #ff8c42, #ff3c6f, #6d72c3, #5941a9) !important;
  248.             background-size: 400% 400% !important;
  249.             animation: gradient 15s ease infinite !important;
  250.         }
  251.        
  252.         .theme-ocean {
  253.             background: linear-gradient(-45deg, #00b4d8, #0077b6, #023e8a, #03045e) !important;
  254.             background-size: 400% 400% !important;
  255.             animation: gradient 15s ease infinite !important;
  256.         }
  257.  
  258.     </style>
  259. </head>
  260. <body>
  261.     <div class="settings-icon">
  262.         <i class="fas fa-cog"></i>
  263.     </div>
  264.  
  265.     <div class="settings-modal">
  266.         <div class="modal-header">
  267.             <h3>Settings</h3>
  268.             <span class="close-btn">&times;</span>
  269.         </div>
  270.         <div class="setting-item">
  271.             <div>
  272.                 <div>Incognito Mode</div>
  273.                 <small>Disclose your tab to say Google</small>
  274.             </div>
  275.             <label class="switch">
  276.                 <input type="checkbox" id="incognito-toggle">
  277.                 <span class="slider"></span>
  278.             </label>
  279.         </div>
  280.         <div class="setting-item">
  281.             <div>
  282.                 <div>Quick Exit</div>
  283.                 <small>Current key: <span id="current-key">Not Set</span></small>
  284.             </div>
  285.             <div style="display: flex; gap: 10px; align-items: center;">
  286.                 <label class="switch">
  287.                     <input type="checkbox" id="quick-exit-toggle">
  288.                     <span class="slider"></span>
  289.                 </label>
  290.                 <button id="change-key-btn" style="padding: 5px 10px; border-radius: 4px; background: #2196F3; border: none; color: white; cursor: pointer;">Change Key</button>
  291.             </div>
  292.         </div>
  293.         <div class="setting-item">
  294.             <div>
  295.                 <div>Theme</div>
  296.                 <small>Choose your preferred color scheme</small>
  297.             </div>
  298.             <select id="theme-selector" class="theme-dropdown">
  299.                 <option value="default">Default Gradient</option>
  300.                 <option value="dark">Dark Mode</option>
  301.                 <option value="light">Light Mode</option>
  302.                 <option value="sunset">Sunset</option>
  303.                 <option value="ocean">Ocean</option>
  304.             </select>
  305.         </div>
  306.     </div>
  307.    
  308.     <div class="container">
  309.         <h1>Coobertory</h1>
  310.         <div class="subtitle">Your Ultimate Gaming Collection Hub</div>
  311.        
  312.         <div class="main-buttons">
  313.             <a href="pages/games.html" class="button">Browse Games</a>
  314.             <a href="pages/other.html" class="button">Other</a>
  315.             <a href="pages/links.html" class="button">Links</a>
  316.             <a href="https://github.com/EliteCronax/Coobertory" class="button">GitHub</a>
  317.             <a href="https://discord.gg/ayx9jUzpaF" class="discord">Discord</a>
  318.         </div>
  319.  
  320.         <div class="settings-icon" onclick="settingsModal.style.display='block'">
  321.             <i class="fas fa-cog"></i>
  322.         </div>
  323.  
  324.         <div class="feature-section">
  325.             <div class="feature-box">
  326.                 <h3>Free Games</h3>
  327.                 <p>Access a wide variety of games without any cost</p>
  328.             </div>
  329.             <div class="feature-box">
  330.                 <h3>No Downloads</h3>
  331.                 <p>Play instantly in your browser. All the games are collected from Github and may be taken down</p>
  332.             </div>
  333.             <div class="feature-box">
  334.                 <h3>Regular Updates</h3>
  335.                 <p>New games added frequently. Almost daily. Visit my <a href="https://github.com/EliteCronax/Coobertory">Github</a> and make a pull request for more games</p>
  336.             </div>
  337.         </div>
  338.     </div>
  339.  
  340.     <script>
  341.         const settingsIcon = document.querySelector('.settings-icon');
  342.         const settingsModal = document.querySelector('.settings-modal');
  343.         const closeBtn = document.querySelector('.close-btn');
  344.         const incognitoToggle = document.getElementById('incognito-toggle');
  345.  
  346.         document.addEventListener('DOMContentLoaded', () => {
  347.             const savedIncognito = localStorage.getItem('incognitoMode');
  348.             if (savedIncognito === 'true') {
  349.                 incognitoToggle.checked = true;
  350.                 updatePageAppearance(true);
  351.             }
  352.         });
  353.  
  354.         settingsIcon.addEventListener('click', () => {
  355.             settingsModal.style.display = 'block';
  356.         });
  357.  
  358.         closeBtn.addEventListener('click', () => {
  359.             settingsModal.style.display = 'none';
  360.         });
  361.  
  362.         window.addEventListener('click', (e) => {
  363.             if (e.target === settingsModal) {
  364.                 settingsModal.style.display = 'none';
  365.             }
  366.         });
  367.  
  368.         function updatePageAppearance(isIncognito) {
  369.             if (isIncognito) {
  370.                 document.title = 'Google';
  371.                 const favicon = document.querySelector("link[rel='icon']");
  372.                 favicon.href = 'images/google.png';
  373.             } else {
  374.                 document.title = 'Coobertory - Home';
  375.                 const favicon = document.querySelector("link[rel='icon']");
  376.                 favicon.href = 'images/coobert.ico';
  377.             }
  378.         }
  379.  
  380.         incognitoToggle.addEventListener('change', () => {
  381.             localStorage.setItem('incognitoMode', incognitoToggle.checked);
  382.             updatePageAppearance(incognitoToggle.checked);
  383.         });
  384.  
  385.         const changeKeyBtn = document.getElementById('change-key-btn');
  386.         const currentKeySpan = document.getElementById('current-key');
  387.         let isListeningForKey = false;
  388.         let quickExitKey = localStorage.getItem('quickExitKey') || 'Escape';
  389.        
  390.         currentKeySpan.textContent = quickExitKey;
  391.        
  392.         changeKeyBtn.addEventListener('click', () => {
  393.             if (!isListeningForKey) {
  394.                 isListeningForKey = true;
  395.                 changeKeyBtn.textContent = 'Press any key...';
  396.                 changeKeyBtn.style.background = '#ff4444';
  397.             }
  398.         });
  399.        
  400.         document.addEventListener('keydown', (e) => {
  401.             if (isListeningForKey) {
  402.                 e.preventDefault();
  403.                 quickExitKey = e.key;
  404.                 localStorage.setItem('quickExitKey', quickExitKey);
  405.                 currentKeySpan.textContent = quickExitKey;
  406.                 changeKeyBtn.textContent = 'Change Key';
  407.                 changeKeyBtn.style.background = '#2196F3';
  408.                 isListeningForKey = false;
  409.             } else if (e.key === quickExitKey && quickExitToggle.checked) {
  410.                window.location.href = 'https://www.google.com';
  411.             }
  412.         });
  413.        
  414.         document.addEventListener('DOMContentLoaded', () => {
  415.             const savedIncognito = localStorage.getItem('incognitoMode');
  416.             const savedQuickExit = localStorage.getItem('quickExit');
  417.             quickExitKey = localStorage.getItem('quickExitKey') || 'Escape';
  418.             currentKeySpan.textContent = quickExitKey;
  419.            
  420.             if (savedIncognito === 'true') {
  421.                 incognitoToggle.checked = true;
  422.                 updatePageAppearance(true);
  423.             }
  424.            
  425.             if (savedQuickExit === 'true') {
  426.                 quickExitToggle.checked = true;
  427.             }
  428.         });
  429.  
  430.         const themeSelector = document.getElementById('theme-selector');
  431.        
  432.         document.addEventListener('DOMContentLoaded', () => {
  433.             const savedTheme = localStorage.getItem('selectedTheme');
  434.             if (savedTheme) {
  435.                 themeSelector.value = savedTheme;
  436.                 applyTheme(savedTheme);
  437.             }
  438.         });
  439.        
  440.         themeSelector.addEventListener('change', (e) => {
  441.             const selectedTheme = e.target.value;
  442.             localStorage.setItem('selectedTheme', selectedTheme);
  443.             applyTheme(selectedTheme);
  444.         });
  445.        
  446.         function applyTheme(theme) {
  447.             document.body.classList.remove('theme-dark', 'theme-light', 'theme-sunset', 'theme-ocean');
  448.            
  449.             if (theme !== 'default') {
  450.                 document.body.classList.add(`theme-${theme}`);
  451.             }
  452.         }
  453.     </script>
  454. </body>
  455. </html>
Advertisement
Add Comment
Please, Sign In to add comment