Ejemplo n.º 1
0
 private void SaveSettings()
 {
     Log.Debug("ServerSettingsBase: SaveSettings()");
     if (_autoCreateThumbsButton.IsEnabled)
     {
         Proxies.ConfigurationService.SetBooleanValue(ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.CreateVideoThumbnails, _autoCreateThumbsButton.Selected).Wait();
     }
     if (_metaDataForRecsButton.IsEnabled)
     {
         Proxies.ConfigurationService.SetBooleanValue(ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.AlwaysCreateMetadataFiles, _metaDataForRecsButton.Selected).Wait();
     }
     if (_guideSourceButton.IsEnabled)
     {
         Proxies.ConfigurationService.SetStringValue(ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.PreferredGuideSource, _currentGuideSource.ToString()).Wait();
     }
     if (_preRecordButton.IsEnabled)
     {
         Proxies.ConfigurationService.SetIntValue(ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.PreRecordsSeconds, Int32.Parse(_preRecordButton.SpinLabel) * 60).Wait();
     }
     if (_postRecordButton.IsEnabled)
     {
         Proxies.ConfigurationService.SetIntValue(ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.PostRecordsSeconds, Int32.Parse(_postRecordButton.SpinLabel) * 60).Wait();
     }
     if (_keepUntilModeButton.IsEnabled)
     {
         Proxies.ConfigurationService.SetStringValue(ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.DefaultKeepUntilMode, _currentKeepUntilMode.ToString()).Wait();
     }
     if (_keepUntilValueButton.IsEnabled)
     {
         Proxies.ConfigurationService.SetIntValue(ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.DefaultKeepUntilValue, _currentKeepUntilValue).Wait();
     }
     if (_freeDiskSpaceSpinButton.IsEnabled)
     {
         Proxies.ConfigurationService.SetIntValue(ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.FreeDiskSpaceInMB, Int32.Parse(_freeDiskSpaceSpinButton.SpinLabel) * 1000).Wait();
     }
     if (_minFreeDiskSpaceSpinButton.IsEnabled)
     {
         Proxies.ConfigurationService.SetIntValue(ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.MinimumFreeDiskSpaceInMB, Int32.Parse(_minFreeDiskSpaceSpinButton.SpinLabel) * 1000).Wait();
     }
 }
Ejemplo n.º 2
0
        public override void OnSave()
        {
            try
            {
                Cursor.Current = Cursors.WaitCursor;

                // Schedules
                int preRecordSeconds = (int)_preRecDateTimePicker.Value.TimeOfDay.TotalSeconds;
                if (preRecordSeconds != _preRecordSeconds)
                {
                    Proxies.ConfigurationService.SetIntValue(ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.PreRecordsSeconds, preRecordSeconds).Wait();
                }
                int postRecordSeconds = (int)_postRecDateTimePicker.Value.TimeOfDay.TotalSeconds;
                if (postRecordSeconds != _postRecordSeconds)
                {
                    Proxies.ConfigurationService.SetIntValue(ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.PostRecordsSeconds, postRecordSeconds).Wait();
                }
                if (_keepUntilControl.KeepUntilMode != _keepUntilMode)
                {
                    Proxies.ConfigurationService.SetStringValue(ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.DefaultKeepUntilMode, _keepUntilControl.KeepUntilMode.ToString()).Wait();
                }
                if (_keepUntilControl.KeepUntilValue != _keepUntilValue)
                {
                    Proxies.ConfigurationService.SetIntValue(ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.DefaultKeepUntilValue, _keepUntilControl.KeepUntilValue).Wait();
                }

                // TV-Guide
                GuideSource preferredSource = (_sourceComboBox.SelectedIndex == 0) ? GuideSource.XmlTv : GuideSource.DvbEpg;
                if (preferredSource != _preferredSource)
                {
                    Proxies.ConfigurationService.SetStringValue(ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.PreferredGuideSource, preferredSource.ToString()).Wait();
                }

                // Recording conflicts
                if (_combineConsecutiveRecordingsCheckBox.Checked != _combineConsecutiveRecordings)
                {
                    Proxies.ConfigurationService.SetBooleanValue(ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.CombineConsecutiveRecordings, _combineConsecutiveRecordingsCheckBox.Checked).Wait();
                }
                if (_autoCombineConsecutiveRecordingsCheckBox.Checked != _autoCombineConsecutiveRecordings)
                {
                    Proxies.ConfigurationService.SetBooleanValue(ConfigurationModule.Scheduler,
                                                                 ConfigurationKey.Scheduler.AutoCombineConsecutiveRecordings, _autoCombineConsecutiveRecordingsCheckBox.Checked).Wait();
                }
                if (_combineRecordingsOnlyOnSameChannelCheckBox.Checked != _combineRecordingsOnlyOnSameChannel)
                {
                    Proxies.ConfigurationService.SetBooleanValue(ConfigurationModule.Scheduler,
                                                                 ConfigurationKey.Scheduler.CombineRecordingsOnlyOnSameChannel, _combineRecordingsOnlyOnSameChannelCheckBox.Checked).Wait();
                }
                if (_swapRecorderdTunerPriorityCheckBox.Checked != _swapRecorderdTunerPriority)
                {
                    Proxies.ConfigurationService.SetBooleanValue(ConfigurationModule.Scheduler,
                                                                 ConfigurationKey.Scheduler.SwapRecorderTunerPriorityForRecordings, _swapRecorderdTunerPriorityCheckBox.Checked).Wait();
                }

                if (_createThumbnailsCheckBox.Checked != _createThumbnails)
                {
                    Proxies.ConfigurationService.SetBooleanValue(ConfigurationModule.Scheduler,
                                                                 ConfigurationKey.Scheduler.CreateVideoThumbnails, _createThumbnailsCheckBox.Checked).Wait();
                }
                if (_alwaysCreate4trFilesCheckBox.Checked != _alwaysCreate4trFiles)
                {
                    Proxies.ConfigurationService.SetBooleanValue(ConfigurationModule.Scheduler,
                                                                 ConfigurationKey.Scheduler.AlwaysCreateMetadataFiles, _alwaysCreate4trFilesCheckBox.Checked).Wait();
                }

                if (_checkBetaVersionsCheckBox.Checked != _includeBetaVersionsInUpdateCheck)
                {
                    Proxies.ConfigurationService.SetBooleanValue(ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.IncludeBetaVersionsInUpdateCheck,
                                                                 _checkBetaVersionsCheckBox.Checked).Wait();
                    Proxies.ConfigurationService.SetStringValue(ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.NextUpdateCheck, null).Wait();
                }

                // eMail server
                SaveSmtpSettings();

                // IMBot settings
                SaveIMBotSettings();

                // Disk space settings
                Proxies.ConfigurationService.SetIntValue(
                    ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.MinimumFreeDiskSpaceInMB, (int)_minFreeDiskSpaceNumericUpDown.Value).Wait();
                Proxies.ConfigurationService.SetIntValue(
                    ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.FreeDiskSpaceInMB, (int)_freeDiskSpaceNumericUpDown.Value).Wait();

                Proxies.ConfigurationService.SetIntValue(
                    ConfigurationModule.Scheduler, ConfigurationKey.Scheduler.WakeupBeforeEventMinutes, (int)_wakeupMinutesNumericUpDown.Value).Wait();

                ClosePanel();
            }
            catch (Exception ex)
            {
                MessageBox.Show(this, ex.Message, null, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            finally
            {
                Cursor.Current = Cursors.Default;
            }
        }