diff --git a/constants/constants.go b/constants/constants.go index 7132421..7bcee28 100644 --- a/constants/constants.go +++ b/constants/constants.go @@ -3,6 +3,6 @@ package constants const ( FinalPortalRound uint = 5 MaxFBSRosterSize int = 105 - MaxFCSRosterSize int = 80 + MaxFCSRosterSize int = 85 PortalSigningMinimum float64 = 0.66 ) diff --git a/controller/PlayerController.go b/controller/PlayerController.go index 06cf6b4..d6f4b34 100644 --- a/controller/PlayerController.go +++ b/controller/PlayerController.go @@ -149,17 +149,22 @@ func ExportNFLRosterToCSV(w http.ResponseWriter, r *http.Request) { } managers.ExportNFLTeamToCSV(teamId, w) - // ? } -func ExportAllRostersToCSV(w http.ResponseWriter, r *http.Request) { +func ExportAllCFBRostersToCSV(w http.ResponseWriter, r *http.Request) { w.Header().Set("Content-Type", "text/csv") managers.ExportAllRostersToCSV(w) // ? } +func ExportAllNFLRostersToCSV(w http.ResponseWriter, r *http.Request) { + w.Header().Set("Content-Type", "text/csv") + + managers.ExportAllNFLTeamsToCSV(w) +} + // Place player on NFL Trade block func PlaceNFLPlayerOnPracticeSquad(w http.ResponseWriter, r *http.Request) { vars := mux.Vars(r) diff --git a/data/2026/2026_cfb_games_preseason.csv b/data/2026/2026_cfb_games_preseason.csv index 56e1cc4..c08987b 100644 --- a/data/2026/2026_cfb_games_preseason.csv +++ b/data/2026/2026_cfb_games_preseason.csv @@ -66,16 +66,20 @@ GameID,Season,Week,Home Team,Away Team,Conference Game,Division Game,Neutral Sit 5475,2026,3,WISC,NAVY,0,0,0,0,0,0,0,0,0,JC,Syndakyt,Saturday Afternoon,Camp Randall Stadium,Madison,Wisconsin,0,,,0, 5476,2026,3,WMU,USC,0,0,0,0,0,0,0,0,0,Jieret,Dr_Novella,Saturday Evening,Waldo Stadium,Kalamazoo,Michigan,0,,,0, 5477,2026,3,WVU,FSU,0,0,0,0,0,0,0,0,0,smackemz3,Kirby,Thursday Night,Mountaineer Field at Milan Puskar Stadium,Morgantown,West Virginia,0,,,0, -5478,2026,1,ZONA,BOIS,0,0,0,0,0,0,0,0,0,Ares,cubansdoitbest,,Arizona Stadium,Tucson,Arizona,0,,,0, -5479,2026,3,MINN,CMU,0,0,0,0,0,0,0,0,0,Minnow,Raider42,,TCF Bank Stadium,Minneapolis,Minnesota,0,,,0, -5480,2026,1,BAMA,MINN,0,0,0,0,0,0,0,0,0,thatfunk,Minnow,,Bryant-Denny Stadium,Tuscaloosa,Alabama,0,,,0, -5481,2026,2,ZONA,APST,0,0,0,0,0,0,0,0,0,Ares,Mightydog135,,Arizona Stadium,Tucson,Arizona,0,,,0, -5482,2026,3,APST,BOIS,0,0,0,0,0,0,0,0,0,Mightydog135,cubansdoitbest,,Kidd Brewer Stadium,Boone,North Carolina,0,,,0, -5483,2026,1,APST,CMU,0,0,0,0,0,0,0,0,0,Mightydog135,Raider42,,Kidd Brewer Stadium,Boone,North Carolina,0,,,0, -5484,2026,2,MISS,MINN,0,0,0,0,0,0,0,0,0,SlapYourBasil,Minnow,,Vaught-Hemingway Stadium at Hollingsworth Field,Oxford,Mississippi,0,,,0, -5485,2026,1,USA,BC,0,0,0,0,0,0,0,0,0,jgreene816,Fireballer34,,Ladd-Peebles Stadium,Mobile,Alabama,0,,,0, -5486,2026,2,BC,PURD,0,0,0,0,0,0,0,0,0,Fireballer34,MasonAsher,,Alumni Stadium,Chestnut Hill,Massachusetts,0,,,0, -5487,2026,3,NIU,BC,0,0,0,0,0,0,0,0,0,Ape,Fireballer34,,Brigham Field at Huskie Stadium,DeKalb,Illinois,0,,,0, -5488,2026,1,OREG,NAVY,0,0,0,0,0,0,0,0,0,Dida28,Syndakyt,,Autzen Stadium,Eugene,Oregon,0,,,0, -5489,2026,2,UNT,ZONA,0,0,0,0,0,0,0,0,0,EmeraldSeasSunshine,Ares,,Apogee Stadium,Denton,Texas,0,,,0, -5490,2026,2,BOIS,FLA,0,0,0,0,0,0,0,0,0,cubansdoitbest,Weeze,,Albertsons Stadium,Boise,Idaho,0,,,0, +5478,2026,1,ZONA,BOIS,0,0,0,0,0,0,0,0,0,Ares,cubansdoitbest,Thursday Night,Arizona Stadium,Tucson,Arizona,0,,,0, +5479,2026,3,MINN,CMU,0,0,0,0,0,0,0,0,0,Minnow,Raider42,Thursday Night,TCF Bank Stadium,Minneapolis,Minnesota,0,,,0, +5480,2026,1,BAMA,MINN,0,0,0,0,0,0,0,0,0,thatfunk,Minnow,Thursday Night,Bryant-Denny Stadium,Tuscaloosa,Alabama,0,,,0, +5481,2026,2,ZONA,APST,0,0,0,0,0,0,0,0,0,Ares,Mightydog135,Thursday Night,Arizona Stadium,Tucson,Arizona,0,,,0, +5482,2026,3,APST,BOIS,0,0,0,0,0,0,0,0,0,Mightydog135,cubansdoitbest,Thursday Night,Kidd Brewer Stadium,Boone,North Carolina,0,,,0, +5483,2026,1,APST,CMU,0,0,0,0,0,0,0,0,0,Mightydog135,Raider42,Thursday Night,Kidd Brewer Stadium,Boone,North Carolina,0,,,0, +5484,2026,2,MISS,MINN,0,0,0,0,0,0,0,0,0,SlapYourBasil,Minnow,Thursday Night,Vaught-Hemingway Stadium at Hollingsworth Field,Oxford,Mississippi,0,,,0, +5485,2026,1,USA,BC,0,0,0,0,0,0,0,0,0,jgreene816,Fireballer34,Thursday Night,Ladd-Peebles Stadium,Mobile,Alabama,0,,,0, +5486,2026,2,BC,PURD,0,0,0,0,0,0,0,0,0,Fireballer34,MasonAsher,Thursday Night,Alumni Stadium,Chestnut Hill,Massachusetts,0,,,0, +5487,2026,3,NIU,BC,0,0,0,0,0,0,0,0,0,Ape,Fireballer34,Thursday Night,Brigham Field at Huskie Stadium,DeKalb,Illinois,0,,,0, +5488,2026,1,OREG,NAVY,0,0,0,0,0,0,0,0,0,Dida28,Syndakyt,Thursday Night,Autzen Stadium,Eugene,Oregon,0,,,0, +5489,2026,2,UNT,ZONA,0,0,0,0,0,0,0,0,0,EmeraldSeasSunshine,Ares,Thursday Night,Apogee Stadium,Denton,Texas,0,,,0, +5490,2026,2,BOIS,FLA,0,0,0,0,0,0,0,0,0,cubansdoitbest,Weeze,Thursday Night,Albertsons Stadium,Boise,Idaho,0,,,0, +7075,2026,1,KANS,UTST,0,0,0,0,0,0,0,0,0,,,Thursday Night,,,,0,,,0, +7076,2026,2,KANS,USC,0,0,0,0,0,0,0,0,0,,,Thursday Night,,,,0,,,0, +7077,2026,2,ILLI,NCST,0,0,0,0,0,0,0,0,0,,,Thursday Night,,,,0,,,0, +7078,2026,3,UTST,ILLI,0,0,0,0,0,0,0,0,0,,,Thursday Night,,,,0,,,0, diff --git a/data/2026/2026_nfl_regularseason_games.csv b/data/2026/2026_nfl_regularseason_games.csv new file mode 100644 index 0000000..c5c9815 --- /dev/null +++ b/data/2026/2026_nfl_regularseason_games.csv @@ -0,0 +1,321 @@ +GameID,Season,Week,Home Team,Away Team,Neutral Site,PreSeason,Conference Champ,Playoff,National Champ,Listed Coach,Other Coach,TimeSlot,Stadium,City,State,GameTitle,Info,NextGameID,HoA +1000,2026,1,PHI,CLE,0,1,0,0,0,acewulf,LordLittleButt,Sunday Noon,Lincoln Financial Field,Philadelphia,PA,,,0, +1001,2026,1,MIA,CAR,0,1,0,0,0,TheLiberator,Sarge,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1002,2026,1,DAL,LAC,0,1,0,0,0,Rocketcan,Dean,Sunday Afternoon,AT&T Stadium,Arlington,TX,,,0, +1003,2026,1,GB,TEN,0,1,0,0,0,JC,Dearden,Sunday Noon,Lambeau Field,Green Bay,WI,,,0, +1004,2026,1,LV,MIN,0,1,0,0,0,Jieret,Bellwood,Sunday Afternoon,Allegiant Stadium,Paradise,NV,,,0, +1005,2026,1,NO,KC,0,1,0,0,0,servo75,Newkbomb,Sunday Noon,Caesars Superdome,New Orleans,LA,,,0, +1006,2026,1,IND,NYJ,0,1,0,0,0,npklemm,Tryggr,Sunday Afternoon,Lucas Oil Stadium,Indianapolis,IN,,,0, +1007,2026,1,TB,BAL,0,1,0,0,0,ATonOfLaw,SyndaKyt,Sunday Noon,Raymond James Stadium,Tampa,FL,,,0, +1008,2026,1,HOU,ARI,0,1,0,0,0,lied,kgreene829,Sunday Afternoon,NRG Stadium,Houston,TX,,,0, +1009,2026,1,JAX,WAS,0,1,0,0,0,Weeze,Ewade,Sunday Noon,TIAA Bank Field,Jacksonville,FL,,,0, +1010,2026,1,BUF,ATL,0,1,0,0,0,Minnow,mahrowkeen,Sunday Noon,Highmark Stadium,Orchard Park,NY,,,0, +1011,2026,1,DEN,PIT,0,1,0,0,0,alexfall862,smackemz3,Sunday Afternoon,Empower Field at Mile High,Denver,CO,,,0, +1012,2026,1,CHI,SF,0,1,0,0,0,nemolee.exe,Dr_Novella,Sunday Afternoon,Soldier Field,Chicago,IL,,,0, +1013,2026,1,CIN,NYG,0,1,0,0,0,Ezaco,thatfunk,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1014,2026,1,LAR,DET,0,1,0,0,0,Vivid,VerifiedThing,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1015,2026,1,SEA,NE,0,1,0,0,0,CoachCartier,Curby4,Sunday Afternoon,Lumen Field,Seattle,WA,,,0, +1016,2026,2,CLE,CAR,0,1,0,0,0,LordLittleButt,Sarge,Sunday Noon,FirstEnergy Stadium,Cleveland,OH,,,0, +1017,2026,2,MIA,GB,0,1,0,0,0,TheLiberator,JC,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1018,2026,2,DAL,NO,0,1,0,0,0,Rocketcan,servo75,Sunday Afternoon,AT&T Stadium,Arlington,TX,,,0, +1019,2026,2,CHI,TEN,0,1,0,0,0,nemolee.exe,Dearden,Sunday Afternoon,Soldier Field,Chicago,IL,,,0, +1020,2026,2,DET,KC,0,1,0,0,0,VerifiedThing,Newkbomb,Sunday Noon,Ford Field,Detroit,MI,,,0, +1021,2026,2,BAL,PHI,0,1,0,0,0,SyndaKyt,acewulf,Sunday Noon,M&T Bank Stadium,Baltimore,MD,,,0, +1022,2026,2,NYJ,SEA,0,1,0,0,0,Tryggr,CoachCartier,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1023,2026,2,MIN,HOU,0,1,0,0,0,Bellwood,lied,Sunday Afternoon,U.S. Bank Stadium,Minneapolis,MN,,,0, +1024,2026,2,LAC,WAS,0,1,0,0,0,Dean,Ewade,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1025,2026,2,ATL,LV,0,1,0,0,0,mahrowkeen,Jieret,Sunday Noon,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1026,2026,2,SF,BUF,0,1,0,0,0,Dr_Novella,Minnow,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1027,2026,2,NYG,JAX,0,1,0,0,0,thatfunk,Weeze,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1028,2026,2,ARI,CIN,0,1,0,0,0,kgreene829,Ezaco,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1029,2026,2,DEN,TB,0,1,0,0,0,alexfall862,ATonOfLaw,Sunday Afternoon,Empower Field at Mile High,Denver,CO,,,0, +1030,2026,2,IND,PIT,0,1,0,0,0,npklemm,smackemz3,Sunday Afternoon,Lucas Oil Stadium,Indianapolis,IN,,,0, +1031,2026,2,NE,LAR,0,1,0,0,0,Curby4,Vivid,Sunday Noon,Gillette Stadium,Foxborough,MA,,,0, +1032,2026,3,KC,CLE,0,1,0,0,0,Newkbomb,LordLittleButt,Sunday Afternoon,Arrowhead Stadium,Kansas City,MO,,,0, +1033,2026,3,DET,MIA,0,1,0,0,0,VerifiedThing,TheLiberator,Sunday Noon,Ford Field,Detroit,MI,,,0, +1034,2026,3,TEN,DAL,0,1,0,0,0,Dearden,Rocketcan,Sunday Afternoon,Nissan Stadium,Nashville,TN,,,0, +1035,2026,3,NO,LV,0,1,0,0,0,servo75,Jieret,Sunday Afternoon,Caesars Superdome,New Orleans,LA,,,0, +1036,2026,3,ARI,NYJ,0,1,0,0,0,kgreene829,Tryggr,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1037,2026,3,LAC,MIN,0,1,0,0,0,Dean,Bellwood,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1038,2026,3,SF,HOU,0,1,0,0,0,Dr_Novella,lied,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1039,2026,3,BAL,JAX,0,1,0,0,0,SyndaKyt,Weeze,Sunday Noon,M&T Bank Stadium,Baltimore,MD,,,0, +1040,2026,3,GB,BUF,0,1,0,0,0,JC,Minnow,Sunday Noon,Lambeau Field,Green Bay,WI,,,0, +1041,2026,3,PHI,ATL,0,1,0,0,0,acewulf,mahrowkeen,Sunday Noon,Lincoln Financial Field,Philadelphia,PA,,,0, +1042,2026,3,CAR,NE,0,1,0,0,0,Sarge,Curby4,Sunday Noon,Bank of America Stadium,Charlotte,NC,,,0, +1043,2026,3,CIN,DEN,0,1,0,0,0,Ezaco,alexfall862,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1044,2026,3,LAR,CHI,0,1,0,0,0,Vivid,nemolee.exe,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1045,2026,3,NYG,IND,0,1,0,0,0,thatfunk,npklemm,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1046,2026,3,PIT,TB,0,1,0,0,0,smackemz3,ATonOfLaw,Sunday Noon,Heinz Field,Pittsburgh,PA,,,0, +1047,2026,3,SEA,WAS,0,1,0,0,0,CoachCartier,Ewade,Sunday Afternoon,Lumen Field,Seattle,WA,,,0, +1048,2026,1,BUF,CLE,0,0,0,0,0,Minnow,LordLittleButt,Sunday Noon,Highmark Stadium,Orchard Park,NY,,,0, +1049,2026,1,NE,MIA,0,0,0,0,0,Curby4,TheLiberator,Sunday Noon,Gillette Stadium,Foxborough,MA,,,0, +1050,2026,1,NYJ,DAL,0,0,0,0,0,Tryggr,Rocketcan,Sunday Afternoon,MetLife Stadium,East Rutherford,NJ,,,0, +1051,2026,1,BAL,PIT,0,0,0,0,0,SyndaKyt,smackemz3,Sunday Noon,M&T Bank Stadium,Baltimore,MD,,,0, +1052,2026,1,IND,TEN,0,0,0,0,0,npklemm,Dearden,Monday Night Football,Lucas Oil Stadium,Indianapolis,IN,,,0, +1053,2026,1,JAX,CAR,0,0,0,0,0,Weeze,Sarge,Sunday Noon,TIAA Bank Field,Jacksonville,FL,,,0, +1054,2026,1,LV,HOU,0,0,0,0,0,Jieret,lied,Sunday Afternoon,Allegiant Stadium,Paradise,NV,,,0, +1055,2026,1,LAC,DEN,0,0,0,0,0,Dean,alexfall862,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1056,2026,1,KC,CIN,0,0,0,0,0,Newkbomb,Ezaco,Sunday Afternoon,Arrowhead Stadium,Kansas City,MO,,,0, +1057,2026,1,WAS,CHI,0,0,0,0,0,Ewade,nemolee.exe,Thursday Night Football,FedExField,Landover,MD,,,0, +1058,2026,1,NYG,SF,0,0,0,0,0,thatfunk,Dr_Novella,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1059,2026,1,GB,LAR,0,0,0,0,0,JC,Vivid,Sunday Night Football,Lambeau Field,Green Bay,WI,,,0, +1060,2026,1,DET,PHI,0,0,0,0,0,VerifiedThing,acewulf,Sunday Noon,Ford Field,Detroit,MI,,,0, +1061,2026,1,MIN,NO,0,0,0,0,0,Bellwood,servo75,Sunday Noon,U.S. Bank Stadium,Minneapolis,MN,,,0, +1062,2026,1,SEA,ATL,0,0,0,0,0,CoachCartier,mahrowkeen,Sunday Afternoon,Lumen Field,Seattle,WA,,,0, +1063,2026,1,ARI,TB,0,0,0,0,0,kgreene829,ATonOfLaw,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1064,2026,2,MIA,BAL,0,0,0,0,0,TheLiberator,SyndaKyt,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1065,2026,2,CLE,IND,0,0,0,0,0,LordLittleButt,npklemm,Sunday Noon,FirstEnergy Stadium,Cleveland,OH,,,0, +1066,2026,2,PIT,JAX,0,0,0,0,0,smackemz3,Weeze,Sunday Night Football,Heinz Field,Pittsburgh,PA,,,0, +1067,2026,2,CIN,BUF,0,0,0,0,0,Ezaco,Minnow,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1068,2026,2,TEN,LV,0,0,0,0,0,Dearden,Jieret,Sunday Afternoon,Nissan Stadium,Nashville,TN,,,0, +1069,2026,2,HOU,TB,0,0,0,0,0,lied,ATonOfLaw,Sunday Afternoon,NRG Stadium,Houston,TX,,,0, +1070,2026,2,DEN,ARI,0,0,0,0,0,alexfall862,kgreene829,Sunday Afternoon,Empower Field at Mile High,Denver,CO,,,0, +1071,2026,2,LAC,NE,0,0,0,0,0,Dean,Curby4,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1072,2026,2,DAL,WAS,0,0,0,0,0,Rocketcan,Ewade,Sunday Afternoon,AT&T Stadium,Arlington,TX,,,0, +1073,2026,2,PHI,NYJ,0,0,0,0,0,acewulf,Tryggr,Sunday Noon,Lincoln Financial Field,Philadelphia,PA,,,0, +1074,2026,2,GB,DET,0,0,0,0,0,JC,VerifiedThing,Sunday Noon,Lambeau Field,Green Bay,WI,,,0, +1075,2026,2,CHI,NYG,0,0,0,0,0,nemolee.exe,thatfunk,Sunday Noon,Soldier Field,Chicago,IL,,,0, +1076,2026,2,MIN,KC,0,0,0,0,0,Bellwood,Newkbomb,Sunday Noon,U.S. Bank Stadium,Minneapolis,MN,,,0, +1077,2026,2,ATL,CAR,0,0,0,0,0,mahrowkeen,Sarge,Monday Night Football,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1078,2026,2,NO,SEA,0,0,0,0,0,servo75,CoachCartier,Thursday Night Football,Caesars Superdome,New Orleans,LA,,,0, +1079,2026,2,LAR,SF,0,0,0,0,0,Vivid,Dr_Novella,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1080,2026,3,BUF,MIA,0,0,0,0,0,Minnow,TheLiberator,Sunday Noon,Highmark Stadium,Orchard Park,NY,,,0, +1081,2026,3,NE,DAL,0,0,0,0,0,Curby4,Rocketcan,Sunday Afternoon,Gillette Stadium,Foxborough,MA,,,0, +1082,2026,3,NYJ,NYG,0,0,0,0,0,Tryggr,thatfunk,Thursday Night Football,MetLife Stadium,East Rutherford,NJ,,,0, +1083,2026,3,PIT,GB,0,0,0,0,0,smackemz3,JC,Sunday Noon,Heinz Field,Pittsburgh,PA,,,0, +1084,2026,3,CIN,CLE,0,0,0,0,0,Ezaco,LordLittleButt,Monday Night Football,Paul Brown Stadium,Cincinnati,OH,,,0, +1085,2026,3,IND,KC,0,0,0,0,0,npklemm,Newkbomb,Sunday Noon,Lucas Oil Stadium,Indianapolis,IN,,,0, +1086,2026,3,JAX,HOU,0,0,0,0,0,Weeze,lied,Sunday Afternoon,TIAA Bank Field,Jacksonville,FL,,,0, +1087,2026,3,LV,LAC,0,0,0,0,0,Jieret,Dean,Sunday Night Football,Allegiant Stadium,Paradise,NV,,,0, +1088,2026,3,WAS,ATL,0,0,0,0,0,Ewade,mahrowkeen,Sunday Noon,FedExField,Landover,MD,,,0, +1089,2026,3,PHI,TEN,0,0,0,0,0,acewulf,Dearden,Sunday Noon,Lincoln Financial Field,Philadelphia,PA,,,0, +1090,2026,3,CHI,MIN,0,0,0,0,0,nemolee.exe,Bellwood,Sunday Afternoon,Soldier Field,Chicago,IL,,,0, +1091,2026,3,CAR,DET,0,0,0,0,0,Sarge,VerifiedThing,Sunday Noon,Bank of America Stadium,Charlotte,NC,,,0, +1092,2026,3,TB,NO,0,0,0,0,0,ATonOfLaw,servo75,Sunday Noon,Raymond James Stadium,Tampa,FL,,,0, +1093,2026,3,SEA,LAR,0,0,0,0,0,CoachCartier,Vivid,Sunday Afternoon,Lumen Field,Seattle,WA,,,0, +1094,2026,3,ARI,BAL,0,0,0,0,0,kgreene829,SyndaKyt,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1095,2026,3,SF,DEN,0,0,0,0,0,Dr_Novella,alexfall862,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1096,2026,4,MIA,CIN,0,0,0,0,0,TheLiberator,Ezaco,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1097,2026,4,NYJ,BUF,0,0,0,0,0,Tryggr,Minnow,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1098,2026,4,CLE,MIN,0,0,0,0,0,LordLittleButt,Bellwood,Sunday Noon,FirstEnergy Stadium,Cleveland,OH,,,0, +1099,2026,4,BAL,GB,0,0,0,0,0,SyndaKyt,JC,Sunday Noon,M&T Bank Stadium,Baltimore,MD,,,0, +1100,2026,4,IND,JAX,0,0,0,0,0,npklemm,Weeze,Sunday Noon,Lucas Oil Stadium,Indianapolis,IN,,,0, +1101,2026,4,HOU,ATL,0,0,0,0,0,lied,mahrowkeen,Sunday Afternoon,NRG Stadium,Houston,TX,,,0, +1102,2026,4,DEN,LAR,0,0,0,0,0,alexfall862,Vivid,Monday Night Football,Empower Field at Mile High,Denver,CO,,,0, +1103,2026,4,KC,LAC,0,0,0,0,0,Newkbomb,Dean,Sunday Afternoon,Arrowhead Stadium,Kansas City,MO,,,0, +1104,2026,4,PHI,WAS,0,0,0,0,0,acewulf,Ewade,Sunday Night Football,Lincoln Financial Field,Philadelphia,PA,,,0, +1105,2026,4,NYG,NE,0,0,0,0,0,thatfunk,Curby4,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1106,2026,4,DET,LV,0,0,0,0,0,VerifiedThing,Jieret,Sunday Afternoon,Ford Field,Detroit,MI,,,0, +1107,2026,4,CHI,DAL,0,0,0,0,0,nemolee.exe,Rocketcan,Sunday Afternoon,Soldier Field,Chicago,IL,,,0, +1108,2026,4,CAR,TEN,0,0,0,0,0,Sarge,Dearden,Sunday Noon,Bank of America Stadium,Charlotte,NC,,,0, +1109,2026,4,SEA,PIT,0,0,0,0,0,CoachCartier,smackemz3,Sunday Afternoon,Lumen Field,Seattle,WA,,,0, +1110,2026,4,ARI,NO,0,0,0,0,0,kgreene829,servo75,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1111,2026,4,SF,TB,0,0,0,0,0,Dr_Novella,ATonOfLaw,Thursday Night Football,Levi's Stadium,Santa Clara,CA,,,0, +1112,2026,5,BUF,PHI,0,0,0,0,0,Minnow,acewulf,Sunday Noon,Highmark Stadium,Orchard Park,NY,,,0, +1113,2026,5,NE,PIT,0,0,0,0,0,Curby4,smackemz3,Sunday Noon,Gillette Stadium,Foxborough,MA,,,0, +1114,2026,5,CLE,NYJ,0,0,0,0,0,LordLittleButt,Tryggr,Sunday Noon,FirstEnergy Stadium,Cleveland,OH,,,0, +1115,2026,5,CIN,BAL,0,0,0,0,0,Ezaco,SyndaKyt,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1116,2026,5,JAX,LAC,0,0,0,0,0,Weeze,Dean,Sunday Afternoon,TIAA Bank Field,Jacksonville,FL,,,0, +1117,2026,5,LV,DEN,0,0,0,0,0,Jieret,alexfall862,Sunday Afternoon,Allegiant Stadium,Paradise,NV,,,0, +1118,2026,5,KC,TEN,0,0,0,0,0,Newkbomb,Dearden,Thursday Night Football,Arrowhead Stadium,Kansas City,MO,,,0, +1119,2026,5,WAS,IND,0,0,0,0,0,Ewade,npklemm,Sunday Noon,FedExField,Landover,MD,,,0, +1120,2026,5,DAL,NYG,0,0,0,0,0,Rocketcan,thatfunk,Sunday Afternoon,AT&T Stadium,Arlington,TX,,,0, +1121,2026,5,GB,CHI,0,0,0,0,0,JC,nemolee.exe,Monday Night Football,Lambeau Field,Green Bay,WI,,,0, +1122,2026,5,MIN,DET,0,0,0,0,0,Bellwood,VerifiedThing,Sunday Noon,U.S. Bank Stadium,Minneapolis,MN,,,0, +1123,2026,5,ATL,MIA,0,0,0,0,0,mahrowkeen,TheLiberator,Sunday Night Football,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1124,2026,5,TB,CAR,0,0,0,0,0,ATonOfLaw,Sarge,Sunday Noon,Raymond James Stadium,Tampa,FL,,,0, +1125,2026,5,NO,HOU,0,0,0,0,0,servo75,lied,Sunday Afternoon,Caesars Superdome,New Orleans,LA,,,0, +1126,2026,5,LAR,ARI,0,0,0,0,0,Vivid,kgreene829,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1127,2026,5,SF,SEA,0,0,0,0,0,Dr_Novella,CoachCartier,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1128,2026,6,MIA,NE,0,0,0,0,0,TheLiberator,Curby4,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1129,2026,6,BUF,LV,0,0,0,0,0,Minnow,Jieret,Sunday Night Football,Highmark Stadium,Orchard Park,NY,,,0, +1130,2026,6,PIT,DET,0,0,0,0,0,smackemz3,VerifiedThing,Sunday Noon,Heinz Field,Pittsburgh,PA,,,0, +1131,2026,6,IND,TB,0,0,0,0,0,npklemm,ATonOfLaw,Sunday Afternoon,Lucas Oil Stadium,Indianapolis,IN,,,0, +1132,2026,6,TEN,HOU,0,0,0,0,0,Dearden,lied,Sunday Afternoon,Nissan Stadium,Nashville,TN,,,0, +1133,2026,6,LAC,ARI,0,0,0,0,0,Dean,kgreene829,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1134,2026,6,KC,JAX,0,0,0,0,0,Newkbomb,Weeze,Sunday Afternoon,Arrowhead Stadium,Kansas City,MO,,,0, +1135,2026,6,WAS,NYJ,0,0,0,0,0,Ewade,Tryggr,Sunday Noon,FedExField,Landover,MD,,,0, +1136,2026,6,NYG,PHI,0,0,0,0,0,thatfunk,acewulf,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1137,2026,6,GB,CLE,0,0,0,0,0,JC,LordLittleButt,Sunday Noon,Lambeau Field,Green Bay,WI,,,0, +1138,2026,6,CHI,CIN,0,0,0,0,0,nemolee.exe,Ezaco,Sunday Afternoon,Soldier Field,Chicago,IL,,,0, +1139,2026,6,MIN,BAL,0,0,0,0,0,Bellwood,SyndaKyt,Monday Night Football,U.S. Bank Stadium,Minneapolis,MN,,,0, +1140,2026,6,ATL,NO,0,0,0,0,0,mahrowkeen,servo75,Sunday Noon,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1141,2026,6,CAR,SF,0,0,0,0,0,Sarge,Dr_Novella,Sunday Afternoon,Bank of America Stadium,Charlotte,NC,,,0, +1142,2026,6,SEA,DAL,0,0,0,0,0,CoachCartier,Rocketcan,Thursday Night Football,Lumen Field,Seattle,WA,,,0, +1143,2026,7,NYJ,NE,0,0,0,0,0,Tryggr,Curby4,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1144,2026,7,CLE,PIT,0,0,0,0,0,LordLittleButt,smackemz3,Sunday Night Football,FirstEnergy Stadium,Cleveland,OH,,,0, +1145,2026,7,HOU,JAX,0,0,0,0,0,lied,Weeze,Monday Night Football,NRG Stadium,Houston,TX,,,0, +1146,2026,7,DEN,TEN,0,0,0,0,0,alexfall862,Dearden,Sunday Afternoon,Empower Field at Mile High,Denver,CO,,,0, +1147,2026,7,LV,SEA,0,0,0,0,0,Jieret,CoachCartier,Sunday Afternoon,Allegiant Stadium,Paradise,NV,,,0, +1148,2026,7,LAC,IND,0,0,0,0,0,Dean,npklemm,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1149,2026,7,WAS,DAL,0,0,0,0,0,Ewade,Rocketcan,Sunday Noon,FedExField,Landover,MD,,,0, +1150,2026,7,PHI,CHI,0,0,0,0,0,acewulf,nemolee.exe,Sunday Noon,Lincoln Financial Field,Philadelphia,PA,,,0, +1151,2026,7,DET,BAL,0,0,0,0,0,VerifiedThing,SyndaKyt,Sunday Noon,Ford Field,Detroit,MI,,,0, +1152,2026,7,ATL,GB,0,0,0,0,0,mahrowkeen,JC,Sunday Noon,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1153,2026,7,TB,LAR,0,0,0,0,0,ATonOfLaw,Vivid,Sunday Noon,Raymond James Stadium,Tampa,FL,,,0, +1154,2026,7,NO,NYG,0,0,0,0,0,servo75,thatfunk,Thursday Night Football,Caesars Superdome,New Orleans,LA,,,0, +1155,2026,7,ARI,KC,0,0,0,0,0,kgreene829,Newkbomb,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1156,2026,7,SF,CIN,0,0,0,0,0,Dr_Novella,Ezaco,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1157,2026,8,MIA,NYJ,0,0,0,0,0,TheLiberator,Tryggr,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1158,2026,8,BAL,BUF,0,0,0,0,0,SyndaKyt,Minnow,Sunday Noon,M&T Bank Stadium,Baltimore,MD,,,0, +1159,2026,8,CIN,MIN,0,0,0,0,0,Ezaco,Bellwood,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1160,2026,8,IND,DEN,0,0,0,0,0,npklemm,alexfall862,Thursday Night Football,Lucas Oil Stadium,Indianapolis,IN,,,0, +1161,2026,8,JAX,TEN,0,0,0,0,0,Weeze,Dearden,Sunday Noon,TIAA Bank Field,Jacksonville,FL,,,0, +1162,2026,8,LAC,HOU,0,0,0,0,0,Dean,lied,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1163,2026,8,KC,SF,0,0,0,0,0,Newkbomb,Dr_Novella,Sunday Afternoon,Arrowhead Stadium,Kansas City,MO,,,0, +1164,2026,8,DAL,CAR,0,0,0,0,0,Rocketcan,Sarge,Monday Night Football,AT&T Stadium,Arlington,TX,,,0, +1165,2026,8,GB,WAS,0,0,0,0,0,JC,Ewade,Sunday Night Football,Lambeau Field,Green Bay,WI,,,0, +1166,2026,8,DET,SEA,0,0,0,0,0,VerifiedThing,CoachCartier,Sunday Afternoon,Ford Field,Detroit,MI,,,0, +1167,2026,8,CHI,PIT,0,0,0,0,0,nemolee.exe,smackemz3,Sunday Noon,Soldier Field,Chicago,IL,,,0, +1168,2026,8,NO,TB,0,0,0,0,0,servo75,ATonOfLaw,Sunday Noon,Caesars Superdome,New Orleans,LA,,,0, +1169,2026,8,LAR,CLE,0,0,0,0,0,Vivid,LordLittleButt,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1170,2026,8,ARI,LV,0,0,0,0,0,kgreene829,Jieret,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1171,2026,9,MIA,PHI,0,0,0,0,0,TheLiberator,acewulf,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1172,2026,9,BUF,NYJ,0,0,0,0,0,Minnow,Tryggr,Sunday Noon,Highmark Stadium,Orchard Park,NY,,,0, +1173,2026,9,PIT,CIN,0,0,0,0,0,smackemz3,Ezaco,Sunday Noon,Heinz Field,Pittsburgh,PA,,,0, +1174,2026,9,JAX,NO,0,0,0,0,0,Weeze,servo75,Sunday Noon,TIAA Bank Field,Jacksonville,FL,,,0, +1175,2026,9,TEN,ATL,0,0,0,0,0,Dearden,mahrowkeen,Sunday Noon,Nissan Stadium,Nashville,TN,,,0, +1176,2026,9,HOU,IND,0,0,0,0,0,lied,npklemm,Sunday Afternoon,NRG Stadium,Houston,TX,,,0, +1177,2026,9,DEN,LAC,0,0,0,0,0,alexfall862,Dean,Sunday Afternoon,Empower Field at Mile High,Denver,CO,,,0, +1178,2026,9,KC,LV,0,0,0,0,0,Newkbomb,Jieret,Monday Night Football,Arrowhead Stadium,Kansas City,MO,,,0, +1179,2026,9,NYG,WAS,0,0,0,0,0,thatfunk,Ewade,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1180,2026,9,DET,CHI,0,0,0,0,0,VerifiedThing,nemolee.exe,Sunday Afternoon,Ford Field,Detroit,MI,,,0, +1181,2026,9,MIN,GB,0,0,0,0,0,Bellwood,JC,Sunday Afternoon,U.S. Bank Stadium,Minneapolis,MN,,,0, +1182,2026,9,TB,NE,0,0,0,0,0,ATonOfLaw,Curby4,Thursday Night Football,Raymond James Stadium,Tampa,FL,,,0, +1183,2026,9,LAR,CAR,0,0,0,0,0,Vivid,Sarge,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1184,2026,9,ARI,SF,0,0,0,0,0,kgreene829,Dr_Novella,Sunday Night Football,State Farm Stadium,Glendale,AZ,,,0, +1185,2026,10,NE,BUF,0,0,0,0,0,Curby4,Minnow,Sunday Noon,Gillette Stadium,Foxborough,MA,,,0, +1186,2026,10,NYJ,CIN,0,0,0,0,0,Tryggr,Ezaco,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1187,2026,10,PIT,MIA,0,0,0,0,0,smackemz3,TheLiberator,Sunday Noon,Heinz Field,Pittsburgh,PA,,,0, +1188,2026,10,BAL,CLE,0,0,0,0,0,SyndaKyt,LordLittleButt,Sunday Noon,M&T Bank Stadium,Baltimore,MD,,,0, +1189,2026,10,TEN,NO,0,0,0,0,0,Dearden,servo75,Sunday Noon,Nissan Stadium,Nashville,TN,,,0, +1190,2026,10,DEN,KC,0,0,0,0,0,alexfall862,Newkbomb,Sunday Afternoon,Empower Field at Mile High,Denver,CO,,,0, +1191,2026,10,DAL,JAX,0,0,0,0,0,Rocketcan,Weeze,Sunday Afternoon,AT&T Stadium,Arlington,TX,,,0, +1192,2026,10,PHI,MIN,0,0,0,0,0,acewulf,Bellwood,Thursday Night Football,Lincoln Financial Field,Philadelphia,PA,,,0, +1193,2026,10,NYG,HOU,0,0,0,0,0,thatfunk,lied,Sunday Afternoon,MetLife Stadium,East Rutherford,NJ,,,0, +1194,2026,10,ATL,IND,0,0,0,0,0,mahrowkeen,npklemm,Sunday Night Football,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1195,2026,10,CAR,TB,0,0,0,0,0,Sarge,ATonOfLaw,Sunday Noon,Bank of America Stadium,Charlotte,NC,,,0, +1196,2026,10,LAR,WAS,0,0,0,0,0,Vivid,Ewade,Monday Night Football,SoFi Stadium,Inglewood,CA,,,0, +1197,2026,10,SEA,ARI,0,0,0,0,0,CoachCartier,kgreene829,Sunday Afternoon,Lumen Field,Seattle,WA,,,0, +1198,2026,10,SF,LAC,0,0,0,0,0,Dr_Novella,Dean,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1199,2026,11,CLE,MIA,0,0,0,0,0,LordLittleButt,TheLiberator,Thursday Night Football,FirstEnergy Stadium,Cleveland,OH,,,0, +1200,2026,11,BAL,NE,0,0,0,0,0,SyndaKyt,Curby4,Sunday Noon,M&T Bank Stadium,Baltimore,MD,,,0, +1201,2026,11,CIN,DET,0,0,0,0,0,Ezaco,VerifiedThing,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1202,2026,11,TEN,IND,0,0,0,0,0,Dearden,npklemm,Sunday Noon,Nissan Stadium,Nashville,TN,,,0, +1203,2026,11,HOU,NYJ,0,0,0,0,0,lied,Tryggr,Monday Night Football,NRG Stadium,Houston,TX,,,0, +1204,2026,11,LV,SF,0,0,0,0,0,Jieret,Dr_Novella,Sunday Afternoon,Allegiant Stadium,Paradise,NV,,,0, +1205,2026,11,KC,SEA,0,0,0,0,0,Newkbomb,CoachCartier,Sunday Afternoon,Arrowhead Stadium,Kansas City,MO,,,0, +1206,2026,11,DAL,PHI,0,0,0,0,0,Rocketcan,acewulf,Sunday Afternoon,AT&T Stadium,Arlington,TX,,,0, +1207,2026,11,NYG,BUF,0,0,0,0,0,thatfunk,Minnow,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1208,2026,11,GB,DEN,0,0,0,0,0,JC,alexfall862,Sunday Noon,Lambeau Field,Green Bay,WI,,,0, +1209,2026,11,MIN,CHI,0,0,0,0,0,Bellwood,nemolee.exe,Sunday Afternoon,U.S. Bank Stadium,Minneapolis,MN,,,0, +1210,2026,11,TB,ATL,0,0,0,0,0,ATonOfLaw,mahrowkeen,Sunday Noon,Raymond James Stadium,Tampa,FL,,,0, +1211,2026,11,NO,CAR,0,0,0,0,0,servo75,Sarge,Sunday Night Football,Caesars Superdome,New Orleans,LA,,,0, +1212,2026,11,ARI,LAR,0,0,0,0,0,kgreene829,Vivid,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1213,2026,12,MIA,DEN,0,0,0,0,0,TheLiberator,alexfall862,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1214,2026,12,NE,WAS,0,0,0,0,0,Curby4,Ewade,Sunday Noon,Gillette Stadium,Foxborough,MA,,,0, +1215,2026,12,CLE,CIN,0,0,0,0,0,LordLittleButt,Ezaco,Sunday Noon,FirstEnergy Stadium,Cleveland,OH,,,0, +1216,2026,12,PIT,BAL,0,0,0,0,0,smackemz3,SyndaKyt,Monday Night Football,Heinz Field,Pittsburgh,PA,,,0, +1217,2026,12,JAX,LV,0,0,0,0,0,Weeze,Jieret,Sunday Night Football,TIAA Bank Field,Jacksonville,FL,,,0, +1218,2026,12,HOU,KC,0,0,0,0,0,lied,Newkbomb,Sunday Afternoon,NRG Stadium,Houston,TX,,,0, +1219,2026,12,DAL,BUF,0,0,0,0,0,Rocketcan,Minnow,Thursday Night Football,AT&T Stadium,Arlington,TX,,,0, +1220,2026,12,PHI,NYG,0,0,0,0,0,acewulf,thatfunk,Sunday Noon,Lincoln Financial Field,Philadelphia,PA,,,0, +1221,2026,12,DET,GB,0,0,0,0,0,VerifiedThing,JC,Thursday Night Football,Ford Field,Detroit,MI,,,0, +1222,2026,12,CHI,TB,0,0,0,0,0,nemolee.exe,ATonOfLaw,Sunday Noon,Soldier Field,Chicago,IL,,,0, +1223,2026,12,CAR,ARI,0,0,0,0,0,Sarge,kgreene829,Sunday Afternoon,Bank of America Stadium,Charlotte,NC,,,0, +1224,2026,12,LAR,ATL,0,0,0,0,0,Vivid,mahrowkeen,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1225,2026,12,SEA,LAC,0,0,0,0,0,CoachCartier,Dean,Sunday Afternoon,Lumen Field,Seattle,WA,,,0, +1226,2026,12,SF,MIN,0,0,0,0,0,Dr_Novella,Bellwood,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1227,2026,13,BUF,PIT,0,0,0,0,0,Minnow,smackemz3,Sunday Noon,Highmark Stadium,Orchard Park,NY,,,0, +1228,2026,13,NE,CLE,0,0,0,0,0,Curby4,LordLittleButt,Sunday Noon,Gillette Stadium,Foxborough,MA,,,0, +1229,2026,13,BAL,CHI,0,0,0,0,0,SyndaKyt,nemolee.exe,Sunday Afternoon,M&T Bank Stadium,Baltimore,MD,,,0, +1230,2026,13,IND,CAR,0,0,0,0,0,npklemm,Sarge,Sunday Noon,Lucas Oil Stadium,Indianapolis,IN,,,0, +1231,2026,13,LV,KC,0,0,0,0,0,Jieret,Newkbomb,Sunday Afternoon,Allegiant Stadium,Paradise,NV,,,0, +1232,2026,13,LAC,LAR,0,0,0,0,0,Dean,Vivid,Thursday Night Football,SoFi Stadium,Inglewood,CA,,,0, +1233,2026,13,WAS,MIA,0,0,0,0,0,Ewade,TheLiberator,Monday Night Football,FedExField,Landover,MD,,,0, +1234,2026,13,NYG,DET,0,0,0,0,0,thatfunk,VerifiedThing,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1235,2026,13,GB,PHI,0,0,0,0,0,JC,acewulf,Sunday Afternoon,Lambeau Field,Green Bay,WI,,,0, +1236,2026,13,MIN,DAL,0,0,0,0,0,Bellwood,Rocketcan,Sunday Afternoon,U.S. Bank Stadium,Minneapolis,MN,,,0, +1237,2026,13,ATL,JAX,0,0,0,0,0,mahrowkeen,Weeze,Sunday Noon,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1238,2026,13,TB,TEN,0,0,0,0,0,ATonOfLaw,Dearden,Sunday Afternoon,Raymond James Stadium,Tampa,FL,,,0, +1239,2026,13,NO,NYJ,0,0,0,0,0,servo75,Tryggr,Sunday Noon,Caesars Superdome,New Orleans,LA,,,0, +1240,2026,13,SEA,DEN,0,0,0,0,0,CoachCartier,alexfall862,Sunday Night Football,Lumen Field,Seattle,WA,,,0, +1241,2026,14,MIA,BUF,0,0,0,0,0,TheLiberator,Minnow,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1242,2026,14,NYJ,BAL,0,0,0,0,0,Tryggr,SyndaKyt,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1243,2026,14,CIN,NE,0,0,0,0,0,Ezaco,Curby4,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1244,2026,14,JAX,IND,0,0,0,0,0,Weeze,npklemm,Sunday Noon,TIAA Bank Field,Jacksonville,FL,,,0, +1245,2026,14,TEN,LAC,0,0,0,0,0,Dearden,Dean,Sunday Afternoon,Nissan Stadium,Nashville,TN,,,0, +1246,2026,14,DEN,CLE,0,0,0,0,0,alexfall862,LordLittleButt,Sunday Afternoon,Empower Field at Mile High,Denver,CO,,,0, +1247,2026,14,LV,PIT,0,0,0,0,0,Jieret,smackemz3,Sunday Afternoon,Allegiant Stadium,Paradise,NV,,,0, +1248,2026,14,WAS,PHI,0,0,0,0,0,Ewade,acewulf,Sunday Noon,FedExField,Landover,MD,,,0, +1249,2026,14,DAL,GB,0,0,0,0,0,Rocketcan,JC,Sunday Afternoon,AT&T Stadium,Arlington,TX,,,0, +1250,2026,14,CHI,DET,0,0,0,0,0,nemolee.exe,VerifiedThing,Monday Night Football,Soldier Field,Chicago,IL,,,0, +1251,2026,14,MIN,NYG,0,0,0,0,0,Bellwood,thatfunk,Thursday Night Football,U.S. Bank Stadium,Minneapolis,MN,,,0, +1252,2026,14,CAR,HOU,0,0,0,0,0,Sarge,lied,Sunday Night Football,Bank of America Stadium,Charlotte,NC,,,0, +1253,2026,14,NO,ATL,0,0,0,0,0,servo75,mahrowkeen,Sunday Noon,Caesars Superdome,New Orleans,LA,,,0, +1254,2026,14,ARI,SEA,0,0,0,0,0,kgreene829,CoachCartier,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1255,2026,14,SF,LAR,0,0,0,0,0,Dr_Novella,Vivid,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1256,2026,15,CLE,CHI,0,0,0,0,0,LordLittleButt,nemolee.exe,Sunday Noon,FirstEnergy Stadium,Cleveland,OH,,,0, +1257,2026,15,PIT,NYJ,0,0,0,0,0,smackemz3,Tryggr,Sunday Noon,Heinz Field,Pittsburgh,PA,,,0, +1258,2026,15,BAL,CIN,0,0,0,0,0,SyndaKyt,Ezaco,Sunday Night Football,M&T Bank Stadium,Baltimore,MD,,,0, +1259,2026,15,IND,MIA,0,0,0,0,0,npklemm,TheLiberator,Sunday Afternoon,Lucas Oil Stadium,Indianapolis,IN,,,0, +1260,2026,15,HOU,TEN,0,0,0,0,0,lied,Dearden,Sunday Afternoon,NRG Stadium,Houston,TX,,,0, +1261,2026,15,DEN,JAX,0,0,0,0,0,alexfall862,Weeze,Thursday Night Football,Empower Field at Mile High,Denver,CO,,,0, +1262,2026,15,LAC,LV,0,0,0,0,0,Dean,Jieret,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1263,2026,15,PHI,NE,0,0,0,0,0,acewulf,Curby4,Sunday Noon,Lincoln Financial Field,Philadelphia,PA,,,0, +1264,2026,15,NYG,DAL,0,0,0,0,0,thatfunk,Rocketcan,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1265,2026,15,GB,MIN,0,0,0,0,0,JC,Bellwood,Sunday Afternoon,Lambeau Field,Green Bay,WI,,,0, +1266,2026,15,DET,WAS,0,0,0,0,0,VerifiedThing,Ewade,Sunday Noon,Ford Field,Detroit,MI,,,0, +1267,2026,15,ATL,ARI,0,0,0,0,0,mahrowkeen,kgreene829,Monday Night Football,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1268,2026,15,CAR,BUF,0,0,0,0,0,Sarge,Minnow,Sunday Noon,Bank of America Stadium,Charlotte,NC,,,0, +1269,2026,15,TB,SEA,0,0,0,0,0,ATonOfLaw,CoachCartier,Sunday Noon,Raymond James Stadium,Tampa,FL,,,0, +1270,2026,15,LAR,KC,0,0,0,0,0,Vivid,Newkbomb,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1271,2026,15,SF,NO,0,0,0,0,0,Dr_Novella,servo75,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1272,2026,16,BUF,WAS,0,0,0,0,0,Minnow,Ewade,Sunday Noon,Highmark Stadium,Orchard Park,NY,,,0, +1273,2026,16,NE,NYJ,0,0,0,0,0,Curby4,Tryggr,Sunday Noon,Gillette Stadium,Foxborough,MA,,,0, +1274,2026,16,CIN,HOU,0,0,0,0,0,Ezaco,lied,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1275,2026,16,TEN,BAL,0,0,0,0,0,Dearden,SyndaKyt,Sunday Afternoon,Nissan Stadium,Nashville,TN,,,0, +1276,2026,16,KC,DEN,0,0,0,0,0,Newkbomb,alexfall862,Sunday Afternoon,Arrowhead Stadium,Kansas City,MO,,,0, +1277,2026,16,DAL,MIA,0,0,0,0,0,Rocketcan,TheLiberator,Sunday Night Football,AT&T Stadium,Arlington,TX,,,0, +1278,2026,16,PHI,ARI,0,0,0,0,0,acewulf,kgreene829,Sunday Afternoon,Lincoln Financial Field,Philadelphia,PA,,,0, +1279,2026,16,NYG,GB,0,0,0,0,0,thatfunk,JC,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1280,2026,16,DET,CLE,0,0,0,0,0,VerifiedThing,LordLittleButt,Monday Night Football,Ford Field,Detroit,MI,,,0, +1281,2026,16,CHI,LAC,0,0,0,0,0,nemolee.exe,Dean,Thursday Night Football,Soldier Field,Chicago,IL,,,0, +1282,2026,16,MIN,PIT,0,0,0,0,0,Bellwood,smackemz3,Sunday Afternoon,U.S. Bank Stadium,Minneapolis,MN,,,0, +1283,2026,16,CAR,ATL,0,0,0,0,0,Sarge,mahrowkeen,Sunday Noon,Bank of America Stadium,Charlotte,NC,,,0, +1284,2026,16,TB,JAX,0,0,0,0,0,ATonOfLaw,Weeze,Sunday Noon,Raymond James Stadium,Tampa,FL,,,0, +1285,2026,16,NO,IND,0,0,0,0,0,servo75,npklemm,Sunday Noon,Caesars Superdome,New Orleans,LA,,,0, +1286,2026,16,LAR,LV,0,0,0,0,0,Vivid,Jieret,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1287,2026,16,SEA,SF,0,0,0,0,0,CoachCartier,Dr_Novella,Sunday Afternoon,Lumen Field,Seattle,WA,,,0, +1288,2026,17,MIA,NYG,0,0,0,0,0,TheLiberator,thatfunk,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1289,2026,17,NE,TEN,0,0,0,0,0,Curby4,Dearden,Monday Night Football,Gillette Stadium,Foxborough,MA,,,0, +1290,2026,17,NYJ,KC,0,0,0,0,0,Tryggr,Newkbomb,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1291,2026,17,PIT,CLE,0,0,0,0,0,smackemz3,LordLittleButt,Sunday Noon,Heinz Field,Pittsburgh,PA,,,0, +1292,2026,17,BAL,LAC,0,0,0,0,0,SyndaKyt,Dean,Sunday Noon,M&T Bank Stadium,Baltimore,MD,,,0, +1293,2026,17,JAX,BUF,0,0,0,0,0,Weeze,Minnow,Sunday Noon,TIAA Bank Field,Jacksonville,FL,,,0, +1294,2026,17,HOU,DEN,0,0,0,0,0,lied,alexfall862,Sunday Afternoon,NRG Stadium,Houston,TX,,,0, +1295,2026,17,LV,IND,0,0,0,0,0,Jieret,npklemm,Sunday Afternoon,Allegiant Stadium,Paradise,NV,,,0, +1296,2026,17,WAS,MIN,0,0,0,0,0,Ewade,Bellwood,Sunday Noon,FedExField,Landover,MD,,,0, +1297,2026,17,DAL,DET,0,0,0,0,0,Rocketcan,VerifiedThing,Sunday Afternoon,AT&T Stadium,Arlington,TX,,,0, +1298,2026,17,GB,CIN,0,0,0,0,0,JC,Ezaco,Sunday Afternoon,Lambeau Field,Green Bay,WI,,,0, +1299,2026,17,ATL,SF,0,0,0,0,0,mahrowkeen,Dr_Novella,Sunday Noon,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1300,2026,17,TB,PHI,0,0,0,0,0,ATonOfLaw,acewulf,Thursday Night Football,Raymond James Stadium,Tampa,FL,,,0, +1301,2026,17,NO,LAR,0,0,0,0,0,servo75,Vivid,Sunday Afternoon,Caesars Superdome,New Orleans,LA,,,0, +1302,2026,17,SEA,CAR,0,0,0,0,0,CoachCartier,Sarge,Sunday Night Football,Lumen Field,Seattle,WA,,,0, +1303,2026,17,ARI,CHI,0,0,0,0,0,kgreene829,nemolee.exe,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1304,2026,18,BUF,NE,0,0,0,0,0,Minnow,Curby4,Sunday Noon,Highmark Stadium,Orchard Park,NY,,,0, +1305,2026,18,NYJ,MIA,0,0,0,0,0,Tryggr,TheLiberator,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1306,2026,18,CLE,BAL,0,0,0,0,0,LordLittleButt,SyndaKyt,Sunday Noon,FirstEnergy Stadium,Cleveland,OH,,,0, +1307,2026,18,CIN,PIT,0,0,0,0,0,Ezaco,smackemz3,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1308,2026,18,IND,HOU,0,0,0,0,0,npklemm,lied,Sunday Night Football,Lucas Oil Stadium,Indianapolis,IN,,,0, +1309,2026,18,TEN,JAX,0,0,0,0,0,Dearden,Weeze,Sunday Afternoon,Nissan Stadium,Nashville,TN,,,0, +1310,2026,18,DEN,LV,0,0,0,0,0,alexfall862,Jieret,Sunday Afternoon,Empower Field at Mile High,Denver,CO,,,0, +1311,2026,18,LAC,KC,0,0,0,0,0,Dean,Newkbomb,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1312,2026,18,WAS,NYG,0,0,0,0,0,Ewade,thatfunk,Sunday Noon,FedExField,Landover,MD,,,0, +1313,2026,18,PHI,DAL,0,0,0,0,0,acewulf,Rocketcan,Sunday Noon,Lincoln Financial Field,Philadelphia,PA,,,0, +1314,2026,18,DET,MIN,0,0,0,0,0,VerifiedThing,Bellwood,Sunday Afternoon,Ford Field,Detroit,MI,,,0, +1315,2026,18,CHI,GB,0,0,0,0,0,nemolee.exe,JC,Sunday Afternoon,Soldier Field,Chicago,IL,,,0, +1316,2026,18,ATL,TB,0,0,0,0,0,mahrowkeen,ATonOfLaw,Sunday Noon,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1317,2026,18,CAR,NO,0,0,0,0,0,Sarge,servo75,Sunday Noon,Bank of America Stadium,Charlotte,NC,,,0, +1318,2026,18,LAR,SEA,0,0,0,0,0,Vivid,CoachCartier,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1319,2026,18,SF,ARI,0,0,0,0,0,Dr_Novella,kgreene829,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, diff --git a/main.go b/main.go index 3e60ecc..b67678c 100644 --- a/main.go +++ b/main.go @@ -223,11 +223,12 @@ func handleRequests() http.Handler { apiRouter.HandleFunc("/nflplayers/team/{teamID}/", controller.AllNFLPlayersByTeamIDForDC).Methods("GET") apiRouter.HandleFunc("/nflplayers/freeagency/available/{teamID}", controller.FreeAgencyAvailablePlayers).Methods("GET") apiRouter.HandleFunc("/nflplayers/team/export/{teamID}/", controller.ExportNFLRosterToCSV).Methods("GET") + apiRouter.HandleFunc("/nflplayers/teams/export/all/", controller.ExportAllNFLRostersToCSV).Methods("GET") apiRouter.HandleFunc("/nflplayers/tag/player/", controller.TagPlayer).Methods("POST") apiRouter.HandleFunc("/nflplayers/cut/player/{PlayerID}/", controller.CutNFLPlayerFromRoster).Methods("GET") apiRouter.HandleFunc("/nflplayers/place/player/squad/{PlayerID}/", controller.PlaceNFLPlayerOnPracticeSquad).Methods("GET") apiRouter.HandleFunc("/nflplayers/injury/reserve/player/{PlayerID}/", controller.PlaceNFLPlayerOnInjuryReserve).Methods("GET") - apiRouter.HandleFunc("/collegeplayers/teams/export/", controller.ExportAllRostersToCSV).Methods("GET") // DO NOT USE + apiRouter.HandleFunc("/collegeplayers/teams/export/", controller.ExportAllCFBRostersToCSV).Methods("GET") // DO NOT USE // Poll Controls apiRouter.HandleFunc("/college/poll/create/", controller.CreatePollSubmission).Methods("POST") diff --git a/managers/BootstrapManager.go b/managers/BootstrapManager.go index 688083d..e333b78 100644 --- a/managers/BootstrapManager.go +++ b/managers/BootstrapManager.go @@ -25,6 +25,7 @@ type BootstrapData struct { CollegeInjuryReport []structs.CollegePlayer CollegeNotifications []structs.Notification CollegeGameplan structs.CollegeGameplan + CollegeGameplanMap map[uint]structs.CollegeGameplan CollegeDepthChart structs.CollegeTeamDepthChart ProTeam structs.NFLTeam AllProTeams []structs.NFLTeam @@ -104,7 +105,7 @@ func GetFirstBootstrapData(collegeID, proID string) BootstrapData { portalPlayers []structs.CollegePlayer injuredCollegePlayers []structs.CollegePlayer collegeNotifications []structs.Notification - collegeGameplan structs.CollegeGameplan + collegeGameplanMap map[uint]structs.CollegeGameplan collegeDepthChart structs.CollegeTeamDepthChart topPassers []structs.CollegePlayer topRushers []structs.CollegePlayer @@ -157,7 +158,8 @@ func GetFirstBootstrapData(collegeID, proID string) BootstrapData { }() go func() { defer wg.Done() - collegeGameplan = GetGameplanByTeamID(collegeID) + gameplans := GetAllCollegeGameplans() + collegeGameplanMap = MakeCollegeGameplanMap(gameplans) }() go func() { defer wg.Done() @@ -199,7 +201,7 @@ func GetFirstBootstrapData(collegeID, proID string) BootstrapData { CollegeRosterMap: collegePlayerMap, CollegeInjuryReport: injuredCollegePlayers, CollegeNotifications: collegeNotifications, - CollegeGameplan: collegeGameplan, + CollegeGameplanMap: collegeGameplanMap, CollegeDepthChart: collegeDepthChart, PortalPlayers: portalPlayers, ProTeam: proTeam, diff --git a/managers/ExportManager.go b/managers/ExportManager.go index 45c37ca..e227cc6 100644 --- a/managers/ExportManager.go +++ b/managers/ExportManager.go @@ -184,6 +184,70 @@ func ExportNFLTeamToCSV(TeamID string, w http.ResponseWriter) { } } +func ExportAllNFLTeamsToCSV(w http.ResponseWriter) { + // Get Team Data + nflPlayers := GetAllNFLPlayers() + nflPlayerMap := MakeNFLPlayerMapByTeamID(nflPlayers, true) + w.Header().Set("Content-Type", "text/csv; charset=utf-8") + w.Header().Set("Content-Disposition", "attachment;filename=all_nfl_players_on_roster.csv") + w.Header().Set("Transfer-Encoding", "chunked") + // Initialize writer + writer := csv.NewWriter(w) + + // Get Players + nflTeams := GetAllNFLTeams() + + HeaderRow := []string{ + "Team", "ID", "First Name", "Last Name", "Position", + "Archetype", "Position Two", "Archetype Two", "Year", "Age", + "High School", "Hometown", "State", "Height", + "Weight", "Overall", "Speed", + "Football IQ", "Agility", "Carrying", + "Catching", "Route Running", "Zone Coverage", "Man Coverage", + "Strength", "Tackle", "Pass Block", "Run Block", + "Pass Rush", "Run Defense", "Throw Power", "Throw Accuracy", + "Kick Power", "Kick Accuracy", "Punt Power", "Punt Accuracy", + "Stamina", "Injury", "Potential Grade", + } + + err := writer.Write(HeaderRow) + if err != nil { + log.Fatal("Cannot write header row", err) + } + + for _, team := range nflTeams { + players := nflPlayerMap[team.ID] + + for _, player := range players { + csvModel := structs.MapNFLPlayerToCSVModel(player) + playerRow := []string{ + team.TeamName, strconv.Itoa(int(player.ID)), csvModel.FirstName, csvModel.LastName, csvModel.Position, + csvModel.Archetype, csvModel.PositionTwo, csvModel.ArchetypeTwo, csvModel.Year, strconv.Itoa(player.Age), + player.HighSchool, player.Hometown, player.State, strconv.Itoa(player.Height), + strconv.Itoa(player.Weight), csvModel.OverallGrade, csvModel.SpeedGrade, + csvModel.FootballIQGrade, csvModel.AgilityGrade, csvModel.CarryingGrade, + csvModel.CatchingGrade, csvModel.RouteRunningGrade, csvModel.ZoneCoverageGrade, csvModel.ManCoverageGrade, + csvModel.StrengthGrade, csvModel.TackleGrade, csvModel.PassBlockGrade, csvModel.RunBlockGrade, + csvModel.PassRushGrade, csvModel.RunDefenseGrade, csvModel.ThrowPowerGrade, csvModel.ThrowAccuracyGrade, + csvModel.KickPowerGrade, csvModel.KickAccuracyGrade, csvModel.PuntPowerGrade, csvModel.PuntAccuracyGrade, + csvModel.StaminaGrade, csvModel.InjuryGrade, csvModel.PotentialGrade, + } + + err = writer.Write(playerRow) + if err != nil { + log.Fatal("Cannot write player row to CSV", err) + } + + writer.Flush() + err = writer.Error() + if err != nil { + log.Fatal("Error while writing to file ::", err) + } + } + } + +} + func ExportCrootsToCSV(w http.ResponseWriter) { w.Header().Set("Content-Type", "text/csv; charset=utf-8") w.Header().Set("Content-Disposition", "attachment;filename=2022SimNFLDraftClass.csv") @@ -425,6 +489,9 @@ func ExportNFLPlayByPlayToCSV(gameID string, w http.ResponseWriter) { "Defensive Tendency", "# of Blitzers", "LB Coverage", "CB Coverage", "S Coverage", "QB Player ID", "Ballcarrier ID", "Tackler1 ID", "Tackler2 ID", "Yards Gained", "Result", + "QB Id", "Back1 Id", "Back2 Id", "Back3 Id", "Slot1 Id", "Slot2 Id", "Le Id", "Re Id", "Lt Id", "LG id", "C id", "Rg Id", "Rt Id", + "Rde id", "Rdt Id", "Nt Id", "Ldt Id", "Lde Id", "Rolb Id", "Rilb Id", "Mlb Id", "Lilb Id", "Lolb Id", "Rcb Id", "DB1 Id", "DB2 Id", "DB3 ID", "Fs ID", "SS Id", "Lcb Id", + "Blitzer1 Id", "Blitzer2 Id", "Blitzer3 Id", } err := writer.Write(HeaderRow) if err != nil { @@ -452,6 +519,15 @@ func ExportNFLPlayByPlayToCSV(gameID string, w http.ResponseWriter) { play.DefensiveTendency, blitzNumber, play.LBCoverage, play.CBCoverage, play.SCoverage, qbID, bcID, t1ID, t2ID, yards, play.Result, + strconv.Itoa(int(play.Qb)), strconv.Itoa(int(play.Back1)), strconv.Itoa(int(play.Back2)), strconv.Itoa(int(play.Back3)), + strconv.Itoa(int(play.Slot1)), strconv.Itoa(int(play.Slot2)), strconv.Itoa(int(play.Le)), strconv.Itoa(int(play.Re)), + strconv.Itoa(int(play.Lt)), strconv.Itoa(int(play.Lg)), strconv.Itoa(int(play.C)), strconv.Itoa(int(play.Rg)), strconv.Itoa(int(play.Rt)), + strconv.Itoa(int(play.Rde)), strconv.Itoa(int(play.Rdt)), strconv.Itoa(int(play.Nt)), strconv.Itoa(int(play.Ldt)), strconv.Itoa(int(play.Lde)), + strconv.Itoa(int(play.Rolb)), strconv.Itoa(int(play.Rilb)), strconv.Itoa(int(play.Mlb)), strconv.Itoa(int(play.Lilb)), strconv.Itoa(int(play.Lolb)), + strconv.Itoa(int(play.Rcb)), + strconv.Itoa(int(play.Extradb1)), strconv.Itoa(int(play.Extradb2)), strconv.Itoa(int(play.Extradb3)), + strconv.Itoa(int(play.Fs)), strconv.Itoa(int(play.Ss)), strconv.Itoa(int(play.Fcb)), + strconv.Itoa(int(play.Blitzer1)), strconv.Itoa(int(play.Blitzer2)), strconv.Itoa(int(play.Blitzer3)), } err = writer.Write(row) @@ -497,6 +573,9 @@ func ExportCFBPlayByPlayToCSV(gameID string, w http.ResponseWriter) { "Defensive Tendency", "# of Blitzers", "LB Coverage", "CB Coverage", "S Coverage", "QB Player ID", "Ballcarrier ID", "Tackler1 ID", "Tackler2 ID", "Yards Gained", "Result", + "QB Id", "Back1 Id", "Back2 Id", "Back3 Id", "Slot1 Id", "Slot2 Id", "Le Id", "Re Id", "Lt Id", "LG id", "C id", "Rg Id", "Rt Id", + "Rde id", "Rdt Id", "Nt Id", "Ldt Id", "Lde Id", "Rolb Id", "Rilb Id", "Mlb Id", "Lilb Id", "Lolb Id", "Rcb Id", "DB1 Id", "DB2 Id", "DB3 ID", "Fs ID", "SS Id", "Lcb Id", + "Blitzer1 Id", "Blitzer2 Id", "Blitzer3 Id", } err := writer.Write(HeaderRow) if err != nil { @@ -524,6 +603,15 @@ func ExportCFBPlayByPlayToCSV(gameID string, w http.ResponseWriter) { play.DefensiveTendency, blitzNumber, play.LBCoverage, play.CBCoverage, play.SCoverage, qbID, bcID, t1ID, t2ID, yards, play.Result, + strconv.Itoa(int(play.Qb)), strconv.Itoa(int(play.Back1)), strconv.Itoa(int(play.Back2)), strconv.Itoa(int(play.Back3)), + strconv.Itoa(int(play.Slot1)), strconv.Itoa(int(play.Slot2)), strconv.Itoa(int(play.Le)), strconv.Itoa(int(play.Re)), + strconv.Itoa(int(play.Lt)), strconv.Itoa(int(play.Lg)), strconv.Itoa(int(play.C)), strconv.Itoa(int(play.Rg)), strconv.Itoa(int(play.Rt)), + strconv.Itoa(int(play.Rde)), strconv.Itoa(int(play.Rdt)), strconv.Itoa(int(play.Nt)), strconv.Itoa(int(play.Ldt)), strconv.Itoa(int(play.Lde)), + strconv.Itoa(int(play.Rolb)), strconv.Itoa(int(play.Rilb)), strconv.Itoa(int(play.Mlb)), strconv.Itoa(int(play.Lilb)), strconv.Itoa(int(play.Lolb)), + strconv.Itoa(int(play.Rcb)), + strconv.Itoa(int(play.Extradb1)), strconv.Itoa(int(play.Extradb2)), strconv.Itoa(int(play.Extradb3)), + strconv.Itoa(int(play.Fs)), strconv.Itoa(int(play.Ss)), strconv.Itoa(int(play.Fcb)), + strconv.Itoa(int(play.Blitzer1)), strconv.Itoa(int(play.Blitzer2)), strconv.Itoa(int(play.Blitzer3)), } err = writer.Write(row) diff --git a/managers/GameplanManager.go b/managers/GameplanManager.go index b68d026..91dbf9b 100644 --- a/managers/GameplanManager.go +++ b/managers/GameplanManager.go @@ -1235,10 +1235,8 @@ func ReAlignCollegeDepthChart(db *gorm.DB, teamID string, gp structs.CollegeGame for _, dcp := range dcPositions { positionList := positionMap[dcp.Position] for _, pos := range positionList { - if starterMap[pos.CollegePlayer.ID] && - dcp.Position != "FG" && - dcp.Position != "PR" && - dcp.Position != "KR" { + playerID := pos.CollegePlayer.ID + if starterMap[playerID] && !isSpecialTeams(dcp.Position) { continue } if backupMap[pos.CollegePlayer.ID] && dcp.PositionLevel != "1" && dcp.Position != "STU" { @@ -1278,6 +1276,15 @@ func ReAlignCollegeDepthChart(db *gorm.DB, teamID string, gp structs.CollegeGame } } +func isSpecialTeams(pos string) bool { + switch pos { + case "FG", "PR", "KR": + return true + default: + return false + } +} + // UpdateCollegeAIDepthCharts func UpdateNFLAIDepthCharts() { db := dbprovider.GetInstance().GetDB() diff --git a/managers/ImportManager.go b/managers/ImportManager.go index 576d0f7..8bca5f5 100644 --- a/managers/ImportManager.go +++ b/managers/ImportManager.go @@ -557,11 +557,13 @@ func ImportUDFAs() { func ImportCFBGames(isSpringGames bool) { db := dbprovider.GetInstance().GetDB() - path := "C:\\Users\\ctros\\go\\src\\github.com\\CalebRose\\SimFBA\\data\\2026\\2026_cfb_games_regular.csv" + path := "C:\\Users\\ctros\\go\\src\\github.com\\CalebRose\\SimFBA\\data\\2026\\2026_cfb_games_preseason.csv" gamesCSV := util.ReadCSV(path) - + ts := GetTimestamp() teamMap := make(map[string]structs.CollegeTeam) + collegeGames := GetCollegeGamesBySeasonID(strconv.Itoa(int(ts.CollegeSeasonID))) + collegeGameMap := MakeCollegeGameMapByID(collegeGames) games := []structs.CollegeGame{} @@ -577,6 +579,10 @@ func ImportCFBGames(isSpringGames bool) { } gameID := util.ConvertStringToInt(row[0]) + existingGame := collegeGameMap[uint(gameID)] + if existingGame.ID > 0 { + continue + } season := util.ConvertStringToInt(row[1]) seasonID := season - 2020 week := util.ConvertStringToInt(row[2]) @@ -655,16 +661,15 @@ func ImportCFBGames(isSpringGames bool) { func ImportNFLGames() { db := dbprovider.GetInstance().GetDB() - path := "C:\\Users\\ctros\\go\\src\\github.com\\CalebRose\\SimFBA\\data\\2025\\2025_nfl_postseason_games.csv" + path := "C:\\Users\\ctros\\go\\src\\github.com\\CalebRose\\SimFBA\\data\\2026\\2026_nfl_regularseason_games.csv" gamesCSV := util.ReadCSV(path) - ts := GetTimestamp() - teamMap := make(map[string]structs.NFLTeam) allNFLTeams := GetAllNFLTeams() + games := []structs.NFLGame{} for _, t := range allNFLTeams { teamMap[t.TeamAbbr] = t } @@ -678,10 +683,7 @@ func ImportNFLGames() { season := util.ConvertStringToInt(row[1]) seasonID := season - 2020 week := util.ConvertStringToInt(row[2]) - weekID := week + 23 // Week 43 is week 0 of the 2024 Season - if gameID > 381 { - weekID = week + 51 - } + weekID := util.GetWeekID(uint(seasonID), uint(week)) homeTeamAbbr := row[3] awayTeamAbbr := row[4] ht := teamMap[homeTeamAbbr] @@ -704,27 +706,27 @@ func ImportNFLGames() { if len(awayTeamCoach) == 0 { awayTeamCoach = "AI" } - timeSlot := row[18] + timeSlot := row[12] // Need to implement Stadium ID stadium := ht.Stadium city := ht.City state := ht.State // Need to check for if a game is in a domed stadium or not - isConferenceGame := util.ConvertStringToBool(row[9]) - isDivisionGame := util.ConvertStringToBool(row[10]) - isNeutralSite := util.ConvertStringToBool(row[11]) - // isPreseasonGame := util.ConvertStringToBool(row[12]) - // isConferenceChampionship := util.ConvertStringToBool(row[13]) - isPlayoffGame := util.ConvertStringToBool(row[14]) - isNationalChampionship := util.ConvertStringToBool(row[15]) - gameTitle := row[23] - nextGame := util.ConvertStringToInt(row[24]) - nextGameHOA := row[25] + isConferenceGame := ht.ConferenceID == at.ConferenceID + isDivisionGame := ht.DivisionID == at.DivisionID && ht.DivisionID > 0 + isNeutralSite := util.ConvertStringToBool(row[5]) + isPreseasonGame := util.ConvertStringToBool(row[6]) + // isConferenceChampionship := util.ConvertStringToBool(row[7]) + isPlayoffGame := util.ConvertStringToBool(row[8]) + isNationalChampionship := util.ConvertStringToBool(row[9]) + gameTitle := row[17] + nextGame := util.ConvertStringToInt(row[18]) + nextGameHOA := row[19] game := structs.NFLGame{ Model: gorm.Model{ID: uint(gameID)}, SeasonID: seasonID, - WeekID: weekID, + WeekID: int(weekID), Week: week, HomeTeamID: int(homeTeamID), AwayTeamID: int(awayTeamID), @@ -732,7 +734,7 @@ func ImportNFLGames() { AwayTeam: awayTeamName, HomeTeamCoach: homeTeamCoach, AwayTeamCoach: awayTeamCoach, - IsPreseasonGame: ts.NFLPreseason, + IsPreseasonGame: isPreseasonGame, IsNeutral: isNeutralSite, IsConference: isConferenceGame, IsDivisional: isDivisionGame, @@ -747,9 +749,10 @@ func ImportNFLGames() { IsSuperBowl: isNationalChampionship, } - db.Create(&game) + games = append(games, game) } + repository.CreateNFLGameRecordsBatch(db, games, 250) GenerateWeatherForGames() } diff --git a/managers/MapHelper.go b/managers/MapHelper.go index 8d89443..21812c1 100644 --- a/managers/MapHelper.go +++ b/managers/MapHelper.go @@ -274,3 +274,23 @@ func MakePromiseMapByPlayerIDByTeam(promises []structs.CollegePromise) map[uint] return playerMap } + +func MakeCollegeGameMapByID(collegeGames []structs.CollegeGame) map[uint]structs.CollegeGame { + gamesMap := make(map[uint]structs.CollegeGame) + + for _, c := range collegeGames { + gamesMap[uint(c.ID)] = c + } + + return gamesMap +} + +func MakeCollegeGameplanMap(gameplans []structs.CollegeGameplan) map[uint]structs.CollegeGameplan { + gamesMap := make(map[uint]structs.CollegeGameplan) + + for _, c := range gameplans { + gamesMap[uint(c.ID)] = c + } + + return gamesMap +} diff --git a/managers/RecruitingProfileManager.go b/managers/RecruitingProfileManager.go index e154b68..1e75bad 100644 --- a/managers/RecruitingProfileManager.go +++ b/managers/RecruitingProfileManager.go @@ -322,16 +322,16 @@ func GetRecruitingNeeds(TeamID string) map[string]int { needsMap["FB"] = 1 needsMap["TE"] = 2 needsMap["WR"] = 3 - needsMap["OT"] = 2 - needsMap["OG"] = 2 - needsMap["C"] = 1 + needsMap["OT"] = 3 + needsMap["OG"] = 3 + needsMap["C"] = 2 needsMap["DE"] = 2 needsMap["DT"] = 2 needsMap["OLB"] = 2 needsMap["ILB"] = 2 needsMap["CB"] = 2 - needsMap["FS"] = 1 - needsMap["SS"] = 1 + needsMap["FS"] = 2 + needsMap["SS"] = 2 needsMap["P"] = 1 needsMap["K"] = 1 needsMap["ATH"] = 3 diff --git a/managers/StatsManager.go b/managers/StatsManager.go index c9eabb9..f9bb114 100644 --- a/managers/StatsManager.go +++ b/managers/StatsManager.go @@ -1294,33 +1294,34 @@ func GenerateCFBPlayByPlayResponse(playByPlays []structs.CollegePlayByPlay, part losFull := strconv.Itoa(int(los)) + " " + losSide play := structs.PlayByPlayResponse{ - PlayNumber: uint(number), - HomeTeamID: p.HomeTeamID, - HomeTeamScore: p.HomeTeamScore, - AwayTeamID: p.AwayTeamID, - AwayTeamScore: p.AwayTeamScore, - Quarter: p.Quarter, - TimeRemaining: p.TimeRemaining, - Down: p.Down, - Distance: p.Distance, - LineOfScrimmage: losFull, - PlayType: playType, - PlayName: playName, - PointOfAttack: poa, - OffensiveFormation: offFormation, - DefensiveFormation: defFormation, - DefensiveTendency: defTendency, - Possession: poss, - QBPlayerID: p.QBPlayerID, - BallCarrierID: p.BallCarrierID, - Tackler1ID: p.Tackler1ID, - Tackler2ID: p.Tackler2ID, - ResultYards: p.ResultYards, - BlitzNumber: p.BlitzNumber, - LBCoverage: lb, - CBCoverage: cb, - SCoverage: s, - PresureID: p.PressureID, + PlayNumber: uint(number), + HomeTeamID: p.HomeTeamID, + HomeTeamScore: p.HomeTeamScore, + AwayTeamID: p.AwayTeamID, + AwayTeamScore: p.AwayTeamScore, + Quarter: p.Quarter, + TimeRemaining: p.TimeRemaining, + Down: p.Down, + Distance: p.Distance, + LineOfScrimmage: losFull, + PlayType: playType, + PlayName: playName, + PointOfAttack: poa, + OffensiveFormation: offFormation, + DefensiveFormation: defFormation, + DefensiveTendency: defTendency, + Possession: poss, + QBPlayerID: p.QBPlayerID, + BallCarrierID: p.BallCarrierID, + Tackler1ID: p.Tackler1ID, + Tackler2ID: p.Tackler2ID, + ResultYards: p.ResultYards, + BlitzNumber: p.BlitzNumber, + LBCoverage: lb, + CBCoverage: cb, + SCoverage: s, + PresureID: p.PressureID, + PlayersInvoledInPlay: p.PlayersInvoledInPlay, } var result []string if isStream { @@ -1375,33 +1376,34 @@ func GenerateNFLPlayByPlayResponse(playByPlays []structs.NFLPlayByPlay, particip losFull := strconv.Itoa(int(los)) + " " + losSide play := structs.PlayByPlayResponse{ - PlayNumber: uint(number), - HomeTeamID: p.HomeTeamID, - HomeTeamScore: p.HomeTeamScore, - AwayTeamID: p.AwayTeamID, - AwayTeamScore: p.AwayTeamScore, - Quarter: p.Quarter, - TimeRemaining: p.TimeRemaining, - Down: p.Down, - Distance: p.Distance, - LineOfScrimmage: losFull, - PlayType: playType, - PlayName: playName, - PointOfAttack: poa, - OffensiveFormation: offFormation, - DefensiveFormation: defFormation, - DefensiveTendency: defTendency, - Possession: poss, - QBPlayerID: p.QBPlayerID, - BallCarrierID: p.BallCarrierID, - Tackler1ID: p.Tackler1ID, - Tackler2ID: p.Tackler2ID, - ResultYards: p.ResultYards, - BlitzNumber: p.BlitzNumber, - LBCoverage: lb, - CBCoverage: cb, - SCoverage: s, - PresureID: p.PressureID, + PlayNumber: uint(number), + HomeTeamID: p.HomeTeamID, + HomeTeamScore: p.HomeTeamScore, + AwayTeamID: p.AwayTeamID, + AwayTeamScore: p.AwayTeamScore, + Quarter: p.Quarter, + TimeRemaining: p.TimeRemaining, + Down: p.Down, + Distance: p.Distance, + LineOfScrimmage: losFull, + PlayType: playType, + PlayName: playName, + PointOfAttack: poa, + OffensiveFormation: offFormation, + DefensiveFormation: defFormation, + DefensiveTendency: defTendency, + Possession: poss, + QBPlayerID: p.QBPlayerID, + BallCarrierID: p.BallCarrierID, + Tackler1ID: p.Tackler1ID, + Tackler2ID: p.Tackler2ID, + ResultYards: p.ResultYards, + BlitzNumber: p.BlitzNumber, + LBCoverage: lb, + CBCoverage: cb, + SCoverage: s, + PresureID: p.PressureID, + PlayersInvoledInPlay: p.PlayersInvoledInPlay, } var result []string if isStream { diff --git a/managers/SyncManager.go b/managers/SyncManager.go index 646f7b3..7ec0008 100644 --- a/managers/SyncManager.go +++ b/managers/SyncManager.go @@ -852,7 +852,7 @@ func ResetAIBoardsForCompletedTeams() { db.Save(&croot) } team.ResetSpentPoints() - db.Save(&team) + repository.SaveRecruitingTeamProfile(team, db) } } } diff --git a/managers/TransferPortalManager.go b/managers/TransferPortalManager.go index 004301a..244360f 100644 --- a/managers/TransferPortalManager.go +++ b/managers/TransferPortalManager.go @@ -772,13 +772,14 @@ func AICoachFillBoardsPhase() { biasMod += 20 } } else if bias == nationalChampionshipContender { - if postSeasonStatus == "Bowl Game" { + switch postSeasonStatus { + case "Bowl Game": biasMod += 10 - } else if postSeasonStatus == "Playoffs" { + case "Playoffs": biasMod += 15 - } else if postSeasonStatus == "National Championship Participant" { + case "National Championship Participant": biasMod += 20 - } else if postSeasonStatus == "National Champions" { + case "National Champions": biasMod += 25 } } else if bias == upcomingTeam { diff --git a/repository/CapsheetRepository.go b/repository/CapsheetRepository.go index e202cf3..1d293e8 100644 --- a/repository/CapsheetRepository.go +++ b/repository/CapsheetRepository.go @@ -16,3 +16,13 @@ func FindAllNFLCapsheets() []structs.NFLCapsheet { } return capsheets } + +func FindAllActiveNFLContracts() []structs.NFLContract { + var contracts []structs.NFLContract + db := dbprovider.GetInstance().GetDB() + err := db.Where("is_active = ?", true).Find(&contracts).Error + if err != nil { + log.Fatal(err) + } + return contracts +} diff --git a/structs/NFLPlayer.go b/structs/NFLPlayer.go index 9734585..f2404aa 100644 --- a/structs/NFLPlayer.go +++ b/structs/NFLPlayer.go @@ -184,26 +184,26 @@ func (f *NFLPlayer) ToggleHasProgressed() { func (np *NFLPlayer) Progress(attr CollegePlayerProgressions) { np.Age++ np.Experience++ - np.Agility = attr.Agility - np.Speed = attr.Speed - np.FootballIQ = attr.FootballIQ - np.Carrying = attr.Carrying - np.Catching = attr.Catching - np.RouteRunning = attr.RouteRunning - np.PassBlock = attr.PassBlock - np.RunBlock = attr.RunBlock - np.PassRush = attr.PassRush - np.RunDefense = attr.RunDefense - np.Tackle = attr.Tackle - np.Strength = attr.Strength - np.ManCoverage = attr.ManCoverage - np.ZoneCoverage = attr.ZoneCoverage - np.KickAccuracy = attr.KickAccuracy - np.KickPower = attr.KickPower - np.PuntAccuracy = attr.PuntAccuracy - np.PuntPower = attr.PuntPower - np.ThrowAccuracy = attr.ThrowAccuracy - np.ThrowPower = attr.ThrowPower + np.Agility = AddAttribute(attr.Agility) + np.Speed = AddAttribute(attr.Speed) + np.FootballIQ = AddAttribute(attr.FootballIQ) + np.Carrying = AddAttribute(attr.Carrying) + np.Catching = AddAttribute(attr.Catching) + np.RouteRunning = AddAttribute(attr.RouteRunning) + np.PassBlock = AddAttribute(attr.PassBlock) + np.RunBlock = AddAttribute(attr.RunBlock) + np.PassRush = AddAttribute(attr.PassRush) + np.RunDefense = AddAttribute(attr.RunDefense) + np.Tackle = AddAttribute(attr.Tackle) + np.Strength = AddAttribute(attr.Strength) + np.ManCoverage = AddAttribute(attr.ManCoverage) + np.ZoneCoverage = AddAttribute(attr.ZoneCoverage) + np.KickAccuracy = AddAttribute(attr.KickAccuracy) + np.KickPower = AddAttribute(attr.KickPower) + np.PuntAccuracy = AddAttribute(attr.PuntAccuracy) + np.PuntPower = AddAttribute(attr.PuntPower) + np.ThrowAccuracy = AddAttribute(attr.ThrowAccuracy) + np.ThrowPower = AddAttribute(attr.ThrowPower) np.HasProgressed = true np.ShowLetterGrade = false np.IsInjured = false @@ -225,26 +225,26 @@ func (f *NFLPlayer) AddTagType(tagType uint8) { } func (np *NFLPlayer) ApplyTrainingCampInfo(attr CollegePlayerProgressions) { - np.Agility = attr.Agility - np.Speed = attr.Speed - np.FootballIQ = attr.FootballIQ - np.Carrying = attr.Carrying - np.Catching = attr.Catching - np.RouteRunning = attr.RouteRunning - np.PassBlock = attr.PassBlock - np.RunBlock = attr.RunBlock - np.PassRush = attr.PassRush - np.RunDefense = attr.RunDefense - np.Tackle = attr.Tackle - np.Strength = attr.Strength - np.ManCoverage = attr.ManCoverage - np.ZoneCoverage = attr.ZoneCoverage - np.KickAccuracy = attr.KickAccuracy - np.KickPower = attr.KickPower - np.PuntAccuracy = attr.PuntAccuracy - np.PuntPower = attr.PuntPower - np.ThrowAccuracy = attr.ThrowAccuracy - np.ThrowPower = attr.ThrowPower + np.Agility = AddAttribute(attr.Agility) + np.Speed = AddAttribute(attr.Speed) + np.FootballIQ = AddAttribute(attr.FootballIQ) + np.Carrying = AddAttribute(attr.Carrying) + np.Catching = AddAttribute(attr.Catching) + np.RouteRunning = AddAttribute(attr.RouteRunning) + np.PassBlock = AddAttribute(attr.PassBlock) + np.RunBlock = AddAttribute(attr.RunBlock) + np.PassRush = AddAttribute(attr.PassRush) + np.RunDefense = AddAttribute(attr.RunDefense) + np.Tackle = AddAttribute(attr.Tackle) + np.Strength = AddAttribute(attr.Strength) + np.ManCoverage = AddAttribute(attr.ManCoverage) + np.ZoneCoverage = AddAttribute(attr.ZoneCoverage) + np.KickAccuracy = AddAttribute(attr.KickAccuracy) + np.KickPower = AddAttribute(attr.KickPower) + np.PuntAccuracy = AddAttribute(attr.PuntAccuracy) + np.PuntPower = AddAttribute(attr.PuntPower) + np.ThrowAccuracy = AddAttribute(attr.ThrowAccuracy) + np.ThrowPower = AddAttribute(attr.ThrowPower) np.IsInjured = attr.WeeksOfRecovery > 0 np.WeeksOfRecovery = uint(attr.WeeksOfRecovery) np.InjuryName = attr.InjuryText @@ -255,3 +255,13 @@ func (np *NFLPlayer) ApplyTrainingCampInfo(attr CollegePlayerProgressions) { func (cp *NFLPlayer) AddSeasonStats(seasonStats NFLPlayerSeasonStats) { cp.SeasonStats = seasonStats } + +func AddAttribute(attr int) int { + newVal := attr + if newVal > 99 { + newVal = 99 + } else if newVal < 1 { + newVal = 1 + } + return newVal +} diff --git a/structs/PlayByPlay.go b/structs/PlayByPlay.go index 4ab34c5..723f395 100644 --- a/structs/PlayByPlay.go +++ b/structs/PlayByPlay.go @@ -8,6 +8,42 @@ type NFLPlayByPlay struct { PlayByPlay } +type PlayersInvoledInPlay struct { + Qb uint + Back1 uint + Back2 uint + Back3 uint + Slot1 uint + Slot2 uint + Le uint + Re uint + Lt uint + Lg uint + C uint + Rg uint + Rt uint + Rde uint + Rdt uint + Nt uint + Ldt uint + Lde uint + Rolb uint + Rilb uint + Mlb uint + Lilb uint + Lolb uint + Rcb uint + Extradb1 uint + Extradb2 uint + Extradb3 uint + Fs uint + Ss uint + Fcb uint + Blitzer1 uint + Blitzer2 uint + Blitzer3 uint +} + type PlayByPlay struct { ID uint GameID uint @@ -67,6 +103,7 @@ type PlayByPlay struct { OnOffense bool KickDistance int8 PressureID uint + PlayersInvoledInPlay } func (p *PlayByPlay) Map(play PlayByPlayDTO) { @@ -127,6 +164,7 @@ func (p *PlayByPlay) Map(play PlayByPlayDTO) { p.OnOffense = play.OnOffense p.HomeHasBall = play.HomeHasBall p.PressureID = uint(play.PressureID) + p.PlayersInvoledInPlay = play.PlayersInvoledInPlay } type PlayByPlayDTO struct { @@ -187,6 +225,7 @@ type PlayByPlayDTO struct { OnOffense bool KickDistance int PressureID int + PlayersInvoledInPlay } type PlayByPlayResponse struct { @@ -219,6 +258,7 @@ type PlayByPlayResponse struct { ResultYards int8 Result string StreamResult []string + PlayersInvoledInPlay } func (p *PlayByPlayResponse) AddPlayInformation(playType, playName, offFormation, defFormation, poa string) {