public List <Word> All() { using (var db = new ModelLanguage()) { return(db.Words.ToList()); } }
public List <Word> Get(int count) { using (var db = new ModelLanguage()) { return(db.Words.Take(count).ToList()); } }
/// <summary> Обработчик изменения изменения языка приложения </summary> public static void ChangeLanguage(object sender, ModelLanguage modelLanguage) { if (modelLanguage == null) { return; } var resourceDictionary = Application.Current.Resources.MergedDictionaries.FirstOrDefault(dict => dict.Source.ToString().Contains(@"Localization")); Application.Current.Resources.MergedDictionaries.Remove(resourceDictionary); var localizationDictionaryUri = DefaultLocalizationDictionaryUri; switch (modelLanguage.CodeName.Trim().ToLower()) { case "en": localizationDictionaryUri = @"pack://*****:*****@"pack://application:,,,/dodicall;component/Localization/Localization.lang.ru.xaml"; break; } resourceDictionary = new ResourceDictionary { Source = new Uri(localizationDictionaryUri) }; Application.Current.Resources.MergedDictionaries.Add(resourceDictionary); }
public void Remove(Word t) { using (var db = new ModelLanguage()) { db.Words.Remove(t); db.SaveChanges(); } }
public void Add(Word t) { using (var db = new ModelLanguage()) { db.Words.Add(t); db.SaveChanges(); } }
/// <summary> Получить настройки пользователя </summary> public static ModelUserSettings GetModelUserSettings() { var userSettings = Logic.GetUserSettings(); var deviceSettings = Logic.GetDeviceSettings(); var listModelUserAccount = new List <ModelUserAccount>(); foreach (var serverSettingModelManaged in deviceSettings.ServerSettings.Where(obj => obj.ServerType == ServerSettingTypeManaged.Sip)) { var modelUserAccount = new ModelUserAccount { Name = serverSettingModelManaged.AuthUserName, Domain = serverSettingModelManaged.Domain, Default = serverSettingModelManaged.Default }; listModelUserAccount.Add(modelUserAccount); } var defaultModelUserAccount = listModelUserAccount.FirstOrDefault(obj => obj.Domain.Equals(userSettings.DefaultVoipServer, StringComparison.InvariantCultureIgnoreCase)) ?? listModelUserAccount.FirstOrDefault(obj => obj.Default); var result = new ModelUserSettings { AutoLogin = userSettings.Autologin, Autostart = userSettings.Autostart, GuiAnimation = userSettings.GuiAnimation, TraceMode = userSettings.TraceMode, VideoEnabled = userSettings.VideoEnabled, GuiFontSize = userSettings.GuiFontSize, DoNotDesturbMode = userSettings.DoNotDesturbMode, ModelLanguageObj = ModelLanguage.GetModelLanguage(userSettings.GuiLanguage), ModelEnumThemeObj = ModelEnumTheme.GetModelEnum(userSettings.GuiThemeName), UserExtendedStatus = userSettings.UserExtendedStatus, ModelEnumEchoCancellationModeObj = ModelEnumEchoCancellationMode.GetModelEnum((int)userSettings.EchoCancellationMode), ModelEnumUserBaseStatusObj = ModelEnumUserBaseStatus.GetModelEnum((int)userSettings.UserBaseStatus), ModelEnumVideoSizeCellObj = ModelEnumVideoSizeCell.GetModelEnum((int)userSettings.VideoSizeCell), ModelEnumVideoSizeWifiObj = ModelEnumVideoSizeWifi.GetModelEnum((int)userSettings.VideoSizeWifi), ListModelUserAccount = listModelUserAccount, DefaultModelUserAccountObj = defaultModelUserAccount, ModelEnumVoipEncryptionObj = ModelEnumVoipEncryption.GetModelEnum((int)userSettings.VoipEncryption), ListModelCodecSettingsAudioWifi = deviceSettings.CodecSettings.Where(obj => obj.Type == CodecTypeManaged.Audio && obj.ConnectionType == CodecConnectionTypeManaged.Wifi).Select(obj => new ModelCodecSettings { CodecSettingModelManagedObj = obj }).ToList(), ListModelCodecSettingsAudioCell = deviceSettings.CodecSettings.Where(obj => obj.Type == CodecTypeManaged.Audio && obj.ConnectionType == CodecConnectionTypeManaged.Cell).Select(obj => new ModelCodecSettings { CodecSettingModelManagedObj = obj }).ToList(), ListModelCodecSettingsVideo = deviceSettings.CodecSettings.Where(obj => obj.Type == CodecTypeManaged.Video).Select(obj => new ModelCodecSettings { CodecSettingModelManagedObj = obj }).ToList() }; return(result); }
/// <summary> Метод сохранения настроек </summary> private void Save(bool wihtoutOnCloseUserSettings) { DataSourceUserSettings.SaveModelUserSettings(CurrentModelUserSettings); _currentModelLanguage = CurrentModelUserSettings.ModelLanguageObj; CurrentModelUserSettingsChanged = false; if (wihtoutOnCloseUserSettings) { return; } OnCloseUserSettings(); }
/// <summary> Конструктор </summary> public ViewModelUserSettings() { CurrentModelUserSettings = DataSourceUserSettings.GetModelUserSettings(); _countWhiteContact = DataSourceContact.GetCountWhiteContact(); _currentModelLanguage = CurrentModelUserSettings.ModelLanguageObj; CommandOpenUrl = new Command(OpenUrl); CommandOpenLogChat = new Command(obj => { OpenLog(DataSourceLogScope.GetChatLog()); }); CommandOpenLogDatabase = new Command(obj => { OpenLog(DataSourceLogScope.GetDatabaseLog()); }); CommandOpenLogRequest = new Command(obj => { OpenLog(DataSourceLogScope.GetRequestsLog()); }); CommandOpenLogVoip = new Command(obj => { OpenLog(DataSourceLogScope.GetVoipLog()); }); CommandOpenLogCallQuality = new Command(obj => { OpenLog(DataSourceLogScope.GetCallQualityLog()); }); CommandOpenLogCallHistory = new Command(obj => { OpenLog(DataSourceLogScope.GetCallHistoryLog()); }); CommandOpenLogGui = new Command(obj => { OpenLog(DataSourceLogScope.GetGuiLog()); }); CommandClearLogs = new Command(obj => { DataSourceLogScope.ClearLogs(); }); ExportAviable = CheckEncryptionkey(); CommandSave = new Command(obj => Save(obj as bool? ?? false)); CommandEnableWriteList = new Command(obj => EnableWriteList()); CommandPasteFromClipBoard = new Command(obj => { PasteFromClipBoard(); }); CurrentModelUserSettings.PropertyChanged += (sender, args) => { CurrentModelUserSettingsPropertyChanged(); }; foreach (var modelCodecSettings in CurrentModelUserSettings.ListModelCodecSettingsAudioWifi) { modelCodecSettings.PropertyChanged += (sender, args) => { CurrentModelUserSettingsPropertyChanged(); }; } foreach (var modelCodecSettings in CurrentModelUserSettings.ListModelCodecSettingsAudioCell) { modelCodecSettings.PropertyChanged += (sender, args) => { CurrentModelUserSettingsPropertyChanged(); }; } foreach (var modelCodecSettings in CurrentModelUserSettings.ListModelCodecSettingsVideo) { modelCodecSettings.PropertyChanged += (sender, args) => { CurrentModelUserSettingsPropertyChanged(); }; } }
/// <summary> Получить последнего залогинившегося пользователя </summary> public static ModelLogin GetLastModelLogin() { var lastLogin = Logic.GetGlobalApplicationSettings(); var modelLogin = new ModelLogin { Login = lastLogin.LastLogin, //lastUser.Autologin ? lastUser.LastLogin : String.Empty, Password = lastLogin.Autologin && !String.IsNullOrWhiteSpace(lastLogin.LastLogin) ? UtilitySecurity.LoadPasswordFromIsolatedStorage(lastLogin.LastLogin) : null, AutoLogin = lastLogin.Autologin, LastModelAutoLogin = lastLogin.Autologin, Autostart = lastLogin.Autostart, ModelLanguageObj = ModelLanguage.GetModelLanguage(lastLogin.DefaultGuiLanguage), ServerAreaCode = (int)lastLogin.Area // т.к. СВ сказал не подгружать площадки если ServerAreaCode == 0 }; if (String.IsNullOrWhiteSpace(modelLogin.Login) || modelLogin.Password == null) { modelLogin.AutoLogin = false; modelLogin.LastModelAutoLogin = false; } return(modelLogin); }
/// <summary> Конструктор </summary> private LocalizationApp() { FillDictionaries(); _modelLanguageObj = ModelLanguage.GetModelLanguage(@"en"); }
/// <summary> Инвокатор события LocalizationChanged </summary> private void OnLocalizationChanged(ModelLanguage modelLanguage) { LocalizationChanged?.Invoke(this, modelLanguage); }
/// <summary> Сохранение языка приложения до авторизации пользователя </summary> public static void SaveModelLanguage(ModelLanguage modelLanguage) { Logic.SaveDefaultGuiLanguage(modelLanguage.CodeName); }