Steam Unsubscribe All

Automagic Unsubscribe button

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         Steam Unsubscribe All
// @namespace    http://techwolves.us/
// @version      0.1
// @description  Automagic Unsubscribe button
// @author       Timberwolf
// @match        http://steamcommunity.com/id/*/myworkshopfiles/?appid=*&browsefilter=mysubscriptions
// @grant        none
// ==/UserScript==
/* jshint -W097 */
'use strict';

var QueryString = function () {
  // This function is anonymous, is executed immediately and 
  // the return value is assigned to QueryString!
  var query_string = {};
  var query = window.location.search.substring(1);
  var vars = query.split("&");
  for (var i=0;i<vars.length;i++) {
    var pair = vars[i].split("=");
        // If first entry with this name
    if (typeof query_string[pair[0]] === "undefined") {
      query_string[pair[0]] = decodeURIComponent(pair[1]);
        // If second entry with this name
    } else if (typeof query_string[pair[0]] === "string") {
      var arr = [ query_string[pair[0]],decodeURIComponent(pair[1]) ];
      query_string[pair[0]] = arr;
        // If third or later entry with this name
    } else {
      query_string[pair[0]].push(decodeURIComponent(pair[1]));
    }
  } 
    return query_string;
}();

function unsub()
{
    jQuery(".workshopItemSubscription .subscriptionControls a").each(function(index, elem)
    {
        console.log("Unsubscribing from mod #"+jQuery(elem).attr('id').replace("UnsubscribeItemBtn",""));
        UnsubscribeItem(jQuery(elem).attr('id').replace("UnsubscribeItemBtn",""), QueryString.appid);
    });
    setTimeout(function(){location.reload()},2750);
}

function inject_go()
{
    var $input = jQuery('<input type="button" value="Unsubscribe All Mods On Page" />');
    $input.on("click", function() {
        unsub();
    });
    $input.appendTo(jQuery(".workshopBrowsePagingWithBG")[0]);
}

inject_go();