async Task saveData()
        {
            if (CheckInternetConnectivity.InternetStatus())
            {
                matchData.successfulClimb = climbSuccessBtn.getBtnStatus();
                matchData.pilotError      = pilotErrorBtn.getBtnStatus();
                matchData.good            = goodCheck.Checked;
                matchData.fullDisable     = fullDisableBtn.getBtnStatus();
                matchData.partialDisables = partialDisablesCounter.getValue();
                matchData.fouls           = foulCounter.getValue();
                matchData.foulNote        = foulNotes.Text;
                matchData.sendTime        = DateTimeOffset.Now.ToUnixTimeSeconds();
                matchData.dataIsReady     = true;

                var    db   = new FirebaseClient(GlobalVariables.firebaseURL);
                string path = "ERROR";

                if (mType == -1)
                {
                    path = "practiceMatchData/" + matchData.matchID;
                }
                else
                {
                    path = "matchData/" + matchData.matchID;
                }

                FirebaseAccess.saveData(db, path, matchData);

                /*
                 * if (mType == -1) {
                 *      var send = db
                 *                              .Child(GlobalVariables.regionalPointer)
                 *                              .Child("PracticeMatches")
                 *                              .Child(matchData.teamNumber.ToString())
                 *                              .Child(matchData.matchNumber.ToString())
                 *                              .PutAsync(matchData);
                 * } else {
                 *      var fbTeam = db
                 *                              .Child(GlobalVariables.regionalPointer)
                 *                              .Child("teamMatchData")
                 *                              .Child(matchData.teamNumber.ToString())
                 *                              .Child(matchData.matchNumber.ToString())
                 *                              .PutAsync(matchData);
                 * }
                 */
            }
        }
        async Task saveData()
        {
            if (CheckInternetConnectivity.InternetStatus())
            {
                matchData.autoCross      = inputs[0].getBtnStatus();
                matchData.autoGearScored = inputs[1].getBtnStatus();
                matchData.autoPressure   = pressureCounter.getValue();

                var    db   = new FirebaseClient(GlobalVariables.firebaseURL);
                string path = "ERROR";

                if (mType == -1)
                {
                    path = "practiceMatchData/" + matchData.matchID;
                }
                else
                {
                    path = "matchData/" + matchData.matchID;
                }

                FirebaseAccess.saveData(db, path, matchData);

                /*
                 * if (mType == -1) {
                 *      var send = db
                 *                              .Child(GlobalVariables.regionalPointer)
                 *                              .Child("PracticeMatches")
                 *                              .Child(matchData.teamNumber.ToString())
                 *                              .Child(matchData.matchNumber.ToString())
                 *                              .PutAsync(matchData);
                 * } else {
                 *      var fbTeam = db
                 *                              .Child(GlobalVariables.regionalPointer)
                 *                              .Child("teamMatchData")
                 *                              .Child(matchData.teamNumber.ToString())
                 *                              .Child(matchData.matchNumber.ToString())
                 *                              .PutAsync(matchData);
                 * }
                 */
            }
        }
Exemple #3
0
        public static async Task ImagePicker(TeamData data, int imageInt)
        {
            await CrossMedia.Current.Initialize();

            if (!CrossMedia.Current.IsCameraAvailable || !CrossMedia.Current.IsTakePhotoSupported)
            {
                Console.WriteLine("No Camera");
            }
            else
            {
                try {
                    var file = await CrossMedia.Current.PickPhotoAsync(new Plugin.Media.Abstractions.PickMediaOptions {
                    });

                    var fileName = data.teamNumber + "_IMG" + imageInt + ".jpg";
                    var filePath = file.Path;

                    var stream = new MemoryStream(ImageToBinary(filePath));

                    var storage = new FirebaseStorage(GlobalVariables.firebaseStorageURL);

                    var send = storage.Child(GlobalVariables.regionalPointer)
                               .Child(data.teamNumber.ToString())
                               .Child(fileName)
                               .PutAsync(stream);

                    var downloadURL = await send;

                    Console.WriteLine("URL: " + downloadURL);

                    var db = new FirebaseClient(GlobalVariables.firebaseURL);

                    FirebaseAccess.saveData(db, "teamData/" + data.teamNumber + "/imageURL", downloadURL);
                }
                catch (Exception ex) {
                    Console.WriteLine("Image Upload Image: " + ex);
                }
            }
        }
