cuzi Author

The first thing I can think of is that this might be a "power saving" feature of Firefox/Chrome. I know this happens to setInterval/setTimeout. When you put a tab in the background, these two function will no longer work. The idea is that background tabs should not use CPU and drain your battery. I guess the same could happen to MutationObserver.


I don't know if this applies here as I have no idea how the FB login works but I have some general experience with the Facebook API:

FB will activate "development mode" for apps that have unresolved issues for example apps that no longer comply with FB's terms of service.
In that context "app" just means your Facebook API access and "development mode" means your API access got restricted to admin and test accounts.
Whoever created the facebook app would probably need to login on developers.facebook.com and see if there are any issues.




Yes, I have only added options in the menu because it is simple to code.

I probably should write an explanation or put screenshots in the description, then people know how to change the options



Sounds useful and easy to do.
I will check it out :)

Your screenshot was not visible:
enter image description here


So the simple reason was that rottentomatoes' API does not provide the user rating. The script would have to download and parse the normal movie website to retrieve the user rating. Too much of a hassle


I will look into it. I vaguely remember that there was a reason why I didn't include the user rating, but I cannot remember what it was or if there was a quick fix.

Regarding the all-in-one script, I just don't have the time to do it at the moment.






Yes, I'll remove the slider from pages that have no tracks.

I have updated the script a few days ago and changed some things like the settings button. Do you see a difference or is it still not showing?
Unfortunately I don't have a Windows 7 available to test it myself


I have updated the script. The settings button should appear on any bandcamp page, in the top white bar next to the profile image and the link to feed and collection.


Regarding 6: It should not be cleared when you clear browser stuff like cache. It's stored in the Tampermonkey extension (or whatever extension you're using), so it should be relatively safe.

I just realized from your screenshot you are using an old Windows, I think that is the reason why you don't see the download button and the settings button (they are both emojis, which are probably only available on Windows 10). I'll find a solution for that.

I can't reproduce the 'Saving...' problems at the moment, but I'll try later again


New version:

  • Settings to disable individual functions
    
  • Export/backup listened albums
    
  • Download mp3 from discography player
    
  • Download mp3 from album page
    
  • Desktop notifications on song change (disabled by default)
    
  • Minimize/Close player (left click/right click on [x] symbol)
    

I uploaded a new version that (possibly) fixes the scrolling issue


Regarding 2 and 4: Yes. I will probably also include my other download script (download links on the album page).

Regarding 3: I'll try to fix that. Seems to be specific to Chrome. It works for me with Firefox.

Regarding 1: I have not found a simple solution yet. In general, everything on the page is reset once you click a link, nothing I can do about that.
The only option (I can think of) might be to open a small popup window that plays the audio file. So the popup window with the audio would stay open and play the song, and then the player can be restored on the next page. It might even be possible to do this so smoothly that the popup window can be open and closed right before/after a link is clicked.
Not sure when I'll have time to try this though 😉



Oh yeah, I see the hard limit now. After several times clicking "Close" on the popup, it actually stops playing songs.
Shouldn't be hard to solve that 😏


I am gonna work on this in the next few days 😊
I think I am going to do a "mark as played" button that (ideally) will work everywhere on bandcamp.com on every album cover/album link and also highlight the played albums everywhere as well.

Regarding the downloading, I have a script that offers download links for individual songs. I don't like to go further, I don't think it's fair to offer whole albums or even several albums for download with a single click. From a programming standpoint it doesn't make much sense to include it either, such a script would additionally need: downloading mp3 files, zipping the mp3 files together and offering a download option.

Regarding 4) Did you mean these "The time has come to open thy wallet" popups? You can just close them, so yeah, a script could do that as well. Or is there another limit that actually stops you from playing the song?


I think 1),2) would definitely be a nice thing. I am gonna investigate how difficult it is, but I believe it should be easy to implement.

  1. Is this already implemented by a userscript for album pages? If so, could you post a link to that script.

4),5) Possible, but I don't like it :)


Update:

// ==UserScript==
// @name        eBay - Hilight Items With Bids
// @namespace   http://userscripts.org/users/126140
// @include     https://*.ebay.*/*
// @include     http://*.ebay.*/*
// @grant       unsafeWindow
// @version     2.2.1
// @require     https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js
// @description Hilights items that have bids with a red border and yellow background.
// ==/UserScript==

(function() {

  var highlightBids = function() {

    $(".sresult").each(function() {
      var li = $(this);
      var text = li.text(); 
      var regExp = /([0-9]+)\s+(b|B)ids?/;
      if (regExp.test(text)) {
        var match = regExp.exec(text);
        var numBids = parseInt(match[1], 10);
        if(numBids > 0) {
          li.css({"border":"3px solid red","background-color":"yellow"}); // Regular listing of articles
          li.closest('li.li').css({"border":"3px solid red","background-color":"yellow"});  // Some search results are not shown in the above "regular" way
          li.closest('div.box.mitem').css({"border":"3px solid red","background-color":"yellow"}); // Tiled search results
        }
      }
    });
  }

  var window_history_pushState = window.history.pushState;
  window.history.pushState = function () {
    window_history_pushState.apply(window.history, arguments);
    window.setTimeout(highlightBids, 0);
  }

  $(window).bind('popstate', function() {
    window.setTimeout(highlightBids, 1000);
  });

  highlightBids();

})();

Updated:

// ==UserScript==
// @name        eBay - Hilight Items With Bids
// @namespace   http://userscripts.org/users/126140
// @include     https://*.ebay.*/*
// @include     http://*.ebay.*/*
// @grant       unsafeWindow
// @version     2.2.1
// @require     http://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js
// @description Hilights items that have bids with a red border and yellow background.
// ==/UserScript==

(function() {
  
  var highlightBids = function() {
    
    $(".s-item").each(function() {
      var li = $(this);
      var text = li.text(); 
      var regExp = /([0-9]+)\s+(b|B)ids?/;
      if (regExp.test(text)) {
        var match = regExp.exec(text);
        var numBids = parseInt(match[1], 10);
        if(numBids > 0) {
          li.css({"border":"3px solid red","background-color":"yellow"}); // Regular listing of articles
          li.closest('li.li').css({"border":"3px solid red","background-color":"yellow"});  // Some search results are not shown in the above "regular" way
          li.closest('div.box.mitem').css({"border":"3px solid red","background-color":"yellow"}); // Tiled search results
        }
      }
    });
  }
  
  var window_history_pushState = window.history.pushState;
  window.history.pushState = function () {
    window_history_pushState.apply(window.history, arguments);
    window.setTimeout(highlightBids, 0);
  }
  
  $(window).bind('popstate', function() {
    window.setTimeout(highlightBids, 1000);
  });
  
  highlightBids();
  
})();