// ==UserScript== // @name Scratch Forums Composer Swag // @namespace http://aputurk.tk/ // @version 0.2.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 https://update.greasyfork.icu/scripts/8932/Scratch%20Forums%20Composer%20Swag.user.js // @updateURL https://update.greasyfork.icu/scripts/8932/Scratch%20Forums%20Composer%20Swag.meta.js // ==/UserScript== this.$ = this.jQuery = jQuery.noConflict(true); var startScript = function () { // buttons for google, wikipedia, and wiki $('
  • Google link
  • ').insertAfter('.markItUpButton6').find('a').css('background-image', 'url(http://i.cubeupload.com/zBWOi5.png)').click(function (e) { var term = prompt('Enter a search term'); if (term === null || term === '') { e.preventDefault(); return false; } $('#id_body').replaceSel('[google]' + term + '[/google]'); e.preventDefault(); return false; }); $('
  • Scratch wiki link
  • ').insertAfter('.markItUpButtonSwag10').find('a').css('background-image', 'url(http://i.cubeupload.com/sxxPE3.png)').click(function (e) { var term = prompt('Enter an article'); if (term === null || term === '') { e.preventDefault(); return false; } $('#id_body').replaceSel('[wiki]' + term + '[/wiki]'); e.preventDefault(); return false; }); $('
  • Wikipedia article
  • ').insertAfter('.markItUpButtonSwag11').find('a').css('background-image', 'url(http://i.cubeupload.com/2Jwmpr.png)').click(function (e) { var term = prompt('Enter an article'); if (term === null || term === '') { e.preventDefault(); return false; } $('#id_body').replaceSel('[wp]' + term + '[/wp]'); e.preventDefault(); return false; }); // 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($('