// ==UserScript== // @name Improved Channel Select Menu for Kbin // @namespace http://tampermonkey.net/ // @version 0.1.0 // @description Adds subscribed magazines and liked collections to the channel select menu. // @author NeighborlyFedora // @match *://kbin.social/* // @icon https://www.google.com/s2/favicons?sz=64&domain=kbin.social // @require https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js // @license GPL-3.0-or-later // @downloadURL none // ==/UserScript== //Code partially based on Floating Subs List by raltsm4k (https://greasyfork.org/en/scripts/469121-floating-subs-list) let user; let subs = []; let clls = []; let subs_html = []; let clls_html = []; let fetch_tries = 3; (function() { 'use strict'; user = document.querySelector('#header a.login').getAttribute('href'); if(user === '/login') return; const channel_list = document.querySelector('#header li:has(a[title="Select a channel"]) .dropdown__menu'); Object.assign(channel_list, { id: 'channel-list' }); const refresher = Object.assign(document.createElement('button'), { id: 'refresher', title: 'Refresh list', }); refresher.appendChild(Object.assign(document.createElement('i'), { className: 'fa-solid fa-rotate' })); channel_list.prepend(refresher); refresher.addEventListener('click', function(){ localStorage.removeItem('icsm_' + user); empty(); $('#refresher').find('i').addClass('fa-spin'); fetch_subs(1); }); $('