/* This program is free software. It comes without any warranty, to
* the extent permitted by applicable law. You can redistribute it
* and/or modify it under the terms of the Do What The Fuck You Want
* To Public License, Version 2, as published by Sam Hocevar. See
* http://www.wtfpl.net/ for more details. */
// ==UserScript==
// @name GitHub - CoderStats
// @id github-coderstats@loucypher
// @namespace https://github.com/LouCypher/userscripts
// @description Add link to CoderStats http://coderstats.net//
// @version 1.0
// @author LouCypher
// @license WTFPL
// @contributor Custom Icon Design http://www.iconarchive.com/show/pretty-office-8-icons-by-custom-icon-design.html
// @icon https://raw.github.com/LouCypher/userscripts/master/github/open-source-report-card/icon48.png
// @icon64URL https://raw.github.com/LouCypher/userscripts/master/github/open-source-report-card/icon64.png
// @screenshot https://raw.github.com/LouCypher/userscripts/master/github/coderstats/screenshot.png
// @contributionURL http://loucypher.github.io/userscripts/donate.html?GitHub+-+CoderStats
// @homepageURL https://greasyfork.org/scripts/179
// @supportURL https://greasyfork.org/scripts/179/feedback
// @resource CHANGELOG https://raw.github.com/LouCypher/userscripts/master/github/coderstats/CHANGELOG.txt
// @resource LICENSE https://raw.github.com/LouCypher/userscripts/master/licenses/WTFPL/LICENSE.txt
// @include https://github.com/*
// @grant none
// @downloadURL https://update.greasyfork.icu/scripts/179/GitHub%20-%20CoderStats.user.js
// @updateURL https://update.greasyfork.icu/scripts/179/GitHub%20-%20CoderStats.meta.js
// ==/UserScript==
function $(aSelector, aNode) {
return (aNode || document).querySelector(aSelector);
}
function addReportLink() {
var username = $(".vcard-username");
var details = $(".vcard-details");
if (username && details) {
var list = document.createElement("li");
list.className = "vcard-detail";
list.innerHTML = ''
+ ''
+ 'CoderStats';
details.appendChild(list);
}
}
var siteContainer = $("#site-container");
var vcards = $(".vcard-details");
if (siteContainer && vcards) {
addReportLink();
if ("MutationObserver" in window || "WebKitMutationObserver" in window) {
new (MutationObserver ? MutationObserver : WebKitMutationObserver)(function(aMutations) {
aMutations.forEach(function(aMutation) {
if (aMutation.removedNodes.length)
if (!$(".vcard-detail .coderstats"))
addReportLink();
});
}).observe(siteContainer, {childList:true});
}
}
else
console.log("GitHub - CoderStats user script: Sam Ting Wen Wong!");