public override void Update(ViewModelReturnData VMReturnData)
        {
            //Only update this view if visible
            if (VMReturnData.StartUpView_Active)
            {
                this.View.Visibility = Visibility.Visible;
                #region Startup operation
                CardPresent = formated & VMReturnData.CardInField;
                if (VMReturnData.CardInField && !VMReturnData.OptionsPressed && !VMReturnData.NewIssuerCard)
                {
                    if (VMReturnData.prevUID == 0)
                    {
                        VMReturnData.prevUID = VMReturnData.UID;
                        readVis = Visibility.Collapsed;
                    }
                    else if (VMReturnData.prevUID != VMReturnData.UID)
                    {
                        VMReturnData.cardChanged     = true;
                        VMReturnData.CardFormatError = false;
                        oneRead = false;
                        VMReturnData.prevUID = VMReturnData.UID;
                    }

                    if (VMReturnData.cardChanged && VMReturnData.LicenceView_Active && VMReturnData.EditCard != true)
                    {
                        VMReturnData.BackApp();
                        VMReturnData.cardChanged = false;
                    }
                    else if (VMReturnData.NewCardWindow < 1 && formated && !VMReturnData.NewCardAccess_Active)
                    {
                        VMReturnData.cardChanged = false;
                        if (!oneRead)
                        {
                            ReadCardInfoHandler();
                            readVis = Visibility.Visible;
                            oneRead = true;
                        }
                    }
                    else if (VMReturnData.NewCardWindow < 1 && !formated && !VMReturnData.NewCardAccess_Active)
                    {
                        VMReturnData.cardChanged = false;
                        if (!oneRead)
                        {
                            NewCardInfoHandler();
                            readVis = Visibility.Visible;
                            oneRead = true;
                        }
                    }

                    UID = RFIDCardInfoRead.UIDtoString(VMReturnData.UID);
                    RFIDCardInfoRead.UID = VMReturnData.UID;
                    formated             = RFIDCardInfoRead.Block1Info();

                    if (formated)
                    {
                        CardImage = new BitmapImage(new Uri(@"/Resources/Images/CardValid.png", UriKind.Relative));
                    }
                    else
                    {
                        CardImage = new BitmapImage(new Uri(@"/Resources/Images/CardFormatError.png", UriKind.Relative));

                        //readVis = Visibility.Collapsed;
                    }
                    VMReturnData.cardInfoRead.formatted = formated;


                    if (ReadCardPressed == true)
                    {
                        ReadCardPressed = false;
                        doneProgress    = false;
                        ProgressBarTimer.Start();
                        VMReturnData.cardInfoRead.ReadInfo(VMReturnData.UID);
                    }

                    if (NewCardPressed == true)
                    {
                        //VMReturnData.NewCardAccess_Active = true;
                        ReadCardInfoHandler();
                        VMReturnData.EditCard      = false;
                        VMReturnData.EditCardUID   = 0;
                        VMReturnData.NewCardWindow = 0;
                        VMReturnData.NewCardUID    = VMReturnData.UID;
                        NewCardPressed             = false;
                    }
                }
                else
                {
                    UID = "Present RFID card";
                    ProgressBarValue = 0;
                    ReadProgress     = default_max;
                    doneProgress     = false;
                    oneRead          = false;
                    this.CardImage   = new BitmapImage(new Uri(@"/Resources/Images/PresentCard.png", UriKind.Relative));
                    ProgressBarTimer.Stop();
                    readVis = Visibility.Collapsed;
                }

                if (OptionsPressed)
                {
                    OptionsPressed = false;
                    VMReturnData.MenuView_Active = true;
                }

                if (doneProgress)
                {
                    if (!VMReturnData.cardInfoRead.formatted)
                    {
                        VMReturnData.CardFormatError = true;
                    }
                    else
                    {
                        VMReturnData.LicenceView_Active = true;
                    }

                    doneProgress     = false;
                    ProgressBarValue = 2;
                    ReadProgress     = default_max;
                }
                #endregion

                #region Exit button
                else if (_buttonExitPressed)
                {
                    _buttonExitPressed = false;
                    VMReturnData.ExitPromtView_Active = true;
                }
                #endregion
            }
            else
            {
                this.View.Visibility = Visibility.Collapsed;
            }
        }
