public UserSettingPage()
        {
            InitializeComponent();
            Title = "User Setting";
            //Read Settings
            this.m_cSettings = Main.p_cDataAccess.ReturnSettings();

            //Set Status
            SetStatus();

            pDatabaseType.SelectedIndexChanged += (sender, e) =>
            {
                if (pDatabaseType.SelectedIndex == 1)
                {
                    var navigationPage = Application.Current.MainPage as NavigationPage;
                    navigationPage.BarBackgroundColor = Color.Pink;
                    this.m_cSettings.RunningMode      = "Test";
                }
                else
                {
                    var navigationPage = Application.Current.MainPage as NavigationPage;
                    navigationPage.BarBackgroundColor = Color.Black;
                    this.m_cSettings.RunningMode      = "Live";
                }
                //Save user details to DB.
                SaveChanges();
            };
        }
Exemple #2
0
        /// <summary>
        /// v1.0.2 - Create settings record if not already there.
        /// </summary>
        public async static void CreateSettingsRecord()
        {
            bool bChangesMade = false;

            try
            {
                AppSettingsTable cSetting = Main.p_cDataAccess.ReturnSettings();
                if (cSetting == null)
                {
                    cSetting     = new AppSettingsTable();
                    bChangesMade = true;
                }


                if (cSetting.RunningMode == null || cSetting.RunningMode.Length == 0)
                {
                    cSetting.RunningMode = DependencyService.Get <IMain>().GetAppResourceValue("STATUS"); //v1.0.11 - Default to environment in resources file.
                    bChangesMade         = true;
                }

                if (bChangesMade == true)
                {
                    await Main.p_cDataAccess.SaveSettings(cSetting);
                }
            }
            catch (Exception ex)
            {
                //cMain.ReportError(ex, cMain.GetCallerMethodName(), string.Empty);
            }
        }
Exemple #3
0
        public ProjectSyncPage()
        {
            InitializeComponent();
            Title = "Project Sync";
            AppSettingsTable cSettings = Main.p_cDataAccess.ReturnSettings();

            tbLastSyncDateTime.Text = Main.ReturnLastSyncString(cSettings.LastSyncDateTime);
        }
Exemple #4
0
 private static bool createAppSettingsInstanceIfNeeded()
 {
     if (appSettings == null)
     {
         appSettings = new AppSettingsTable(); //_newAppSettingsTable();
         return(true);
     }
     return(false);
 }
Exemple #5
0
        /// <summary>
        /// v1.0.21 - Should I check for failed survey reasons.
        /// </summary>
        /// <returns></returns>
        private static ShouldICheckForSurveyReasonResult ShouldICheckForFailedSurveyReasons()
        {

            ShouldICheckForSurveyReasonResult cResult = new ShouldICheckForSurveyReasonResult();
            cResult.bCheck = false;
            cResult.dLastUpdate = DateTime.MinValue;

            try
            {

                int iDaysBetweenChecks = Convert.ToInt32(DependencyService.Get<IMain>().GetAppResourceValue("CheckFailedReasonsDaysBetweenChecks").ToString());

                AppSettingsTable cSettings = Main.p_cDataAccess.ReturnSettings();
                if (cSettings != null)
                {

                    if (cSettings.LastSurveyFailedCheckDateTime.HasValue == true)
                    {
                        TimeSpan tsDiff = DateTime.Now.Subtract(cSettings.LastSurveyFailedCheckDateTime.Value);
                        if (tsDiff.TotalDays >= iDaysBetweenChecks)
                        {
                            cResult.bCheck = true;
                            cResult.dLastUpdate = cSettings.LastSurveyFailedUpdateDateTime.Value;
                        }

                    }
                    else
                    {
                        cResult.bCheck = true;
                    }

                }
                else
                {
                    cResult.bCheck = true;
                }

                return cResult;

            }
            catch (Exception ex)
            {
                //cMain.ReportError(ex, cMain.GetCallerMethodName(), string.Empty);
                return cResult;

            }

        }
