//set these variables for the "options" var useShort=true; //set to false if you prefer long string as title var useExShort=false; //only uses biggest value (e.g. days only when at least one remains). trumps useShort. var spacer=""; //default is a "nothing" for the spacer. use " " for a space var useZeros=false; //show days/hours/minutes as "0" instead of excluding them var URL = document.location.href; window.opera.addEventListener( 'afterscript', //we definitely want scripts loaded first function (e) { if( e.element.getAttribute('src').indexOf('countdown.js') != -1 && ( //deleted or comment-out below what you don't want tracked! URL.indexOf('forumwarz.com/domination') != -1 || URL.indexOf('forumwarz.com/incit') != -1 || URL.indexOf('forumwarz.com/auctions') != -1 || URL.indexOf('forumwarz.com/characters/me') != -1 || URL.indexOf('forumwarz.com/item_buildr') != -1 || URL.indexOf('forumwarz.com/forum_buildr') != -1 )){ setTimeout("checkForCountdown()", 1000); //give it 1 second for safety } }, false ); function checkForCountdown(){ //TODO add end of timer check here or maybe main() if(document.getElementById("countdown") != null) main(); else setTimeout("checkForCountdown()", 1000); } //our main function that calls itself (loop) function main() { var fCD = document.getElementById("countdown").firstChild.nodeValue; //full countdown var offset = 0; if(URL.indexOf('forumwarz.com/domination') != -1 || URL.indexOf('forumwarz.com/incit') != -1) offset = 3; if(fCD.indexOf('until the next round begins') != -1) offset = 5; var newTitle; var sArray = fCD.split(" "); if(useExShort){ newTitle = sArray[0] + sArray[1].substr(0,1); } else if(useShort && !useZeros){ switch(sArray.size()-offset){ case 3: //seconds newTitle = sArray[0] + "s";break; case 6: //minutes+seconds newTitle = sArray[0] + "m" + spacer + sArray[3] + "s";break; case 8: //hours+minutes+seconds newTitle = sArray[0] + "h" + spacer + sArray[2] + "m" + spacer + sArray[5] + "s";break; case 10: //days+hours+minutes+seconds newTitle = sArray[0] + "d" + spacer + sArray[2] + "h" + spacer + sArray[4] + "m" + spacer + sArray[7] + "s";break; default: newTitle = fCD; } } else if(useShort && useZeros) { switch(sArray.size()-offset){ case 3: //seconds newTitle = "0d" + spacer + "0h" + spacer + "0m" + spacer + sArray[0] + "s";break; case 6: //minutes+seconds newTitle = "0d" + spacer + "0h" + spacer + sArray[0] + "m" + spacer + sArray[3] + "s";break; case 8: //hours+minutes+seconds newTitle = "0d" + spacer + sArray[0] + "h" + spacer + sArray[2] + "m" + spacer + sArray[5] + "s";break; case 10: //days+hours+minutes+seconds newTitle = sArray[0] + "d" + spacer + sArray[2] + "h" + spacer + sArray[4] + "m" + spacer + sArray[7] + "s";break; default: newTitle = fCD; } } else if(!useShort && useZeros) { switch(sArray.size()-offset){ case 3: //seconds newTitle = "0 days 0 hours 0 minutes and " + fCD;break; case 6: //minutes+seconds newTitle = "0 days 0 hours " + fCD;break; case 8: //hours+minutes+seconds newTitle = "0 days " + fCD;break; default: //case 10 (days,hrs,mins,secs) is same as default so let's just default =P newTitle = fCD; } } else { newTitle=fCD; } // var submissions = document.getElementById('submissions_received').innerHTM; // if(submissions!=undefined){ // submissions = submissions.substr(0,1); // if(submissions > 0) newTitle = newTitle + spacer + submissions + "sub"; // } document.title=newTitle; //set the title setTimeout("main()", 1000); //alert(sArray.size()); }