musicbrainz-userscripts/bandcamp_importer_helper.user.js

37 lines
1.6 KiB
JavaScript
Raw Normal View History

// ==UserScript==
2015-06-10 12:59:12 +00:00
// @name Import Bandcamp releases to MusicBrainz Album Link Helper
// @description Add a link to Bandcamp's album canonical URL on pages without /album/, for one to import the release into MusicBrainz
// @version 2022.4.10.1
2015-05-27 12:31:14 +00:00
// @namespace http://userscripts.org/users/22504
// @downloadURL https://raw.github.com/murdos/musicbrainz-userscripts/master/bandcamp_importer_helper.user.js
// @updateURL https://raw.github.com/murdos/musicbrainz-userscripts/master/bandcamp_importer_helper.user.js
// @include http*://*.bandcamp.com/
// @include http*://*.bandcamp.com/releases
// @exclude http*://*.bandcamp.com/*/*
2015-06-14 12:55:19 +00:00
// @require lib/logger.js
2015-07-10 12:28:43 +00:00
// @icon https://raw.githubusercontent.com/murdos/musicbrainz-userscripts/master/assets/images/Musicbrainz_import_logo.png
// @grant unsafeWindow
// ==/UserScript==
if (!unsafeWindow) unsafeWindow = window;
const ready = function (fn) {
if (document.readyState !== 'loading') {
fn();
} else {
document.addEventListener('DOMContentLoaded', fn);
}
};
ready(function () {
// Display a link to the correct album bandcamp url (i.e. main page or releases page)
const bandcampAlbumData = unsafeWindow.TralbumData;
if (bandcampAlbumData && bandcampAlbumData.url) {
const innerHTML = `
<div id="bci_helper" style="padding-top: 5px;">
<a href="${bandcampAlbumData.url}" title="Load album page and display Import to MB button">Album page (MB import)</a>
</div>`;
document.querySelector('#name-section').insertAdjacentHTML('beforeend', innerHTML);
}
});