Exemple #6
0
        /// <summary>
        /// Should I check for settings
        /// </summary>
        /// <returns></returns>
        private static bool ShouldICheckForSettings()
        {

            bool bShouldICheck = false;
            try
            {

                int iDaysBetweenChecks = Convert.ToInt32(DependencyService.Get<IMain>().GetAppResourceValue("CheckSettingsDaysBetweenChecks").ToString());

                AppSettingsTable cSettings = Main.p_cDataAccess.ReturnSettings();
                if (cSettings != null)
                {

                    if (cSettings.LastSettingsCheckDateTime.HasValue == true)
                    {
                        TimeSpan tsDiff = DateTime.Now.Subtract(cSettings.LastSettingsCheckDateTime.Value);
                        if (tsDiff.TotalDays >= iDaysBetweenChecks)
                        {
                            bShouldICheck = true;

                        }

                    }
                    else
                    {
                        bShouldICheck = true;
                    }

                }
                else
                {
                    bShouldICheck = true;
                }

                return bShouldICheck;

            }
            catch (Exception ex)
            {
                //cMain.ReportError(ex, cMain.GetCallerMethodName(), string.Empty);
                return false;

            }

        }
Exemple #7
0
        private void UpdateSyncPage()
        {
            string           sSyncMsg  = String.Empty;
            AppSettingsTable cSettings = Main.p_cDataAccess.ReturnSettings();

            sSyncMsg = Main.ReturnLastSyncString(cSettings.LastSyncDateTime);
            if (Application.Current.MainPage.Navigation.NavigationStack.Count > 0)
            {
                int  index    = Application.Current.MainPage.Navigation.NavigationStack.Count - 1;
                Page currPage = Application.Current.MainPage.Navigation.NavigationStack[index];
                if (currPage.GetType() == typeof(ProjectSyncPage))
                {
                    //currPage.BackgroundColor = Color.Red;
                    Label vLastSyncDateTime = currPage.FindByName <Label>("tbLastSyncDateTime");
                    vLastSyncDateTime.Text = sSyncMsg;
                }
            }
        }
Exemple #8
0
        /// <summary>
        /// Update screen after syncing is complete.
        /// </summary>
        public static async void UpdateScreenAfterSyncing()
        {
            try
            {
                //Retrieve settings.
                AppSettingsTable cSettings = Main.p_cDataAccess.ReturnSettings();

                //Update last date time.
                cSettings.LastSyncDateTime = DateTime.Now;

                //Save settings
                await Main.p_cDataAccess.SaveSettings(cSettings);
            }
            catch (Exception ex)
            {
                //cMain.ReportError(ex, cMain.GetCallerMethodName(), string.Empty);
            }
        }
Exemple #9
0
        /// <summary>
        /// v1.0.19 - Check for Failed Survey reasons.
        /// </summary>
        public async static Task CheckForFailedSurveyReasons()
        {

            WcfExt116 cAX = null;
            try
            {

                //If already checking then leave.
                if (Main.m_bCheckingSurveyFailedReasons == true) { return; }
                Main.m_bCheckingSurveyFailedReasons = true;

                ShouldICheckForSurveyReasonResult cCheckResult = Main.ShouldICheckForFailedSurveyReasons();
                if (cCheckResult.bCheck == true)
                {

                    //For calling AX wcf
                    cAX = new WcfExt116();

                    //Get update base enums from AX
                    FetchSurveyFailedReasonsResult fsrResult = await DependencyService.Get<IWcfExt116>().FetchFailedSurveyReasons(
                        cAX.m_cCompanyName,                        
                        cCheckResult.dLastUpdate,
                        Settings.p_sSetting_AuthID,
                        Session.Token);

                    if (fsrResult != null)
                    {

                        if (fsrResult.bSuccessfull == true)
                        {

                            AppSettingsTable cSettings = Main.p_cDataAccess.ReturnSettings();

                            if (fsrResult.sfrReasons.Count > 0)
                            {

                                bool bUpdateOK = Main.p_cDataAccess.UpdateFailedSurveyReasonsTable(fsrResult.sfrReasons);
                                if (bUpdateOK == true)
                                {

                                    cSettings.LastSurveyFailedUpdateDateTime = fsrResult.bLastUpdateDate;

                                }


                            }

                            cSettings.LastSurveyFailedCheckDateTime = DateTime.Now;

                            await Main.p_cDataAccess.SaveSettings(cSettings);

                        }

                    }

                }

                //Close connection.
                if (cAX != null)
                {
                    await DependencyService.Get<IWcfExt116>().CloseAXConnection();
                }

                //Reset checking flag.
                Main.m_bCheckingSurveyFailedReasons = false;

            }
            catch (Exception ex)
            {

                Main.m_bCheckingSurveyFailedReasons = false; //Reset checking flag.
                //cMain.ReportError(ex, cMain.GetCallerMethodName(), string.Empty);

            }

        }