// ==UserScript== // @name Attributes On Roster Page // @namespace pbr // @include http://goallineblitz.com/game/roster.pl?team_id=* // @include http://glb.warriorgeneral.com/game/roster.pl?team_id=* // @copyright 2010, pabst // @license (CC) Attribution Share Alike; http://creativecommons.org/licenses/by-sa/3.0/ // @version 13.12.29 // @description Adds more player info to the GLB roster page. // @downloadURL none // ==/UserScript== window.setTimeout( function() { setupTabs(); var input = document.createElement("input"); input.type = "button"; input.value = "Load Attributes"; var content = document.getElementById("content_attributes"); content.insertBefore(input, content.childNodes[0]); input.addEventListener("click",main,false); }, 2000); var totalPlayers = 0; var atts = ["Pos","Name","Eff","Age","Val","Fame","Str","Spd","Agi","Jmp","Sta","Vis", "Cnf","Blk","Tck","Thr","Cat","Car","Kck","Pnt"]; var attNames = ["Strength","Speed","Agility","Jumping","Stamina","Vision","Confidence", "Blocking","Tackling","Throwing","Catching","Carrying","Kicking","Punting"]; function setupTabs() { var div = document.createElement("div"); div.setAttribute("id","tab_attributes"); div.setAttribute("class","subtab_off"); div.innerHTML = "Attributes"; var content = document.createElement("div"); content.setAttribute("id","content_attributes"); content.setAttribute("class","content_container"); content.style.display = "none" content.style.visibility = "hidden"; var titles = ["blah","Offense","Defense","Kicker"]; for (var i=1; i<4; i++) { var title = document.createElement("div"); title.setAttribute("class","medium_head"); title.innerHTML = titles[i]+" Attributes"; content.appendChild(title); var table = document.createElement("table"); table.setAttribute("class","players rowstyle-alternating_color2 onload-zebra no-arrow"); var thead = document.createElement("thead"); var tr = document.createElement("tr"); for (var j=0; j"+atts[j]+""; tr.appendChild(th); } thead.appendChild(tr); var roster = document.getElementById("fd-table-"+i); for (var j=1; j"); var attributes = new Array(); var lvl = parseInt(div.getElementsByClassName("current_stats_value")[0].innerHTML); var eff = div.getElementsByClassName("current_stats_value")[0]; eff = parseInt(eff.innerHTML.split("Level: ")[1]); if (eff > (lvl+5)) { attributes.push('
'+eff+'
'); } else if (eff > (lvl+2)) { attributes.push('
'+eff+'
'); } else if (eff < (lvl-2)) { attributes.push('
'+eff+'
'); } else { attributes.push(eff); } var fame = div.getElementsByClassName("current_stats_fame")[0]; if (fame != null) fame = parseInt(fame.innerHTML); else fame = ""; var ftr = document.createElement("div"); ftr.setAttribute("class","age"); ftr.innerHTML = -1; var age = parseFloat(div.getElementsByClassName("vital_data")[2].firstChild.innerHTML.split("d")[0]); attributes.push(age); var val = parseFloat(div.getElementsByClassName("current_stats_value")[0].lastChild.firstChild.innerHTML); lvl=1; //fix me attributes.push((val/lvl).toFixed(1)); ftr.innerHTML = age; document.getElementById("agefooter").appendChild(ftr); var atts = []; var list = div.getElementsByClassName("stat_head_tall"); for (var i=0; i"); for (var i=1; i"; tr.appendChild(td); } } } var ages = document.getElementsByClassName("age"); if (ages.length == totalPlayers) { var age = 0; var players = 0; for (var i=0; i 0) { players++; age += parseInt(ages[i].innerHTML); } } var div = document.createElement("div"); div.setAttribute("style", "width: 300px; float: left"); var child = document.createElement("div"); child.setAttribute("class","small_head"); child.innerHTML = "Avg. Player Age:"; div.appendChild(child); div.innerHTML += (age/players).toFixed(0); var cont = document.getElementsByClassName("content_container")[0]; cont.insertBefore(div, cont.childNodes[cont.childNodes.length-4]); document.getElementById("footer").removeChild(document.getElementById("agefooter")); } } function getInetPage(address, func) { // console.log("getInetPage : "+address); var req = new XMLHttpRequest(); req.open( 'GET', address, true ); req.onload = function() { if (this.status != 200) { alert("pbr gm script: Error "+this.status+" loading "+address); } else { // console.log("loaded: "+address) func(address,this); } }; req.send(null); return req; }