Exemple #4
0
		async Task setDefaultImage() {
			string fileName =  data.teamNumber + "_IMG" + imageIndex + ".jpg";
			
			var storage = new FirebaseStorage(GlobalVariables.firebaseStorageURL);

			var getURL = await storage.Child(GlobalVariables.regionalPointer)
						 .Child(data.teamNumber.ToString())
						 .Child(fileName)
		                 .GetDownloadUrlAsync();

			/*
			robotImage.Source = new UriImageSource() {
				Uri = new Uri(getURL)
			};
			*/

			var db = new FirebaseClient(GlobalVariables.firebaseURL);

			FirebaseAccess.saveData(db, "teamData/" + data.teamNumber + "/imageURL", getURL);

			await DisplayAlert("Success", "Default Image Changed", "OK");
			await Navigation.PopAllPopupAsync();
		}
Exemple #5
0
        /*
         * void addAction(int v) {
         *      bool t = false;
         *      mActions[aIndex] = new ActionData();
         *      try {
         *              foreach (var hopper in hopperCapacity.on)
         *                      if (hopper == true) {
         *                              t = true;
         *                              break;
         *                      }
         *              if (t)
         *                      mActions[aIndex].hopperCapacity = hopperCapacity.getAvgPercentage() * robotMaxCapacity;
         *              else
         *                      mActions[aIndex].hopperCapacity = 0;
         *      }
         *      catch{
         *              mActions[aIndex].hopperCapacity = 0;
         *      }
         *
         *      if (v == 0) // gear scored
         *              mActions[aIndex].cyclePressure = 0;
         *      else if (v == 1) // high shots
         *              mActions[aIndex].cyclePressure = (int)Math.Floor((robotMaxCapacity * hopperCapacity.getAvgPercentage() * goalAccuracy.getAvgPercentage()) / 3);
         *      else if (v == 2) { // low shots
         *              mActions[aIndex].lowGoalDump = true;
         *              mActions[aIndex].cyclePressure = (int)Math.Floor((robotMaxCapacity * hopperCapacity.getAvgPercentage()) / 9);
         *      } else // no complete scoring action
         *              mActions[aIndex].lowGoalDump = false;
         *
         *      mActions[aIndex].gearsStationDrop = gearsStationDropped.getValue();
         *      mActions[aIndex].gearsTransitDrop = gearsTransitDropped.getValue();
         *      mActions[aIndex].gearSet = gearScoredBtn.on;
         *
         *      if (gearScoredBtn.on) {
         *              gearScoredBtn.on = false;
         *              gearScoredBtn.BackgroundColor = Color.Red;
         *      }
         *
         *      lastActionLabels[0].Text = "Hopper Capacity: " + mActions[aIndex].hopperCapacity;
         *      lastActionLabels[1].Text = "High Accuracy: " + mActions[aIndex].highGoalAccuracy;
         *      lastActionLabels[2].Text = "Low Goal Dump: " + mActions[aIndex].lowGoalDump;
         *      lastActionLabels[3].Text = "Cycle Pressure: " + mActions[aIndex].cyclePressure;
         *      lastActionLabels[4].Text = "Gear Set: " + mActions[aIndex].gearSet;
         *      lastActionLabels[5].Text = "Gear Station Drops: " + mActions[aIndex].gearsStationDrop;
         *      lastActionLabels[6].Text = "Gear Transit Drops: " + mActions[aIndex].gearsTransitDrop;
         *      clearValues();
         *
         *      if (v != 3) // aCount != aIndex in the event that the last 'action' the robot performs yeilds no score
         *              aCount++;
         *      aIndex++;
         *      actionCounter.Text = aIndex.ToString();
         *      actionCounter.BackgroundColor = Color.Transparent;
         *      cycleUndo.BackgroundColor = Color.Yellow;
         * }
         *
         * void undoAction() {
         *      if (aIndex > 1) {
         *              lastActionLabels[0].Text = "Hopper Capacity: " + mActions[aIndex - 1].hopperCapacity;
         *              lastActionLabels[1].Text = "High Accuracy: " + mActions[aIndex - 1].highGoalAccuracy;
         *              lastActionLabels[2].Text = "Low Goal Dump: " + mActions[aIndex - 1].lowGoalDump;
         *              lastActionLabels[3].Text = "Cycle Pressure: " + mActions[aIndex - 1].cyclePressure;
         *              lastActionLabels[4].Text = "Gear Set: " + mActions[aIndex - 1].gearSet;
         *              lastActionLabels[5].Text = "Gear Station Drops: " + mActions[aIndex - 1].gearsStationDrop;
         *              lastActionLabels[6].Text = "Gear Transit Drops: " + mActions[aIndex - 1].gearsTransitDrop;
         *              aIndex--;
         *      } else {
         *              lastActionLabels[0].Text = "Hopper Capacity: " + 0;
         *              lastActionLabels[1].Text = "High Accuracy: " + 0;
         *              lastActionLabels[2].Text = "Low Goal Dump: " + false;
         *              lastActionLabels[3].Text = "Cycle Pressure: " + 0;
         *              lastActionLabels[4].Text = "Gear Set: " + false;
         *              lastActionLabels[5].Text = "Gear Station Drops: " + 0;
         *              lastActionLabels[6].Text = "Gear Transit Drops: " + 0;
         *      }
         *
         *      actionCounter.Text = aCount.ToString();
         *      actionCounter.BackgroundColor = Color.Orange;
         *      lastActionView.BackgroundColor = Color.Orange;
         * }
         *
         */

        async Task saveData()
        {
            matchData.actionCount       = actionCounter.getValue();
            matchData.teleOpPressure    = pressureCounter.getValue();
            matchData.teleOpGearsScored = gearCounter.getValue();

            if (CheckInternetConnectivity.InternetStatus())
            {
                /*
                 * matchData.actionCount = aCount;
                 * matchData.teleOpTotalPressure = teleOpPressure;
                 * matchData.teleOpGearsDeposit = teleOpGears;
                 *
                 * int stationDropped = 0, transitDropped = 0;
                 * double hAcc = 0;
                 * for (int i = 0; i < aIndex; i++) {
                 *      hAcc += mActions[i].highGoalAccuracy;
                 *      stationDropped += mActions[i].gearsStationDrop;
                 *      transitDropped += mActions[i].gearsTransitDrop;
                 * }
                 * matchData.teleOpHighAcc = hAcc / aCount;
                 * matchData.teleOpGearsStationDropped = stationDropped;
                 * matchData.teleOpGearsTransitDropped = transitDropped;
                 */

                var    db   = new FirebaseClient(GlobalVariables.firebaseURL);
                string path = "ERROR";

                if (mType == -1)
                {
                    path = "practiceMatchData/" + matchData.matchID;
                }
                else
                {
                    path = "matchData/" + matchData.matchID;
                    FirebaseAccess.saveData(db, "matchActionData/" + matchData.matchID, matchData);
                }

                FirebaseAccess.saveData(db, path, matchData);

                /*
                 * if (mType == -1) {
                 *      var send = db
                 *                              .Child(GlobalVariables.regionalPointer)
                 *                              .Child("PracticeMatches")
                 *                              .Child(matchData.teamNumber.ToString())
                 *                              .Child(matchData.matchNumber.ToString())
                 *                              .PutAsync(matchData);
                 * } else {
                 *      var matchBreakDown = db
                 *                                              .Child(GlobalVariables.regionalPointer)
                 *                                              .Child("teamMatchActionData")
                 *                                              .Child(matchData.teamNumber.ToString())
                 *                                              .Child(matchData.matchNumber.ToString())
                 *                                              .PutAsync(mActions);
                 *
                 *      var fbTeam = db
                 *                              .Child(GlobalVariables.regionalPointer)
                 *                              .Child("teamMatchData")
                 *                              .Child(matchData.teamNumber.ToString())
                 *                              .Child(matchData.matchNumber.ToString())
                 *                              .PutAsync(matchData);
                 * }
                 */
            }
        }
