Example #1
0
 /// <summary>
 /// تنظیمات کاربر را برمیگرداند
 /// در صورد عدم وجود آنرا درج میکند
 /// </summary>
 /// <param name="user"></param>
 /// <returns></returns>
 private UserSettings GetUserSettings(User user)
 {
     if (user != null && user.ID > 0)
     {
         IList <UserSettings> userSettingList = userSettingRep.GetByCriteria(new CriteriaStruct(Utility.GetPropertyName(() => new UserSettings().User), new User()
         {
             ID = user.ID
         }));
         if (userSettingList != null && userSettingList.Count > 0)
         {
             user.UserSetting = userSettingList.First();
             return(user.UserSetting);
         }
         else
         {
             UserSettings userSetings = new UserSettings();
             userSetings.User     = user;
             userSetings.Language = BLanguage.GetCurrentSystemLanguage();
             userSettingRep.Save(userSetings);
             user.UserSetting = userSetings;
             return(userSetings);
         }
     }
     return(null);
 }
Example #2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="skinID"></param>
        public void SetCurrentSkin(decimal skinID)
        {
            try
            {
                EntityRepository <UISkin> skinRep = new EntityRepository <UISkin>(false);
                UserRepository            rep     = new UserRepository(false);
                User   user = rep.GetByUserName(this.CurrentUser);
                UISkin skin = skinRep.GetByCriteria(new CriteriaStruct(Utility.GetPropertyName(() => new UISkin().ID), skinID)).FirstOrDefault();
                if (skin != null && user != null)
                {
                    UserSettings userSetings = userSettingRep.GetByCriteria(new CriteriaStruct(Utility.GetPropertyName(() => new UserSettings().User), user)).FirstOrDefault();
                    if (userSetings != null)
                    {
                        userSetings.Skin = skin;
                        userSettingRep.Update(userSetings);
                    }
                    else
                    {
                        userSetings          = new UserSettings();
                        userSetings.Skin     = skin;
                        userSetings.User     = user;
                        userSetings.Language = BLanguage.GetCurrentSystemLanguage();
                        userSettingRep.Save(userSetings);
                    }
                    SessionHelper.ClearSessionValue(SessionHelper.BussinessLocalSkinSessionName);
                }
                else
                {
                    throw new InvalidDatabaseStateException(UIFatalExceptionIdentifiers.UserSettingsSkinOrUserNotExsists, "پوسته یا کاربر در دیتابیس موجود نمیباشد", "GTS.Clock.Business.AppSettings.LanguageProvider.SetCurrentSkin");
                }
            }
            catch (Exception ex)
            {
                BaseBusiness <Entity> .LogException(ex, "BUserSettings", "SetCurrentSkin");

                throw ex;
            }
        }