CodeHS Cheat

Funny

Versione datata 03/06/2024. Vedi la nuova versione l'ultima versione.

Dovrai installare un'estensione come Tampermonkey, Greasemonkey o Violentmonkey per installare questo script.

You will need to install an extension such as Tampermonkey to install this script.

Dovrai installare un'estensione come Tampermonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Userscripts per installare questo script.

Dovrai installare un'estensione come ad esempio Tampermonkey per installare questo script.

Dovrai installare un gestore di script utente per installare questo script.

(Ho già un gestore di script utente, lasciamelo installare!)

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

(Ho già un gestore di stile utente, lasciamelo installare!)

// ==UserScript==
// @name         CodeHS Cheat
// @namespace    http://tampermonkey.net/
// @version      2024-05-29 v2
// @description  Funny
// @author       Anghel sefu la bani
// @match        https://codehs.com/student/*/assignment/*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=codehs.com
// @grant    GM_setClipboard
// @license MIT
// ==/UserScript==

(function() {

    function cleanHTMLString(htmlString) {
        // Remove comments
        htmlString = htmlString.replace(/<!--[\s\S]*?-->/g, '');

        // Remove <noscript> tags and their content
        htmlString = htmlString.replace(/<noscript[\s\S]*?<\/noscript>/gi, '');

        // Remove <script> tags inside the <head> section
        htmlString = htmlString.replace(/(<head[\s\S]*?)<script[\s\S]*?<\/script>/gi, (match, p1) => {
            // Remove <script> tags from the <head> section content
            return p1.replace(/<script[\s\S]*?<\/script>/gi, '');
        });

        return `<!DOCTYPE html>\n` + htmlString;
    }

    'use strict';
    let htmlc;

    console.log("FUNNY SKIBIDI LOADED");

    const textField = document.querySelector('.ace_text');
    const ace_content = document.querySelector('.ace_content');
    const text_area = document.querySelector('.ace_text-input');
    const xbutton = document.querySelector('.start-ex-button');
    const iframe = document.querySelector('.sample-sols');

    window.addEventListener('load', function () {

        const secondHTML = iframe.contentDocument || iframe.contentWindow.document;

        console.log(secondHTML.children[0]);
        const HTMLCode = secondHTML.children[0].outerHTML;
        htmlc = cleanHTMLString(HTMLCode);
        console.log(htmlc);
        GM_setClipboard (htmlc);
        console.log("CODE COPIED");
        xbutton.click();

        setTimeout(part2, 500);
    });

    function part2() {
        text_area.focus();
    }
})();