Exemple #6
0
        public PreMatchScoutingPage(string scouterName)
        {
            //Page Title
            Title = "Match Scouting";

            if (!string.IsNullOrEmpty(scouts.scouterName))
            {
                scouts.lineEntry.Text            = scouterName;
                matchNoLineEntry.inputEntry.Text = "";
                matchNumber = "";
            }

            var checkBoxLayout = new StackLayout()
            {
                HorizontalOptions = LayoutOptions.CenterAndExpand,
                Orientation       = StackOrientation.Horizontal
            };

            for (int i = 0; i < matchPhaseCheckboxes.Length; i++)
            {
                matchPhaseCheckboxes[i] = new CheckBox()
                {
                    DefaultText = matchPhase[i],
                    FontSize    = GlobalVariables.sizeSmall
                }
            }
            ;

            foreach (var box in matchPhaseCheckboxes)
            {
                box.CheckedChanged += (sender, e) => {
                    if (!semaphore)
                    {
                        checkBoxChanged(box);
                    }
                };
                checkBoxLayout.Children.Add(box);
            }
            getDefaultMatchType();

            setNoLbl = new Label {
                Text           = "Set Number:",
                FontSize       = GlobalVariables.sizeSmall,
                FontAttributes = FontAttributes.Bold,
            };

            setNoPicker.Title = "[Select Set No.]";
            setNoPicker.SelectedIndexChanged += (sender, e) => {
                try {
                    setNumber = Convert.ToInt32(setNoPicker.Items[setNoPicker.SelectedIndex]);
                }
                catch (Exception ex) {
                    Console.WriteLine("Error: " + ex.Message);
                }
                setMatchNumber();
            };

            matchNoLineEntry = new LineEntry("Match Number:");
            matchNoLineEntry.inputEntry.Keyboard     = Keyboard.Numeric;
            matchNoLineEntry.inputEntry.TextChanged += (sender, e) => {
                setMatchNumber();
            };

            matchNoLayout = new StackLayout()
            {
                Orientation = StackOrientation.Horizontal,
                Spacing     = 10,

                Children =
                {
                    new StackLayout()
                    {
                        Children =
                        {
                            setNoLbl,
                            setNoPicker
                        }
                    },
                    matchNoLineEntry
                }
            };

            matchNoView = new ContentView()
            {
                Content = matchNoLineEntry
            };

            Label allianceLabel = new Label {
                Text           = "Alliance:",
                FontSize       = GlobalVariables.sizeSmall,
                FontAttributes = FontAttributes.Bold
            };

            alliancePicker       = new Picker();
            alliancePicker.Title = "[Choose an Option]";
            foreach (var i in alliances)
            {
                alliancePicker.Items.Add(i);
            }
            alliancePicker.SelectedIndexChanged += (sender, e) => {
                setMatchNumber();
            };

            var teamNoLbl = new Label {
                Text           = "Team Number:",
                FontSize       = GlobalVariables.sizeSmall,
                FontAttributes = FontAttributes.Bold
            };

            teamNoPicker       = new Picker();
            teamNoPicker.Title = "[Select Match No. and Alliance first]";

            teamNoPicker.SelectedIndexChanged += (sender, e) => {
                try {
                    teamNumber = Convert.ToInt32(teamNoPicker.Items[teamNoPicker.SelectedIndex]);
                }
                catch (Exception ex) {
                    Console.WriteLine("Error: " + ex.Message);
                }
            };

            teamNoPickerLayout = new StackLayout()
            {
                Children =
                {
                    teamNoLbl,
                    teamNoPicker
                }
            };

            teamNoView = new ContentView()
            {
                Content = teamNoPickerLayout
            };

            teamNoLineEntry = new LineEntry("Team Number:");
            teamNoLineEntry.inputEntry.Placeholder  = "[Enter Team Number]";
            teamNoLineEntry.inputEntry.Keyboard     = Keyboard.Numeric;
            teamNoLineEntry.inputEntry.TextChanged += (sender, e) => {
                try {
                    teamNumber = Convert.ToInt32(teamNoLineEntry.data);
                }
                catch {
                    teamNumber = 0;
                }
            };

            Label positionLabel = new Label {
                Text           = "Starting Position:",
                FontSize       = GlobalVariables.sizeSmall,
                FontAttributes = FontAttributes.Bold
            };

            positionPicker       = new Picker();
            positionPicker.Title = "Choose an Option";
            foreach (var i in startPos)
            {
                positionPicker.Items.Add(i);
            }

            positionPicker.SelectedIndexChanged += (sender, e) => {
                positionPicker.Title = positionPicker.Items[positionPicker.SelectedIndex];
            };

            var beginMatchBtn = new Button()
            {
                VerticalOptions   = LayoutOptions.Fill,
                HorizontalOptions = LayoutOptions.FillAndExpand,
                Text            = "Begin Match",
                TextColor       = Color.Green,
                BackgroundColor = Color.Black,
                FontSize        = GlobalVariables.sizeMedium
            };

            beginMatchBtn.Clicked += (sender, e) => {
                bool inputFlag = false;
                if (string.IsNullOrEmpty(scouts.lineEntry.Text))
                {
                    inputFlag = true;
                }
                if (string.IsNullOrEmpty(matchNoLineEntry.inputEntry.Text))
                {
                    inputFlag = true;
                }
                if ((teamNoPicker.SelectedIndex == -1 && (competitionPhase == "F" || competitionPhase == "QM")) ||
                    (teamNoPicker.SelectedIndex == -1 && setNoPicker.SelectedIndex == -1 && (competitionPhase == "QF" || competitionPhase == "SF")) ||
                    (string.IsNullOrEmpty(teamNoLineEntry.inputEntry.Text) && competitionPhase == "P"))
                {
                    inputFlag = true;
                }

                if (positionPicker.SelectedIndex == -1 || alliancePicker.SelectedIndex == -1 || inputFlag)
                {
                    DisplayAlert("Error", "Fill out all inputs", "OK");
                }
                else
                {
                    initializeTeamData();
                }
            };

            var navigationBtns = new NavigationButtons(false, new Button[] { beginMatchBtn });

            navigationBtns.backBtn.Clicked += (sender, e) => {
                Navigation.PopModalAsync();
            };

            var pageLayout = new StackLayout()
            {
                HorizontalOptions = LayoutOptions.FillAndExpand,
                VerticalOptions   = LayoutOptions.FillAndExpand,

                Children =
                {
                    busyIcon,
                    scouts,
                    checkBoxLayout,
                    matchNoView,
                    allianceLabel,
                    alliancePicker,
                    teamNoView,
                    positionLabel,
                    positionPicker
                }
            };

            var dataScroll = new ScrollView()
            {
                HorizontalOptions = LayoutOptions.FillAndExpand,
                VerticalOptions   = LayoutOptions.FillAndExpand,

                Content = pageLayout
            };

            var grid = new Grid()
            {
                HorizontalOptions = LayoutOptions.FillAndExpand,
                VerticalOptions   = LayoutOptions.FillAndExpand,

                RowDefinitions =
                {
                    new RowDefinition {
                        Height = GridLength.Star
                    },
                    new RowDefinition {
                        Height = GridLength.Auto
                    }
                }
            };

            grid.Children.Add(dataScroll, 0, 0);
            grid.Children.Add(navigationBtns, 0, 1);

            Content = grid;
        }

        async Task getDefaultMatchType()
        {
            if (CheckInternetConnectivity.InternetStatus())
            {
                var db = new FirebaseClient(GlobalVariables.firebaseURL);

                var phaseGet = await db
                               .Child(GlobalVariables.regionalPointer)
                               .Child("competitionPhase")
                               .OnceSingleAsync <string>();

                int i = 0;
                foreach (var phase in matchPhase)
                {
                    if (phase == phaseGet)
                    {
                        break;
                    }
                    i++;
                }
                checkBoxChanged(matchPhaseCheckboxes[i]);
            }
        }

        void checkBoxChanged(CheckBox c)
        {
            semaphore = true;
            for (int i = 0; i < matchPhaseCheckboxes.Length; i++)
            {
                if (matchPhaseCheckboxes[i] != c)
                {
                    matchPhaseCheckboxes[i].Checked = false;
                }
                else
                {
                    matchPhaseCheckboxes[i].Checked = true;
                    competitionPhase = matchPhase[i];
                }
            }
            setMatchTeamNumberLayout();

            if (competitionPhase != "QF" || competitionPhase != "SF")
            {
                teamNoPicker.Items.Clear();
                teamNoPicker.SelectedIndex = -1;
                teamNoPicker.Title         = "[Select A Team]";
            }
            else
            {
                setMatchNumber();
            }

            semaphore = false;
        }

        void setMatchTeamNumberLayout()
        {
            if (competitionPhase == "P")
            {
                teamNoView.Content = teamNoLineEntry;
                matchNoLayout.Children.Remove(matchNoLineEntry);
            }
            else
            {
                teamNoView.Content = teamNoPickerLayout;

                if (competitionPhase == "QM" || competitionPhase == "F")
                {
                    matchNoView.Content = matchNoLineEntry;
                    matchNoLayout.Children.Remove(matchNoLineEntry);
                }
                else
                {
                    matchNoView.Content = matchNoLayout;
                    matchNoLayout.Children.Add(matchNoLineEntry);
                    setNoPicker.Items.Clear();

                    int items = 0;
                    if (competitionPhase == "QF")
                    {
                        items = 4;
                    }
                    else
                    {
                        items = 2;
                    }

                    for (int i = 1; i <= items; i++)
                    {
                        setNoPicker.Items.Add(i.ToString());
                    }
                }
            }
        }

        async Task setMatchNumber()
        {
            if (competitionPhase == "QF" || competitionPhase == "SF")
            {
                matchNumber = competitionPhase + (setNoPicker.SelectedIndex + 1) + "M" + matchNoLineEntry.inputEntry.Text;
            }
            else if (competitionPhase == "F")
            {
                matchNumber = competitionPhase + matchNoLineEntry.inputEntry.Text;
            }
            else
            {
                matchNumber = competitionPhase + (Convert.ToInt64(matchNoLineEntry.inputEntry.Text) < 10 ? "0" + matchNoLineEntry.inputEntry.Text : matchNoLineEntry.inputEntry.Text);
            }

            if (!matchPhaseCheckboxes[0].Checked)
            {
                await getTeamNoPickerOptions();
            }
        }

        async Task getTeamNoPickerOptions()
        {
            if (CheckInternetConnectivity.InternetStatus())
            {
                try {
                    busyIcon.IsVisible = true;
                    busyIcon.IsRunning = true;

                    var            db       = new FirebaseClient(GlobalVariables.firebaseURL);
                    EventMatchData matchGet = new EventMatchData();

                    matchGet = await db
                               .Child(GlobalVariables.regionalPointer)
                               .Child("matchList")
                               .Child(matchNumber.ToString())
                               .OnceSingleAsync <EventMatchData>();

                    Console.WriteLine("Match: " + matchNoLineEntry.inputEntry.Text + " , Alliance: " + alliancePicker.Items[alliancePicker.SelectedIndex]);

                    teamNoPicker.Items.Clear();
                    if (string.IsNullOrEmpty(matchGet.matchNumber))
                    {
                        teamNoPicker.Title = "[Select Match No. and Alliance first]";
                    }
                    else
                    {
                        teamNoPicker.Title = "[Select A Team]";

                        if (alliancePicker.SelectedIndex == 0)
                        {
                            foreach (var item in matchGet.Red)
                            {
                                teamNoPicker.Items.Add(item.ToString());
                            }
                        }
                        else if (alliancePicker.SelectedIndex == 1)
                        {
                            foreach (var item in matchGet.Blue)
                            {
                                teamNoPicker.Items.Add(item.ToString());
                            }
                        }
                    }

                    busyIcon.IsVisible = false;
                    busyIcon.IsRunning = false;
                }  catch (Exception e) {
                    Console.WriteLine("Error: " + e.Message);
                }
            }
        }

        async Task initializeTeamData()
        {
            busyIcon.IsVisible = true;
            busyIcon.IsRunning = true;
            int matchType = 0;

            matchData.scouterName = scouts.lineEntry.Text;;
            matchData.matchNumber = matchNumber;
            matchData.teamNumber  = teamNumber;
            matchData.matchID     = teamNumber + "-" + matchNumber;
            matchData.alliance    = alliancePicker.Items[alliancePicker.SelectedIndex];
            matchData.startPos    = positionPicker.Items[positionPicker.SelectedIndex];

            if (CheckInternetConnectivity.InternetStatus())
            {
                bool   test = true;
                var    db   = new FirebaseClient(GlobalVariables.firebaseURL);
                string path = "NULL";


                if (competitionPhase != "P")
                {
                    path      = "matchData/" + matchData.matchID;
                    matchType = 0;
                }
                else
                {
                    path      = "practiceMatchData/" + matchData.matchID;
                    matchType = -1;
                }

                if (await FirebaseAccess.checkExistingMatchData(db, path))
                {
                    if (!await DisplayAlert("Error", "Match Data already exists for this team-match. Do you want to overwrite it?", "OK", "Cancel"))
                    {
                        test = false;
                    }
                }

                if (test)
                {
                    FirebaseAccess.saveData(db, path, matchData);

                    await Navigation.PushModalAsync(new AutoMatchScoutingPage(matchData, matchType));
                }

                /*
                 * if (checkValue == 1) {
                 *
                 *      var dataCheck = await db
                 *                                      .Child(GlobalVariables.regionalPointer)
                 *                                      .Child("teamMatchData")
                 *                                      .Child(matchData.teamNumber.ToString())
                 *                                      .Child(matchData.matchNumber)
                 *                                      .OnceSingleAsync<TeamMatchData>();
                 *
                 *      if (dataCheck != null)
                 *              if (!await DisplayAlert("Error", "Match Data already exists for this team. Do you want to overwrite it?", "OK", "Cancel"))
                 *                      test = false;
                 *
                 *      if(test){
                 *              var send = db
                 *                              .Child(GlobalVariables.regionalPointer)
                 *                              .Child("teamMatchData")
                 *                              .Child(matchData.teamNumber.ToString())
                 *                              .Child(matchData.matchNumber)
                 *                              .PutAsync(matchData);
                 *
                 *              matchType = 0;
                 *
                 *              await Navigation.PushAsync(new AutoMatchScoutingPage(matchData, matchType));
                 *      }
                 * } else {
                 *      var dataCheck = await db
                 *                                      .Child(GlobalVariables.regionalPointer)
                 *                                      .Child("PracticeMatches")
                 *                                      .Child(matchData.teamNumber.ToString())
                 *                                      .Child(matchData.matchNumber)
                 *                                      .OnceSingleAsync<TeamMatchData>();
                 *
                 *      if (dataCheck != null)
                 *              if (!await DisplayAlert("Error", "Match Data already exists for this team. Do you want to overwrite it?", "OK", "Cancel"))
                 *                      test = false;
                 *
                 *      if(test) {
                 *              var send = db
                 *                              .Child(GlobalVariables.regionalPointer)
                 *                              .Child("PracticeMatches")
                 *                              .Child(matchData.teamNumber.ToString())
                 *                              .Child(matchData.matchNumber)
                 *                              .PutAsync(matchData);
                 *
                 *              matchType = -1;
                 *
                 *              await Navigation.PushAsync(new AutoMatchScoutingPage(matchData, matchType));
                 *      }
                 *
                 * }
                 */
            }
            busyIcon.IsVisible = false;
            busyIcon.IsRunning = false;
        }
    }