// ==UserScript== // @name Scratch Forums Composer Swag // @namespace http://aputurk.tk/ // @version 0.1 // @description Adds more posting tools to the Scratch forums composer // @author MegaApuTurkUltra // @include http://scratch.mit.edu/discuss* // @include https://scratch.mit.edu/discuss* // @require https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js // @require https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.3/jquery-ui.min.js // @grant none // @downloadURL none // ==/UserScript== this.$ = this.jQuery = jQuery.noConflict(true); console.log("Scratch forums swag running"); // buttons for color, center, and code $('
  • Color
  • ').insertAfter(".markItUpButton7") .find("a").css("background-image", "url(http://i.cubeupload.com/PsGwu4.png)").click(function(e){ var color = prompt("Enter a hex color, rgb(a) color, or CSS color name"); if(color === null || color === ""){ e.preventDefault(); return false; } $("#id_body").replaceSel('[color='+color+']'+$("#id_body").getSel()+'[/color]'); e.preventDefault(); return false; }); $('
  • Center
  • ').insertAfter(".markItUpButtonSwag1") .find("a").css("background-image", "url(http://i.cubeupload.com/tfrXFd.png)").click(function(e){ $("#id_body").replaceSel('[center]'+$("#id_body").getSel()+'[/center]'); e.preventDefault(); return false; }); $('
  • Code
  • ').insertAfter(".markItUpButton14") .find("a").css("background-image", "url(http://i.cubeupload.com/XqOaKz.png)").click(function(e){ var code = prompt("Enter a language"); if(code === null || code === ""){ e.preventDefault(); return false; } $("#id_body").replaceSel('[code='+code+']\n'+$("#id_body").getSel()+'\n[/code]'); e.preventDefault(); return false; }); // and now for the swaggy sticky quoter var currentStickyTitle = ""; var currentStickyLink = ""; var onSelectionPage = false; var cannedDlg = $("
    Loading...
    ").dialog({ autoOpen: false, buttons: { "Cancel": function(){ $(this).dialog("close"); } }, width: 500, height: 500, show: "fade", hide: "fade", dialogClass: "jqui-modal canned-dlg" }); var menu; var select = $("

    Select the part of the post you want, then click OK

    \
    "); var ajaxLoading = false; function loadAjax(){ if(ajaxLoading) return; ajaxLoading = true; $.get("/discuss/", {dataType:"html"}, function(data){ menu = $(""); $(data).find(".tclcon a").each(function(){ menu.append( $("
  • ").addClass("canned-menu-item").attr("data-link", $(this).attr("href")).append($("