Gatech Canvas Team Annoucement Script for TA

Perform multiple actions

Per 17-01-2024. Zie de nieuwste versie.

Voor het installeren van scripts heb je een extensie nodig, zoals Tampermonkey, Greasemonkey of Violentmonkey.

Voor het installeren van scripts heb je een extensie nodig, zoals Tampermonkey of Violentmonkey.

Voor het installeren van scripts heb je een extensie nodig, zoals Tampermonkey of Violentmonkey.

Voor het installeren van scripts heb je een extensie nodig, zoals Tampermonkey of Userscripts.

Voor het installeren van scripts heb je een extensie nodig, zoals {tampermonkey_link:Tampermonkey}.

Voor het installeren van scripts heb je een gebruikersscriptbeheerder nodig.

(Ik heb al een user script manager, laat me het downloaden!)

Voor het installeren van gebruikersstijlen heb je een extensie nodig, zoals {stylus_link:Stylus}.

Voor het installeren van gebruikersstijlen heb je een extensie nodig, zoals {stylus_link:Stylus}.

Voor het installeren van gebruikersstijlen heb je een extensie nodig, zoals {stylus_link:Stylus}.

Voor het installeren van gebruikersstijlen heb je een gebruikersstijlbeheerder nodig.

Voor het installeren van gebruikersstijlen heb je een gebruikersstijlbeheerder nodig.

Voor het installeren van gebruikersstijlen heb je een gebruikersstijlbeheerder nodig.

(Ik heb al een beheerder - laat me doorgaan met de installatie!)

// ==UserScript==
// @name         Gatech Canvas Team Annoucement Script for TA
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  Perform multiple actions
// @author       thuanvo09
// @match        https://gatech.instructure.com/groups/*/discussion_topics/new?is_announcement=true
// @grant        window.close
// @license MIT
// ==/UserScript==

(function() {
    'use strict';

    // For open multiple tabs using Chrome console

    /*



    const start_team_id = 356322
    const end_team_id = 356348

    // teams left
    const ignore = [356340, 356342]

function urlGen(team_id) {
        return `https://gatech.instructure.com/groups/${team_id}/discussion_topics/new?is_announcement=true`
    }

    for (let i = start_team_id; i <= end_team_id; i+=2) {
        if (ignore.includes(i)) {
            continue
        }
        const url = urlGen(i)
        window.open(url, '_blank')
    }




    */

    const post_title = "This is a title";

    // convert markdown to html, use html in the content

    const post_content =
`
<h2>Hello</h2>
<p><em>This&nbsp;</em></p>
<h3><strong>is&nbsp;</strong></h3>
<p>an</p>
<pre>annoucement</pre>
`;

    function openAndModify() {
        window.onload = function () {
            setTimeout(() => {

                // title
                const title_inp = document.getElementById("discussion-title");
                title_inp.value = post_title;

                document.getElementsByClassName("css-lgvgsl-view--inlineBlock-baseButton")[3].click()

                // content
                const content_inp = document.getElementById("discussion-topic-message11")
                content_inp.value = post_content


                document.getElementsByClassName("css-lgvgsl-view--inlineBlock-baseButton")[0].click()

                // BE CAREFUL WITH THIS ACTION, NEED TO TEST
                // SUBMIT
                // document.getElementsByClassName("submit_button")[0].click()

                //                 console.log('closing')
                //                 window.close()


            }, 2000);
        };
    }

    openAndModify();



})();