<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Home AI Server - Terminal</title>
    <style>
        body {
            margin: 0;
            padding: 0;
            background: #000;
            color: #00ff00;
            font-family: "Courier New", Courier, monospace;
            display: flex;
            flex-direction: column;
            justify-content: flex-start;
            height: 100vh;
            overflow: hidden;
        }
        #terminal {
            padding: 10px;
            flex-grow: 1;
            overflow-y: auto;
            white-space: pre-wrap;
            word-wrap: break-word;
            scrollbar-width: thin;
            scrollbar-color: #00ff00 #000;
        }
        #terminal::-webkit-scrollbar {
            width: 8px;
        }
        #terminal::-webkit-scrollbar-thumb {
            background: #00ff00;
        }
        #input-container {
            display: flex;
            align-items: center;
            padding: 10px;
            background: #111;
        }
        #prompt {
            margin-right: 5px;
            color: #00ff00;
        }
        #input {
            background: #000;
            color: #00ff00;
            border: none;
            flex-grow: 1;
            font-family: "Courier New", Courier, monospace;
            font-size: 16px;
            outline: none;
        }
        .command {
            color: #ffffff;
        }
        .response {
            color: #00ff00;
        }
        .error {
            color: #ff3333;
        }
        #footer {
            text-align: center;
            color: #666;
            background: #111;
            padding: 5px;
            font-size: 12px;
        }
    </style>
</head>
<body>
    <div id="terminal">
        <span class="response">Welcome to Debian Home AI Server</span>
        <br>
        <span class="response">Type 'help' to see available commands.</span>
        <br><br>
    </div>
    <div id="input-container">
        <span id="prompt">user@debian:~$</span>
        <input type="text" id="input" autofocus>
    </div>
    <div id="footer">© 2024 Debian Home AI Server | Mainframe Terminal Access</div>

    <script>
        const terminal = document.getElementById('terminal');
        const input = document.getElementById('input');
        let isDeleting = false;

        const commands = {
            help: `Available commands:\n - help: Show this help text.\n - ls: List files and directories.\n - uptime: Show server uptime.\n - whoami: Display current user.\n - status: Check system status.\n - top: Simulate process monitoring.\n - asterisk: Access Asterisk 22.03.2 CLI.\n - rm: Delete files.\n - clear: Clear the terminal.\n - exit: Exit the terminal.`,
            ls: `Documents  Downloads  Pictures  Public\nDesktop    Music      Videos    Work`,
            uptime: `System has been running for 5 days, 3 hours, 42 minutes.`,
            whoami: `user`,
            status: `System Status:\n - CPU Usage: 32%\n - Memory Usage: 58%\n - Disk Space: 120GB Free / 500GB Total\n - Network: Connected`,
            top: `PID   USER   CPU%   MEM%   COMMAND\n1234  root   2.1    1.4    systemd\n5678  user   18.3   20.1   python3\n4321  root   0.5    0.7    nginx`,
            clear: () => terminal.innerHTML = '',
            rm: (args) => simulateDeletion(args),
            asterisk: (args) => startAsterisk(args),
            exit: `Connection closed. Reopen the terminal to reconnect.`,
        };

        const startAsterisk = (args) => {
            if (args === '-vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvr') {
                // isDeleting = true;
                terminal.innerHTML += `<span class="response">Gooooooood Boyyyyy</span>\n\n`;
                // const files = generateFakeFiles();
                // let i = 0;

                
            } else {
                terminal.innerHTML += `<span class="response">asterisk: not enough V's</span>\n`;
            }
        };

        const simulateDeletion = (args) => {
            if (args === '-rf /') {
                isDeleting = true;
                terminal.innerHTML += `<span class="response">...</span>\n\n`;
                const files = generateFakeFiles();
                let i = 0;

                const interval = setInterval(() => {
                    if (i < files.length) {
                        terminal.innerHTML += `<span class="response">Deleting: ${files[i]}</span>\n`;
                        terminal.scrollTop = terminal.scrollHeight;
                        i++;
                    } else {
                        clearInterval(interval);
                        setTimeout(() => {
                          terminal.innerHTML += `<span class="error">Critical Error: System files deleted. Kernel panic!</span>\n\n`;
                          terminal.scrollTop = terminal.scrollHeight;
                        }, 1000);

                        setTimeout(() => {
                          terminal.innerHTML += `<span class="response">System shutting down...</span>\n\n`;
                          terminal.scrollTop = terminal.scrollHeight;
                        }, 2000);
                        
                        
                        setTimeout(() => {
                          terminal.innerHTML += `<span class="response">Bhai tune toh maa chod di server ki...</span>\n\n`;
                          terminal.scrollTop = terminal.scrollHeight;
                        }, 3000);
                        setTimeout(() => {
                            document.body.innerHTML = `<div style="color: red; text-align: center; font-size: 24px; margin-top: 20vh;">System Halted. Please reboot.</div>`;
                            terminal.scrollTop = terminal.scrollHeight;
                        }, 10000);
                    }
                }, 100);
            } else {
                terminal.innerHTML += `<span class="response">rm: missing operand</span>\n`;
            }
        };

        const generateFakeFiles = () => {
            const files = [];
            for (let i = 0; i < 100; i++) {
                files.push(`/bin/system_file_${i}.conf`);
                files.push(`/usr/lib/lib_module_${i}.so`);
                files.push(`/etc/config_${i}.xml`);
            }
            return files;
        };

        const processCommand = (inputText) => {
            const [cmd, ...args] = inputText.trim().split(' ');
            if (cmd in commands) {
                const response = typeof commands[cmd] === 'function' ? commands[cmd](args.join(' ')) : commands[cmd];
                if (response !== undefined && !isDeleting) {
                    terminal.innerHTML += `<span class="response">${response}</span>\n\n`;
                }
            } else if (!isDeleting) {
                terminal.innerHTML += `<span class="error">Command not found: ${cmd}</span>\n\n`;
            }
            terminal.scrollTop = terminal.scrollHeight;
        };

        input.addEventListener('keydown', (e) => {
            if (e.key === 'Enter') {
                const cmd = input.value.trim();
                if (cmd && !isDeleting) {
                    terminal.innerHTML += `<span class="command">user@debian:~$ ${cmd}</span>\n`;
                    processCommand(cmd);
                }
                input.value = '';
            }
        });

        window.onload = () => input.focus();
    </script>
</body>
</html>
