Greasemonkey/VDex_Project_Refresh_Counter.user.js

56 lines
1.6 KiB
JavaScript
Raw Permalink Normal View History

2014-01-05 19:14:05 +01:00
// ==UserScript==
// @name VDex Project Refresh Counter
// @namespace http://www.enbewe.de/vdex
// @include http://vdexproject.net/map.php*
// @version 0.1
// ==/UserScript==
var cnt = GM_getValue('refreshCnt',0);
var displayDiv = document.createElement('div');
displayDiv.setAttribute('id','displayDiv');
displayDiv.setAttribute('style','width:140px; height:50px; position: fixed; bottom: 10px; right: 10px; background: #232323; border: 3px solid grey; padding: 10px; text-align:center;');
document.getElementById('login').parentNode.appendChild(displayDiv);
refreshDisplay();
//Setting up refresh capture
var oldRefresh = unsafeWindow.refresh;
var newRefresh = function() {
cnt++;
setTimeout(function() {GM_setValue('refreshCnt',cnt);}, 1);
refreshDisplay();
oldRefresh();
}
unsafeWindow.refresh = newRefresh;
var oldFishRefresh = unsafeWindow.fishrefresh;
var newFishRefresh = function(item) {
cnt++;
setTimeout(function() {GM_setValue('refreshCnt',cnt);}, 1);
refreshDisplay();
oldFishRefresh(item);
}
unsafeWindow.fishrefresh = newFishRefresh;
function refreshDisplay() {
displayDiv.innerHTML = '<b>Refresh Counter:</b><br>';
displayDiv.innerHTML += cnt;
displayDiv.innerHTML += '<br>';
var resetSpan = document.createElement('a');
resetSpan.setAttribute('class','hlclickable');
resetSpan.innerHTML = '(Reset Counter)';
displayDiv.appendChild(resetSpan);
resetSpan.addEventListener("click", resetCounter, true);
}
function resetCounter() {
cnt = 0;
setTimeout(function() {GM_setValue('refreshCnt',cnt);}, 1);
refreshDisplay();
}