NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name U20 Cup Eligibility Script // @namespace http://playerx.hitwicket.com/ // @version 4.1 // @description Script to show player's eligibility for u20 Cup // @include http://*hitwicket.com/transfer/index* // @include http://*hitwicket.com/transfer/applyAdvancedFilters* // @include http://*hitwicket.com/premium/players/index* // @include http://*hitwicket.com/players/index* // @include http://*hitwicket.com/player/show/* // @copyright 2012+, PlayerX // ==/UserScript== function interceptAjax () { function getDisplayMessage(year) { return "<span class='eligibility' style='align:right;padding:3px;margin:2px;color:white;background-color:green;font-weight:bold;font-size:14px;'>U20-" + year + " Player</span>" } function calc_age(player_age_year,player_age_days) { var u20cutoffdate = new Date(2014,01,20); //Feb 20 2014 var u20versionOffset = 5; //version for the above u20cutoffdate var oneDay = 24*60*60*1000; var oneYear = oneDay * 70; //70days in a year in hw var today = new Date(); var dd = today.getDate(); var mm = today.getMonth(); //January is 0! var i=0; var isRunningU20VersionFound = false; var runningU20Version; while(!isRunningU20VersionFound) { //old u20 cutoff date?? if(u20cutoffdate.getTime() < today.getTime()) { u20cutoffdate = new Date(u20cutoffdate.getTime() + oneYear); u20versionOffset++; } else { isRunningU20VersionFound = true; } } var fno="<span class='eligibility'></span>"; var yyyy = today.getFullYear(); var todaysDate = new Date(yyyy,mm,dd); var diffDays = Math.abs((todaysDate.getTime() - u20cutoffdate.getTime())/(oneDay)); var c,d,e,t; c=player_age_days+diffDays; d=c/70;e=c%70; t=player_age_year+d;t=parseInt(t); if(t<=17){return getDisplayMessage(u20versionOffset)+getDisplayMessage(u20versionOffset+1)+getDisplayMessage(u20versionOffset+2)+"<br/>"}; if(t<=18){return getDisplayMessage(u20versionOffset)+getDisplayMessage(u20versionOffset+1)+"<br/>"}; if(t<=19){if(e<=69) return getDisplayMessage(u20versionOffset)+"<br/>"; else return fno;} else return fno; } function updateEligibilityInfo() { //console.debug("list-card" + $( "div.new_player_card" ).size()); $( "div.new_player_card" ).each(function() { if($(this).find("span.eligibility").size() > 0) { return; } var ageFull; /*if($(this).find("p.transfer").size() > 0) { ageFull = $($(this).find("span.age").first().text(); } else { ageFull = $(this).find("span.age").first().text(); } */ ageFull = $(this).find("div.player_age").first().text(); //console.debug("ageFull:" + ageFull); var ageAsArr = ageFull.split(" "); // console.debug("age:" + ageAsArr); var yr = ageAsArr[0].trim().substring(0,2); var days = ageAsArr[1].trim(); days = days.substring(0,days.indexOf("days")); //console.debug("Newage:" + yr + "=" + days); var eligibilityMessage = calc_age(parseInt(yr),parseInt(days)); /* if($(this).find("div.player_tags").size() == 0) { console.debug("player_tags"); $(this).find("div").first().append(eligibilityMessage; } else {*/ //console.debug("adding to side_sills"); //$(this).find("div.new_player_card").first().prepend("<div>" + eligibilityMessage + "</div>"); $(this).prepend("<div>" + eligibilityMessage + "</div>"); //} }); } $(document).ajaxSuccess ( function (event, requestData) { updateEligibilityInfo(); } ); updateEligibilityInfo(); } function addJS_Node (text, s_URL, funcToRun) { var D = document; var scriptNode = D.createElement ('script'); scriptNode.type = "text/javascript"; if (text) scriptNode.textContent = text; if (s_URL) scriptNode.src = s_URL; if (funcToRun) scriptNode.textContent = '(' + funcToRun.toString() + ')()'; var targ = D.getElementsByTagName('head')[0] || D.body || D.documentElement; targ.appendChild (scriptNode); } addJS_Node ("updateEligibilityInfo", null, interceptAjax); interceptAjax();