Esempio n. 1
0
        private async Task <string> getUserLanguage(int userId)
        {
            SettingCls       setModel     = new SettingCls();
            SettingCls       set          = new SettingCls();
            SetValues        valueModel   = new SetValues();
            List <SetValues> languages    = new List <SetValues>();
            UserSetValues    usValueModel = new UserSetValues();
            var lanSettings = await setModel.GetAll();

            set = lanSettings.Where(l => l.name == "language").FirstOrDefault <SettingCls>();
            var lanValues = await valueModel.GetAll();

            if (lanValues.Count > 0)
            {
                languages = lanValues.Where(vl => vl.settingId == set.settingId).ToList <SetValues>();

                usValues = await usValueModel.GetAll();

                if (usValues.Count > 0)
                {
                    var curUserValues = usValues.Where(c => c.userId == userId);

                    if (curUserValues.Count() > 0)
                    {
                        foreach (var l in curUserValues)
                        {
                            if (languages.Any(c => c.valId == l.valId))
                            {
                                usLanguage = l;
                            }
                        }

                        var lan = await valueModel.GetByID(usLanguage.valId.Value);

                        return(lan.value);
                    }
                    else
                    {
                        return("en");
                    }
                }
                else
                {
                    return("en");
                }
            }
            else
            {
                return("en");
            }
        }
        private async Task getUserPath()
        {
            #region get user path
            UserSetValues        uSetValueModel = new UserSetValues();
            List <UserSetValues> lst            = await uSetValueModel.GetAll();

            SetValues setValueModel = new SetValues();

            List <SetValues> setVLst = await setValueModel.GetBySetName("user_path");

            firstId  = setVLst[0].valId;
            secondId = setVLst[1].valId;
            //string firstPath = "" , secondPath = "";
            try
            {
                firstUserSetValue  = lst.Where(u => u.valId == firstId && u.userId == MainWindow.userID).FirstOrDefault();
                secondUserSetValue = lst.Where(u => u.valId == secondId && u.userId == MainWindow.userID).FirstOrDefault();

                foreach (var o in newlist)
                {
                    if (o.name.Equals(SectionData.translate(firstUserSetValue.note)))
                    {
                        cb_firstLevel.SelectedValue = o.objectId;
                        break;
                    }
                }
                foreach (var o in newlist2)
                {
                    if (o.name.Equals(SectionData.translate(secondUserSetValue.note)))
                    {
                        cb_secondLevel.SelectedValue = o.objectId;
                        break;
                    }
                }
                //cb_firstLevel.SelectedValue = cb_firstLevel.Items.IndexOf(firstUserSetValue.note);
            }
            catch { cb_firstLevel.SelectedIndex = -1; }

            #endregion
        }
        private async void Btn_save_Click(object sender, RoutedEventArgs e)
        {//save
            try
            {
                if (sender != null)
                {
                    SectionData.StartAwait(grid_main);
                }

                #region validate
                SectionData.validateEmptyComboBox(cb_firstLevel, p_errorFirstLevel, tt_errorFirstLevel, "trFirstPath");
                SectionData.validateEmptyComboBox(cb_secondLevel, p_errorSecondLevel, tt_errorSecondLevel, "trSecondPath");
                #endregion
                #region save
                if ((!cb_firstLevel.Text.Equals("")) && (!cb_firstLevel.Text.Equals("")))
                {
                    string first  = objects.Where(x => x.objectId == (int)cb_firstLevel.SelectedValue).FirstOrDefault().name.ToString();
                    string second = objects.Where(x => x.objectId == (int)cb_secondLevel.SelectedValue).FirstOrDefault().name.ToString();

                    //save first path
                    if (firstUserSetValue == null)
                    {
                        firstUserSetValue = new UserSetValues();
                    }

                    firstUserSetValue.userId       = MainWindow.userID;
                    firstUserSetValue.valId        = firstId;
                    firstUserSetValue.note         = first;
                    firstUserSetValue.createUserId = MainWindow.userID;
                    firstUserSetValue.updateUserId = MainWindow.userID;
                    int res1 = await userSetValuesModel.Save(firstUserSetValue);

                    //save second path
                    if (secondUserSetValue == null)
                    {
                        secondUserSetValue = new UserSetValues();
                    }

                    secondUserSetValue.userId       = MainWindow.userID;
                    secondUserSetValue.valId        = secondId;
                    secondUserSetValue.note         = second;
                    secondUserSetValue.createUserId = MainWindow.userID;
                    secondUserSetValue.updateUserId = MainWindow.userID;
                    int res2 = await userSetValuesModel.Save(secondUserSetValue);

                    if ((res1 > 0) && (res2 > 0))
                    {
                        Toaster.ShowSuccess(Window.GetWindow(this), message: MainWindow.resourcemanager.GetString("trPopSave"), animation: ToasterAnimation.FadeIn);
                        MainWindow.firstPath  = first;
                        MainWindow.secondPath = second;
                        // MainWindow.first = res1;
//MainWindow.second = res2;
                        await Task.Delay(1500);

                        this.Close();
                    }
                    else
                    {
                        Toaster.ShowWarning(Window.GetWindow(this), message: MainWindow.resourcemanager.GetString("trPopError"), animation: ToasterAnimation.FadeIn);
                    }
                }
                #endregion
                if (sender != null)
                {
                    SectionData.EndAwait(grid_main);
                }
            }
            catch (Exception ex)
            {
                if (sender != null)
                {
                    SectionData.EndAwait(grid_main);
                }
                SectionData.ExceptionMessage(ex, this);
            }
            //+ $"Second: {objects.Where(x => x.objectId == (int)cb_secondLevel.SelectedValue).FirstOrDefault().name}");
        }