Exemple #2
0
        public override void Update(ViewModelReturnData VMReturnData)
        {
            if (VMReturnData.NavigationBar_Active)
            {
                View.Visibility = System.Windows.Visibility.Visible;
            }
            else
            {
                View.Visibility = System.Windows.Visibility.Collapsed;
            }

            if (this.View.Visibility == System.Windows.Visibility.Visible)
            {
                //RuleTitle = VMReturnData.Rule_Managers.Complete_Group_info_List.ElementAt(_currentPageNumber).Group_Name;
                //TotalPageNumber = VMReturnData.Rule_Managers.PD_Rule_List.Count;

                ViewTitle         = VMReturnData.ViewTitle;
                RuleTitle         = VMReturnData.SubTitle;
                PageProgress      = VMReturnData.NavBarProgress;
                CurrentPageNumber = VMReturnData.CurrentPageNumber;
                TotalPageNumber   = VMReturnData.TotalPageNumber;
                PageProgress      = (int)(((float)CurrentPageNumber / (float)(TotalPageNumber)) * 100);

                NextVisible     = (Visibility)Convert.ToInt16(!VMReturnData.NextButtonEnabled);
                PreviousVisible = (Visibility)Convert.ToInt16(!VMReturnData.BackButtonEnabled);
                MenuVisable     = VMReturnData.MenuButtonEnabled;
                HelpVisable     = VMReturnData.HelpButtonEnabled;

                if (_buttonBackPressed)
                {
                    _buttonBackPressed = false;
                    VMReturnData.BackApp();

                    //VMReturnData.Temp_Page_Number = 0;
                    //VMReturnData.View_Changed = true;
                    //VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.Main_Menu_View_Selected] = true;
                    //VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.PDRules_View_Selected] = false;
                    //VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.System_Specific_View_Selected] = false;
                    //VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.Rule_Template_View_Selected] = false;
                }

                else if (_buttonNextPagePressed && VMReturnData.NextButtonEnabled)
                {
                    _buttonNextPagePressed = false;
                    VMReturnData.NextWindow();
                    //VMReturnData.Temp_Page_Number++;
                    //VMReturnData.View_Changed = true;

                    //if (VMReturnData.Temp_Page_Number == VMReturnData.Rule_Managers.PD_Rule_List.Count && VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.PDRules_View_Selected])
                    //{
                    //    VMReturnData.Temp_Page_Number = 0;
                    //    VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.PDRules_View_Selected] = false;
                    //    VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.System_Specific_View_Selected] = true;
                    //}
                    //else if (VMReturnData.Temp_Page_Number == VMReturnData.Rule_Managers.PD_Rule_List.Count && VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.System_Specific_View_Selected])
                    //{
                    //    VMReturnData.Temp_Page_Number = 0;
                    //    VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.PDRules_View_Selected] = true;
                    //    VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.System_Specific_View_Selected] = false;
                    //}
                }

                else if (_buttonPreviousPagePressed && VMReturnData.BackButtonEnabled)
                {
                    _buttonPreviousPagePressed = false;
                    VMReturnData.BackWindow();
                    //VMReturnData.Temp_Page_Number--;
                    //VMReturnData.View_Changed = true;

                    //if (VMReturnData.Temp_Page_Number < 0 && VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.PDRules_View_Selected])
                    //{
                    //    VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.PDRules_View_Selected] = false;
                    //    VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.System_Specific_View_Selected] = true;
                    //    VMReturnData.Temp_Page_Number = VMReturnData.Rule_Managers.PD_Rule_List.Count - 1;
                    //}
                    //else if (VMReturnData.Temp_Page_Number < 0 && VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.System_Specific_View_Selected])
                    //{
                    //    VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.PDRules_View_Selected] = true;
                    //    VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.System_Specific_View_Selected] = false;
                    //    VMReturnData.Temp_Page_Number = VMReturnData.Rule_Managers.PD_Rule_List.Count - 1;
                    //}
                }

                else if (_buttonRuleMenuPressed)
                {
                    _buttonRuleMenuPressed = false;
                    VMReturnData.MenuButton();
                    //VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.Rule_Menu_View_Selected] = true;
                }
                else if (_buttonHelpPressed)
                {
                    _buttonHelpPressed = false;
                    VMReturnData.HelpButton();
                }

                //if (VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.PDRules_View_Selected])
                //{
                //    ViewTitle = "Vehicle to Vehicle Rules";

                //}
                //if (VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.System_Specific_View_Selected])
                //{
                //    ViewTitle = "Vehicle to Static Rules";
                //}


                //    if (VMReturnData.Temp_Page_Number == 0)
                //    {
                //        if (VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.PDRules_View_Selected])
                //        {
                //            PreviousTitle = "Vehicle to Vehicle Rules";
                //            NextTitle = VMReturnData.Rule_Managers.Complete_Group_info_List.ElementAt(VMReturnData.Temp_Page_Number + 2).Group_Name;

                //        }
                //        if (VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.System_Specific_View_Selected])
                //        {
                //            PreviousTitle = "Vehicle to Static Rules";
                //            NextTitle = VMReturnData.Rule_Managers.Complete_Group_info_List.ElementAt(VMReturnData.Temp_Page_Number + 2).Group_Name;
                //        }
                //    }
                //    else if (VMReturnData.Temp_Page_Number == VMReturnData.Rule_Managers.PD_Rule_List.Count)
                //    {
                //        if (VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.PDRules_View_Selected])
                //        {
                //            NextTitle = "Vehicle to Vehicle Rules";
                //            PreviousTitle = VMReturnData.Rule_Managers.Complete_Group_info_List.ElementAt(VMReturnData.Temp_Page_Number).Group_Name;

                //        }
                //        if (VMReturnData.View_Selected[(int)ViewModelReturnData.View_Selected_Enum.System_Specific_View_Selected])
                //        {
                //            NextTitle = "Vehicle to Static Rules";
                //            PreviousTitle = VMReturnData.Rule_Managers.Complete_Group_info_List.ElementAt(VMReturnData.Temp_Page_Number).Group_Name;
                //        }
                //    }
                //    else
                //    {
                //        NextTitle = VMReturnData.Rule_Managers.Complete_Group_info_List.ElementAt(VMReturnData.Temp_Page_Number + 2).Group_Name;
                //        PreviousTitle = VMReturnData.Rule_Managers.Complete_Group_info_List.ElementAt(VMReturnData.Temp_Page_Number).Group_Name;
                //    }

                //    CurrentPageNumber = VMReturnData.Temp_Page_Number + 1;
                //    PageProgress = (int)(((float)CurrentPageNumber / (float)(VMReturnData.Rule_Managers.PD_Rule_List.Count)) * 100);
            }
            else
            {
                //View is not visible, do not update
                //Stop any animations on this vieModel
            }
        }