// ==UserScript== // @name VirtualBlinders // @namespace Utopiah // @description Stay focus, damnit! // @include *youtube.com* // ==/UserScript== /* TODO # improve the list of websites to include ## consider include * then refine pattern per task # make timers (default to 0 sec, value defined via the script or a GM_Value) to be more flexible ## reset timer either manually or per day (i.e.) reset if last set date <5AM ## set 2 thresholds, the first as a warning, the second as an action Note that it does work even when Flash has focus. */ var t; var MODE="video"; var time_spent = GM_getValue(MODE,0); GM_xmlhttpRequest({ method: "GET", url: "http://fabien.benetou.fr/pub/currenttask", onload: function(response) { task = response.responseText; if (task == 'Reading\n' || task == 'Programming\n'){ //document.body.innerHTML="You should be focusing on "+task+" instead,\nare you sure you need that information from that website?"; document.body.innerHTML="You should be focusing on "+task+" instead,\nare you sure you need that information from that website?
Note that you have already spent "+time_spent+" seconds on that website so far!
"+document.body.innerHTML; t=setInterval(mytimer,1000); //see http://commons.oreilly.com/wiki/index.php/Greasemonkey_Hacks/Getting_Started#Pitfall_.231:_Auto-eval_Strings } } }); function mytimer(){ time_spent=time_spent+1; document.getElementById('timespent').innerText=time_spent; GM_setValue(MODE,time_spent); }