NewsBot
New Member
- Messages
- 111,281
- Reaction score
- 2,947
Now you can construct your very own version of the 2015 Dallas Cowboys with our Interactive Roster Builder. And then delete it and start over again. And again. And again.
Welcome to the 2015 version of The Roster Builder.
With this tool that was developed by our very own Coty Saxman, you can whittle down the roster from 90 to 53 players, build a practice squad, change players' positions, try to get under the cap - and watch your dead money total for 2016 climb sky high.
For those of you who've used the Roster Builder before it will have a familiar look and feel to it. For everybody else: Click the button below to launch the program (it will open in a new tab/window). To get started, click on 'Reset Everything' in the new window to load the most up-to-date roster into the tool. Also, you'll probably have to keep this window open for the Roster Builder to work in the other window.
[Last Update: 7/1]
Dallas Cowboys Interactive Roster Builder
"; newHTML += "
2016 Dead Money if Cuttd>
"; newHTML += ""; newDocument.document.getElementById("currentPlayerInfo").innerHTML = newHTML; } else newDocument.document.getElementById("currentPlayerInfo").innerHTML = "Please select a player!"; var capTotal = deadMoney; var nextYearDeadMoney = deadMoneyNextYear; for ( i = 0; i < rosterArray.length; ++i) { capTotal += rosterArray.capHit; } if(irArray.length > 0) { for ( i = 0; i < irArray.length; ++i) { capTotal += irArray.capHit; } } if(pupArray.length > 0) { for ( i = 0; i < pupArray.length; ++i) { capTotal += pupArray.capHit; } } if (cut.length > 0) { for ( i = 0; i < cut.length; ++i) { capTotal += cut.capPen; nextYearDeadMoney += cut.nextYrPen; } } if(psArray.length > 0) { for ( i = 0; i < psArray.length; ++i) { capTotal += psArray.capPen; nextYearDeadMoney += psArray.nextYrPen; } } var color = ""; if (capTotal < 119495156) { color = "green"; } else if (capTotal == 0) { color = "black"; } else color = "red"; newDocument.document.getElementById("capTotalRow").innerHTML = "Current Salary:[COLOR=" + color + "]$" + numberWithCommas(capTotal) + "[/COLOR]Salary Cap:$148,016,713"; newDocument.document.getElementById("deadMoneyNextYearCell").innerHTML = "$" + numberWithCommas(nextYearDeadMoney); newDocument.document.getElementById("defenseCell").innerHTML = "Defense (" + (sArray.length + cbArray.length + olbArray.length + ilbArray.length + deArray.length + dtArray.length) + ")"; newDocument.document.getElementById("defensiveBacksCell").innerHTML = "Defensive Backs (" + (sArray.length + cbArray.length) + ")"; newDocument.document.getElementById("linebackersCell").innerHTML = "Linebackers (" + (ilbArray.length + olbArray.length) + ")"; newDocument.document.getElementById("defensiveLineCell").innerHTML = "Defensive Linemen (" + (deArray.length + dtArray.length) + ")"; newDocument.document.getElementById("sCell").innerHTML = "S (" + sArray.length + ")"; newDocument.document.getElementById("cbCell").innerHTML = "CB (" + cbArray.length + ")"; newDocument.document.getElementById("olbCell").innerHTML = "OLB (" + olbArray.length + ")"; newDocument.document.getElementById("ilbCell").innerHTML = "MLB (" + ilbArray.length + ")"; newDocument.document.getElementById("deCell").innerHTML = "DE (" + deArray.length + ")"; newDocument.document.getElementById("dtCell").innerHTML = "DT (" + dtArray.length + ")"; newDocument.document.getElementById("offenseCell").innerHTML = "Offense (" + (qbArray.length + rbArray.length + wrArray.length + teArray.length + otArray.length + gcArray.length) + ")"; newDocument.document.getElementById("offensiveBacksCell").innerHTML = "Offensive Backfield (" + (qbArray.length + rbArray.length) + ")"; newDocument.document.getElementById("receiversCell").innerHTML = "Receivers (" + (wrArray.length + teArray.length) + ")"; newDocument.document.getElementById("offensiveLineCell").innerHTML = "Offensive Linemen (" + (otArray.length + gcArray.length) + ")"; newDocument.document.getElementById("qbCell").innerHTML = "QB (" + qbArray.length + ")"; newDocument.document.getElementById("rbCell").innerHTML = "RB/FB (" + rbArray.length + ")"; newDocument.document.getElementById("wrCell").innerHTML = "WR (" + wrArray.length + ")"; newDocument.document.getElementById("teCell").innerHTML = "TE (" + teArray.length + ")"; newDocument.document.getElementById("otCell").innerHTML = "OT (" + otArray.length + ")"; newDocument.document.getElementById("gcCell").innerHTML = "G/C (" + gcArray.length + ")"; newDocument.document.getElementById("stCell").innerHTML = "Special Teams (" + (pArray.length + kArray.length + lsArray.length) + ")"; newDocument.document.getElementById("kCell").innerHTML = "Kickers (" + kArray.length + ")"; newDocument.document.getElementById("pCell").innerHTML = "Punters (" + pArray.length + ")"; newDocument.document.getElementById("lsCell").innerHTML = "Long Snappers (" + lsArray.length + ")"; newDocument.document.getElementById("injCell").innerHTML = "Injured (" + (pupArray.length + irArray.length) + ")"; newDocument.document.getElementById("pupCell").innerHTML = "PUP (" + pupArray.length + ")"; newDocument.document.getElementById("irCell").innerHTML = "IR + Susp. (" + irArray.length + ")"; newDocument.document.getElementById("psCell").innerHTML = "Practice Squad (" + psArray.length + ")"; }; function buildRosterCell(name) { var result = "
" + name + "
"; return result; }; function nameToVar(name) { var tempName = name.replace("-", "_"); tempName = tempName.replace(".", ""); tempName = tempName.replace(".", ""); tempName = tempName.replace("`", ""); tempName = tempName.toLowerCase(); tempName = tempName.replace(" ", "_"); return tempName; }; function prepareToMove(name) { playerToMove = window[nameToVar(name)]; posToMove = null; for (var i = 0; i < arrayArray.length; i++) { if (arrayArray.lastIndexOf(playerToMove) > -1) { posToMove = arrayArray; } } saveArray.push("prepareToMove('" + name + "')"); refreshRoster(); }; function arrayByIndex(index) { return arrayArray[index]; }; function showAuthor() { alert(author); }; function movePlayer(destIndex) { var destination = arrayByIndex(destIndex); if (destination == cut) { arrayArray[arrayArray.indexOf(posToMove)].splice(arrayArray[arrayArray.indexOf(posToMove)].indexOf(playerToMove), 1); if (arrayArray.indexOf(posToMove) < 15) { rosterArray.splice(rosterArray.indexOf(playerToMove), 1); } cut.push(playerToMove); playerToMove = null; posToMove = null; } else if (posToMove != null && ((destination != psArray) || ((playerToMove.pracSquad == 1) && (psArray.length < 10)))) { arrayArray[arrayArray.indexOf(posToMove)].splice(arrayArray[arrayArray.indexOf(posToMove)].indexOf(playerToMove), 1); arrayArray[arrayArray.indexOf(destination)].push(playerToMove); if (arrayArray.indexOf(posToMove) > 14 && arrayArray.indexOf(destination) < 15) { rosterArray.push(playerToMove); } else if (arrayArray.indexOf(posToMove) < 15 && arrayArray.indexOf(destination) > 14) { rosterArray.splice(rosterArray.indexOf(playerToMove), 1); } playerToMove = null; posToMove = null; } saveArray.push("movePlayer(" + destIndex + ")"); refreshRoster(); }; function showCuts() { var newHTML = "Cuts
"; for (var i = 0; i < cut.length; ++i) { newHTML += "" + buildRosterCell(cut.name) + "
"; } newHTML += "
"; newDocument.document.getElementById('cutTableSection').innerHTML = newHTML; newDocument.document.getElementById('cutTableSection').value = 'shown'; } function hideCuts() { var newHTML = ""; newDocument.document.getElementById('cutTableSection').innerHTML = newHTML; newDocument.document.getElementById('cutTableSection').value = 'hidden'; }; function saveRoster() { createCookie('btbRoster', saveArray.toString(), 365); }; function loadRoster() { resetAll(); var rawSaveArray = readCookie('btbRoster'); saveArray = rawSaveArray.split(','); var saveQueue = rawSaveArray.replace(/,/g, ";"); var load = new Function(saveQueue); load(); refreshRoster(); }; function createCookie(name, value, days) { if (days) { var date = new Date(); date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); var expires = "; expires=" + date.toGMTString(); } else var expires = ""; newDocument.document.cookie = name + "=" + value + expires + "; path=/"; }; function readCookie(name) { var nameEQ = name + "="; var ca = newDocument.document.cookie.split(';'); for (var i = 0; i < ca.length; i++) { var c = ca; while (c.charAt(0) == ' ') c = c.substring(1, c.length); if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length); } return null; }; function eraseCookie(name) { createCookie(name, "", -1); }; //Source: http://stackoverflow.com/questions/2901102/how-to-print-a-number-with-commas-as-thousands-separators-in-javascript function numberWithCommas(x) { return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ","); }; function openNewPage() { var newDocumentHTML = "
Now's your opportunity to begin building your own Cowboys' roster. If you make a mistake, the \"Reset Everything!\" button will return everything to its original condition. To move players, click on the player to highlight him, and then click on the heading to which you wish to move him. Clicking on the red CUT cell, or pressing the Delete key will cut that player entirely. You can track your current roster count at the bottom left cell. Good luck getting to 53!
Note: The Roster Builder now conforms to June 1st standards and splits cap hits over the next two years. Be mindful of how much dead money you accumulate for 2015!
Please select a player!
[COLOR=rgba(0,0,10,.95)]Defense
Defensive Backs Linebackers Defensive Linemen
S CB OLB ILB DE DT
Offense
Offensive Backfield Receivers Offensive Linemen
QB RB/HB WR TE OT G/C
Special Teams Injured Practice Squad
Kickers Punters Long Snappers PUP IR
Total Roster Size: 0 Click Here to CUT!Defensive Backs Linebackers Defensive Linemen
S CB OLB ILB DE DT
Offense
Offensive Backfield Receivers Offensive Linemen
QB RB/HB WR TE OT G/C
Special Teams Injured Practice Squad
Kickers Punters Long Snappers PUP IR
Current Salary: 0 Salary Cap: $119,495,156
2016 Dead Money: 0[/COLOR]
Note: This program was written in JavaScript. If your browser does not support JavaScript, you will be informed of that below. In general, Internet Explorer is non-compatible, while Chrome and Firefox are compatible.
Practice Squad: You can put up to 10 guys on the practice squad. Unfortunately, the tool will only show eight. Also, all players with two years experience are now marked as PS eligibile, even though only a maximum of two of those guys can be added to the PS – but I trust the BTB users to be able to make that distinction.
To make it easier to find the Roster Builder, we've added it to the Library section of BTB as illustrated in the screenshot below. You can access the Roster Builder from there at any time without having to search for the specific post it was originally published in.
Continue reading...