// ==UserScript== // @name GreasyFork Total Scripts(modified) // @namespace pxgamer // @version 0.2.9 // @description Shows a user's total scripts count on GreasyFork(modified). // @author NotYou // @include *greasyfork.org/*/users/* // @include *greasyfork.org/*/scripts* // @include *sleazyfork.org/*/users/* // @include *sleazyfork.org/*/scripts* // @require https://code.jquery.com/jquery-1.7.2.min.js // @license GPL-3.0-or-later // @license-link https://www.gnu.org/licenses/gpl-3.0.txt // @grant none // @downloadURL none // ==/UserScript== /* What's New?: * All languages support (https://greasyfork.org/en/scripts/20343/discussions/15913) * Displaying Total user's scripts near "Scripts" * Colours change parallel to the number count * jQuery bug fix * Total Scripts at search * Total Libraries at search * Include Sleazy Fork. * Works with local override. * Shows Total Styles * Total Libraries */ /* Script Update: * Better colors for low number for better visibility * Less Useless Code * Fixed Total Scripts at search * Better css identifying * Better js identifying * Better libraries identifying */ (function() { 'use strict'; let csstotal = document.querySelectorAll('[data-css-available-as-js="true"]').length; let libtotal = document.querySelectorAll('#user-library-script-list > li').length; let jstotal = document.querySelectorAll('#user-script-list > [data-css-available-as-js="false"]').length; // Total Scripts if (jstotal == 1) { $('div.sidebarred-main-content h3:first').append(' [' + jstotal + ' Total Script]'); } else if(jstotal >= 100) { $('div.sidebarred-main-content h3:first').append(' [' + jstotal + ' Total Scripts]'); } else if(jstotal >= 50) { $('div.sidebarred-main-content h3:first').append(' [' + jstotal + ' Total Scripts]'); } else if(jstotal >= 25) { $('div.sidebarred-main-content h3:first').append(' [' + jstotal + ' Total Scripts]'); } else if(jstotal >= 10) { $('div.sidebarred-main-content h3:first').append(' [' + jstotal + ' Total Scripts]'); } else if(jstotal >= 5) { $('div.sidebarred-main-content h3:first').append(' [' + jstotal + ' Total Scripts]'); } else if(jstotal > 1) { $('div.sidebarred-main-content h3:first').append(' [' + jstotal + ' Total Scripts]'); } else if(jstotal < 0){ $('div.sidebarred-main-content h3:first').append(' [ Unexpected error! ]'); } // Total Styles if (csstotal == 1) { $('div.sidebarred-main-content h3:first').append(' [' + csstotal + ' Total Style]'); } else if(csstotal >= 100) { $('div.sidebarred-main-content h3:first').append(' [' + csstotal + ' Total Styles]'); } else if(csstotal >= 50) { $('div.sidebarred-main-content h3:first').append(' [' + csstotal + ' Total Styles]'); } else if(csstotal >= 25) { $('div.sidebarred-main-content h3:first').append(' [' + csstotal + ' Total Styles]'); } else if(csstotal >= 10) { $('div.sidebarred-main-content h3:first').append(' [' + csstotal + ' Total Styles]'); } else if(csstotal >= 5) { $('div.sidebarred-main-content h3:first').append(' [' + csstotal + ' Total Styles]'); } else if(csstotal > 1) { $('div.sidebarred-main-content h3:first').append(' [' + csstotal + ' Total Styles]'); } else if(csstotal < 0){ $('div.sidebarred-main-content h3:first').append(' [ Unexpected error! ]'); } // Total Libraries if (libtotal == 1) { $('div.sidebarred-main-content h3:first').append(' [' + libtotal + ' Total Library]'); } else if(libtotal >= 100) { $('div.sidebarred-main-content h3:first').append(' [' + libtotal + ' Total Libraries]'); } else if(libtotal >= 50) { $('div.sidebarred-main-content h3:first').append(' [' + libtotal + ' Total Libraries]'); } else if(libtotal >= 25) { $('div.sidebarred-main-content h3:first').append(' [' + libtotal + ' Total Libraries]'); } else if(libtotal >= 10) { $('div.sidebarred-main-content h3:first').append(' [' + libtotal + ' Total Libraries]'); } else if(libtotal >= 5) { $('div.sidebarred-main-content h3:first').append(' [' + libtotal + ' Total Libraries]'); } else if(libtotal > 1) { $('div.sidebarred-main-content h3:first').append(' [' + libtotal + ' Total Libraries]'); } else if(libtotal < 0){ $('div.sidebarred-main-content h3:first').append(' [ Unexpected error! ]'); } })(); // Total Libraries at search if(window.location.href.includes("/libraries?q=")||window.location.href.includes("/libraries?locale_override=1&q=")) { (function() { 'use strict'; let t = $('li[data-script-type="library"]').length; if (t == 1) { $('div.sidebarred-main-content p:first').append(' [' + t + ' Total Library]'); } else if(t >= 50) { $('div.sidebarred-main-content p:first').append(' [' + t + ' Total Libraries]'); } else if(t >= 25) { $('div.sidebarred-main-content p:first').append(' [' + t + ' Total Libraries]'); } else if(t >= 10) { $('div.sidebarred-main-content p:first').append(' [' + t + ' Total Libraries]'); } else if(t >= 5) { $('div.sidebarred-main-content p:first').append(' [' + t + ' Total Libraries]'); } else if(t > 1) { $('div.sidebarred-main-content p:first').append(' [' + t + ' Total Libraries]'); } else if(t < 0){ $('div.sidebarred-main-content p:first').append(' [ Unexpected error! ]'); } })(); // Total Scripts at search } else if(window.location.href.includes("/scripts?q=")||(window.location.href.includes("/scripts?locale_override=1&q=")) != -1) { (function() { 'use strict'; let l = $('li[data-script-type]').length; if (l == 1) { $('div.sidebarred-main-content p:first').append(' [' + l + ' Total Script]'); } else if(l >= 50) { $('div.sidebarred-main-content p:first').append(' [' + l + ' Total Scripts]'); } else if(l >= 25) { $('div.sidebarred-main-content p:first').append(' [' + l + ' Total Scripts]'); } else if(l >= 10) { $('div.sidebarred-main-content p:first').append(' [' + l + ' Total Scripts]'); } else if(l >= 5) { $('div.sidebarred-main-content p:first').append(' [' + l + ' Total Scripts]'); } else if(l > 1) { $('div.sidebarred-main-content p:first').append(' [' + l + ' Total Scripts]'); } else if(l < 0){ $('div.sidebarred-main-content p:first').append(' [ Unexpected error! ]'); } })(); } // Log Message let csstotal = document.querySelectorAll('[data-script-language="css"]').length; let libtotal = document.querySelectorAll('#user-library-script-list > li').length; let jstotal = document.querySelectorAll('#user-script-list > [data-css-available-as-js="false"]').length; let t = $('li[data-script-type="library"]').length; let l = $('li[data-script-type]').length; console.log('[Total Scripts: ' + jstotal + ']\n[Total Styles: ' + csstotal + ']\n[Total Libraries: ' + libtotal + ']\n[Total Libraries At Search: ' + t + ']\n[Total Scripts At Search: ' + l + ']')