Sports page passes game ID to Schedule/Calendar properly and generates correct calendar

This commit is contained in:
Carlos Lopez-Rosario
2020-04-18 11:10:13 -04:00
parent 9e3541c119
commit 39912bd37e
4 changed files with 19 additions and 12 deletions

View File

@@ -7,8 +7,11 @@ import 'screens/sport.dart' as globals;
import 'dart:convert'; import 'dart:convert';
class Calendar extends StatefulWidget { class Calendar extends StatefulWidget {
final int sportID;
Calendar(this.sportID);
@override @override
_Calendar createState() => _Calendar(); _Calendar createState() => _Calendar(sportID);
} }
//List<sport_schedule> _selectedEvents; //original that makes events work //List<sport_schedule> _selectedEvents; //original that makes events work
@@ -17,12 +20,15 @@ DateTime selectedDay;
Map<DateTime, List<sport_schedule>> _events; Map<DateTime, List<sport_schedule>> _events;
class _Calendar extends State<Calendar> with TickerProviderStateMixin { class _Calendar extends State<Calendar> with TickerProviderStateMixin {
int sportID;
_Calendar(this. sportID);
AnimationController _animationController; AnimationController _animationController;
CalendarController _calController; CalendarController _calController;
int sportID = globals.Sport.sport_ID;
static final sportUrl = 'https://charlotte49ers.com/services/adaptive_components.ashx?type=scoreboard&start=0&count=80'; static final sportUrl = 'https://charlotte49ers.com/services/adaptive_components.ashx?type=scoreboard&start=0&count=80';
Future<List<sport_schedule>> getEvents() async { Future<List<sport_schedule>> getEvents() async {
var url = '$sportUrl&sport_id=$sportID&name=&extra=%7B%7D'; var url = '$sportUrl&sport_id=$sportID&name=&extra=%7B%7D';

View File

@@ -12,7 +12,7 @@ class RouteGenerator {
static Route<dynamic> generateRoute(RouteSettings settings) { static Route<dynamic> generateRoute(RouteSettings settings) {
final args = settings final args = settings
.arguments; //This is how we pass arguments and can be used in case .arguments; //This is how we pass arguments and can be used in case
print("args $args");
switch (settings.name) { switch (settings.name) {
case '/': case '/':
return MaterialPageRoute(builder: (_) => Home()); return MaterialPageRoute(builder: (_) => Home());
@@ -20,7 +20,7 @@ class RouteGenerator {
//We can put logic and stuff here for checking if logged in //We can put logic and stuff here for checking if logged in
return MaterialPageRoute(builder: (_) => Sport(args)); return MaterialPageRoute(builder: (_) => Sport(args));
case '/Schedule': case '/Schedule':
return MaterialPageRoute(builder: (_) => Schedule()); return MaterialPageRoute(builder: (_) => Schedule(args));
case '/Standing': case '/Standing':
return MaterialPageRoute(builder: (_) => Standing()); return MaterialPageRoute(builder: (_) => Standing());
case '/Chat': case '/Chat':

View File

@@ -1,12 +1,14 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import '../monthly_calendar.dart'; import '../monthly_calendar.dart';
import '../screens/sport.dart' as globals;
class Schedule extends StatelessWidget{ class Schedule extends StatelessWidget{
final calendar = Calendar(); final int sportID;
Schedule(this.sportID);
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
var calendar = Calendar(sportID);
return StatefulBuilder( return StatefulBuilder(
builder: (context, StateSetter setState) => Scaffold( builder: (context, StateSetter setState) => Scaffold(
appBar: AppBar( appBar: AppBar(

View File

@@ -38,7 +38,7 @@ class Sport extends StatelessWidget {
return _curSport; return _curSport;
} }
_curSport = _setDefault(); _curSport = _setDefault();
int sport_ID = _curSport.sportID[0]; sport_ID = _curSport.sportID[0];
Item selectedSport; Item selectedSport;
_genderSwitcherCheck(); _genderSwitcherCheck();
return StatefulBuilder( return StatefulBuilder(
@@ -56,9 +56,7 @@ class Sport extends StatelessWidget {
onChanged: (value) { onChanged: (value) {
setState(() { setState(() {
genderSport = value; genderSport = value;
if (_curSport.sportID.length > 1){ _genderSwitcherCheck();
sport_ID = genderSport ? _curSport.sportID[1] : _curSport.sportID[0];
}
}); });
}, },
inactiveThumbColor: Colors.lightBlue, inactiveThumbColor: Colors.lightBlue,
@@ -101,13 +99,13 @@ class Sport extends StatelessWidget {
ListTile( ListTile(
title: IconButton( title: IconButton(
icon: Icon(Icons.table_chart), icon: Icon(Icons.table_chart),
onPressed: () => Navigator.pushNamed(context, '/Standing'), onPressed: () => Navigator.pushNamed(context, '/Standing', arguments: sport_ID),
), ),
), ),
ListTile( ListTile(
title: IconButton( title: IconButton(
icon: Icon(Icons.calendar_today), icon: Icon(Icons.calendar_today),
onPressed: () => Navigator.pushNamed(context, '/Schedule'), onPressed: () => Navigator.pushNamed(context, '/Schedule',arguments: sport_ID),
), ),
), ),
], ],
@@ -135,6 +133,7 @@ class Sport extends StatelessWidget {
setState(() { setState(() {
_curSport = value; _curSport = value;
_genderSwitcherCheck(); _genderSwitcherCheck();
print(sport_ID);
}); });
}, },
items: colorList.map<DropdownMenuItem<Item>>((Item item) { items: colorList.map<DropdownMenuItem<Item>>((Item item) {