asm remove options from profil sync and add global option to enable them again

This commit is contained in:
Lacoi 2023-08-02 17:58:43 +02:00
parent 0d1aff213b
commit 3e5ef04045
6 changed files with 124 additions and 27 deletions

View file

@ -915,6 +915,15 @@
<setting name="SteamCmdIgnoreExitStatusCodes" serializeAs="String">
<value />
</setting>
<setting name="ProfileSyncServerModIdsEnabled" serializeAs="String">
<value>False</value>
</setting>
<setting name="ProfileSyncCrossArkClusterIdEnabled" serializeAs="String">
<value>False</value>
</setting>
<setting name="ProfileSyncAutoShutdownEnabled" serializeAs="String">
<value>False</value>
</setting>
</ServerManagerTool.Config>
</userSettings>
</configuration>

View file

@ -3256,5 +3256,50 @@ namespace ServerManagerTool {
this["TaskSchedulerPassword"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool ProfileSyncServerModIdsEnabled
{
get
{
return ((bool)(this["ProfileSyncServerModIdsEnabled"]));
}
set
{
this["ProfileSyncServerModIdsEnabled"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool ProfileSyncCrossArkClusterIdEnabled
{
get
{
return ((bool)(this["ProfileSyncCrossArkClusterIdEnabled"]));
}
set
{
this["ProfileSyncCrossArkClusterIdEnabled"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool ProfileSyncAutoShutdownEnabled
{
get
{
return ((bool)(this["ProfileSyncAutoShutdownEnabled"]));
}
set
{
this["ProfileSyncAutoShutdownEnabled"] = value;
}
}
}
}

View file

@ -592,6 +592,14 @@
<sys:String x:Key="GlobalSettings_CustomOverrideSOTFTooltip">If enabled, the SotF settings will be managed by the server manager.</sys:String>
<sys:String x:Key="GlobalSettings_CustomOverrideOptionsWarningLabel">WARNING: While any of these options are disabled, the server manager will not read or write the associated overrides settings. Re-enabling any of these options will cause ALL existing associated overrides to be removed from the config file.</sys:String>
<sys:String x:Key="ServerSettings_ProfileSyncSettingsLabel">Custom Profile Sync Options</sys:String>
<sys:String x:Key="ServerSettings_ProfileSyncServerModIdsEnabledLabel">Enable Sync for ModIDs</sys:String>
<sys:String x:Key="ServerSettings_ProfileSyncServerModIdsEnabledTooltip">If enabled, on profile sync the ModIDs are still synced.</sys:String>
<sys:String x:Key="ServerSettings_ProfileSyncCrossArkClusterIdEnabledLabel">Enable Sync for ClusterID</sys:String>
<sys:String x:Key="ServerSettings_ProfileSyncCrossArkClusterIdEnabledTooltip">If enabled, on profile sync the ClusterID is still synced.</sys:String>
<sys:String x:Key="ServerSettings_ProfileSyncAutoShutdownEnabledLabel">Enable Sync for Auto Shutdown Time</sys:String>
<sys:String x:Key="ServerSettings_ProfileSyncAutoShutdownEnabledTooltip">If enabled, on profile sync the Auto Shutdown Time Settings are still synced.</sys:String>
<sys:String x:Key="ServerSettings_CustomLevelProgressionsLabel">Custom Level Options</sys:String>
<sys:String x:Key="GlobalSettings_CustomLevelXPIncreasePlayerLabel">Player Level Increase:</sys:String>
<sys:String x:Key="GlobalSettings_CustomLevelXPIncreasePlayerTooltip">The amount of XP to be increased when adding a new custom level.</sys:String>

View file

@ -6071,7 +6071,10 @@ namespace ServerManagerTool.Lib
private void SyncAdministrationSection(ServerProfile sourceProfile)
{
//this.SetValue(ServerModIdsProperty, sourceProfile.ServerModIds);
if (Config.Default.ProfileSyncServerModIdsEnabled)
{
this.SetValue(ServerModIdsProperty, sourceProfile.ServerModIds);
}
this.SetValue(AutoSavePeriodMinutesProperty, sourceProfile.AutoSavePeriodMinutes);
@ -6111,7 +6114,11 @@ namespace ServerManagerTool.Lib
this.SetValue(EnablePublicIPForEpicProperty, sourceProfile.EnablePublicIPForEpic);
this.SetValue(OutputServerLogProperty, sourceProfile.OutputServerLog);
//this.SetValue(AltSaveDirectoryNameProperty, sourceProfile.AltSaveDirectoryName);
this.SetValue(CrossArkClusterIdProperty, sourceProfile.CrossArkClusterId);
if (Config.Default.ProfileSyncCrossArkClusterIdEnabled)
{
this.SetValue(CrossArkClusterIdProperty, sourceProfile.CrossArkClusterId);
this.SetValue(ClusterDirOverrideProperty, sourceProfile.ClusterDirOverride);
}
this.SetValue(ClusterDirOverrideProperty, sourceProfile.ClusterDirOverride);
this.SetValue(SecureSendArKPayloadProperty, sourceProfile.SecureSendArKPayload);
this.SetValue(UseItemDupeCheckProperty, sourceProfile.UseItemDupeCheck);
@ -6151,14 +6158,20 @@ namespace ServerManagerTool.Lib
this.SetValue(AutoStartOnLoginProperty, sourceProfile.AutoStartOnLogin);
this.SetValue(EnableAutoShutdown1Property, sourceProfile.EnableAutoShutdown1);
this.SetValue(AutoShutdownTime1Property, sourceProfile.AutoShutdownTime1);
this.SetValue(ShutdownDaysOfTheWeek1Property, sourceProfile.ShutdownDaysOfTheWeek1);
if (Config.Default.ProfileSyncAutoShutdownEnabled)
{
this.SetValue(AutoShutdownTime1Property, sourceProfile.AutoShutdownTime1);
this.SetValue(ShutdownDaysOfTheWeek1Property, sourceProfile.ShutdownDaysOfTheWeek1);
}
this.SetValue(RestartAfterShutdown1Property, sourceProfile.RestartAfterShutdown1);
this.SetValue(UpdateAfterShutdown1Property, sourceProfile.UpdateAfterShutdown1);
this.SetValue(EnableAutoShutdown2Property, sourceProfile.EnableAutoShutdown2);
this.SetValue(AutoShutdownTime2Property, sourceProfile.AutoShutdownTime2);
this.SetValue(ShutdownDaysOfTheWeek2Property, sourceProfile.ShutdownDaysOfTheWeek2);
if (Config.Default.ProfileSyncAutoShutdownEnabled)
{
this.SetValue(AutoShutdownTime2Property, sourceProfile.AutoShutdownTime2);
this.SetValue(ShutdownDaysOfTheWeek2Property, sourceProfile.ShutdownDaysOfTheWeek2);
}
this.SetValue(RestartAfterShutdown2Property, sourceProfile.RestartAfterShutdown2);
this.SetValue(UpdateAfterShutdown2Property, sourceProfile.UpdateAfterShutdown2);

View file

@ -266,6 +266,28 @@
</GroupBox>
<GroupBox Grid.Row="10" Grid.Column="0" Grid.ColumnSpan="4" Style="{StaticResource GroupBoxStyle}">
<GroupBox.Header>
<Label Content="{DynamicResource ServerSettings_ProfileSyncSettingsLabel}"/>
</GroupBox.Header>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<CheckBox Grid.Row="0" Grid.Column="0" Margin="5,0,5,5" Content="{DynamicResource ServerSettings_ProfileSyncServerModIdsEnabledLabel}" IsChecked="{Binding Config.ProfileSyncServerModIdsEnabled, Mode=TwoWay}" ToolTip="{DynamicResource ServerSettings_ProfileSyncServerModIdsEnabledTooltip}" HorizontalAlignment="Left"/>
<CheckBox Grid.Row="0" Grid.Column="1" Margin="5,0,5,5" Content="{DynamicResource ServerSettings_ProfileSyncCrossArkClusterIdEnabledLabel}" IsChecked="{Binding Config.ProfileSyncCrossArkClusterIdEnabled, Mode=TwoWay}" ToolTip="{DynamicResource ServerSettings_ProfileSyncCrossArkClusterIdEnabledTooltip}" HorizontalAlignment="Left"/>
<CheckBox Grid.Row="0" Grid.Column="2" Margin="5,0,5,5" Content="{DynamicResource ServerSettings_ProfileSyncAutoShutdownEnabledLabel}" IsChecked="{Binding Config.ProfileSyncAutoShutdownEnabled, Mode=TwoWay}" ToolTip="{DynamicResource ServerSettings_ProfileSyncAutoShutdownEnabledTooltip}" HorizontalAlignment="Left"/>
</Grid>
</GroupBox>
<GroupBox Grid.Row="11" Grid.Column="0" Grid.ColumnSpan="4" Style="{StaticResource GroupBoxStyle}">
<GroupBox.Header>
<Label Content="{DynamicResource ServerSettings_CustomLevelProgressionsLabel}"/>
</GroupBox.Header>
@ -285,7 +307,7 @@
</Grid>
</GroupBox>
<GroupBox Grid.Row="11" Grid.Column="0" Grid.ColumnSpan="4" Style="{StaticResource GroupBoxStyle}">
<GroupBox Grid.Row="12" Grid.Column="0" Grid.ColumnSpan="4" Style="{StaticResource GroupBoxStyle}">
<GroupBox.Header>
<Label Content="{DynamicResource GlobalSettings_ServerStatusLabel}"/>
</GroupBox.Header>
@ -306,7 +328,7 @@
</Grid>
</GroupBox>
<GroupBox Grid.Row="12" Grid.Column="0" Grid.ColumnSpan="4" Style="{StaticResource GroupBoxStyle}">
<GroupBox Grid.Row="13" Grid.Column="0" Grid.ColumnSpan="4" Style="{StaticResource GroupBoxStyle}">
<GroupBox.Header>
<Label Content="{DynamicResource GlobalSettings_ServerStartupLabel}"/>
</GroupBox.Header>
@ -328,7 +350,7 @@
</Grid>
</GroupBox>
<GroupBox Grid.Row="13" Grid.Column="0" Grid.ColumnSpan="4" Style="{StaticResource GroupBoxStyle}">
<GroupBox Grid.Row="14" Grid.Column="0" Grid.ColumnSpan="4" Style="{StaticResource GroupBoxStyle}">
<GroupBox.Header>
<Label Content="{DynamicResource GlobalSettings_UpdateModSettingsLabel}"/>
</GroupBox.Header>

View file

@ -1102,9 +1102,9 @@
<Label Grid.Row="18" Grid.Column="3" Content="{DynamicResource ServerSettings_AltSaveDirectoryNameLabel2}" ToolTip="{DynamicResource ServerSettings_AltSaveDirectoryNameTooltip}" VerticalAlignment="Center"/>
<TextBlock Grid.Row="19" Grid.Column="0" Grid.ColumnSpan="4" Margin="30,0,5,0" Text="{DynamicResource ServerSettings_AltSaveDirectoryNameNote}" FontWeight="Bold" TextWrapping="WrapWithOverflow" IsEnabled="False"/>
<Label Grid.Row="20" Grid.Column="0" Margin="20,0,5,0" Grid.ColumnSpan="2" Content="{DynamicResource ServerSettings_CrossArkClusterIdLabel}" ToolTip="{DynamicResource ServerSettings_CrossArkClusterIdTooltip}" VerticalAlignment="Center" MinWidth="200"/>
<Label Grid.Row="20" Grid.Column="0" Margin="20,0,5,0" Grid.ColumnSpan="2" Content="{DynamicResource ServerSettings_CrossArkClusterIdLabel}" ToolTip="{DynamicResource ServerSettings_CrossArkClusterIdTooltip}" VerticalAlignment="Center" MinWidth="200" Foreground="{DynamicResource UnSyncedSetting}"/>
<TextBox Grid.Row="20" Grid.Column="2" Margin="1,1,0,1" VerticalContentAlignment="Center" HorizontalAlignment="Stretch" Text="{Binding CrossArkClusterId, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, NotifyOnSourceUpdated=True}" ToolTip="{DynamicResource ServerSettings_CrossArkClusterIdTooltip}"/>
<cctl:CheckBoxAndTextBlock Grid.Row="20" Grid.Column="3" Margin="5,1,0,0" IsEnabled="{Binding CrossArkClusterId, Converter={StaticResource HasStringValueConverter}, FallbackValue=false}" IsChecked="{Binding ClusterDirOverride, Mode=TwoWay}" Text="{DynamicResource ServerSettings_ClusterDirOverrideLabel}" ToolTip="{DynamicResource ServerSettings_ClusterDirOverrideTooltip}" VerticalAlignment="Center" HorizontalAlignment="Left" UseLayoutRounding="False"/>
<cctl:CheckBoxAndTextBlock Grid.Row="20" Grid.Column="3" Margin="5,1,0,0" IsEnabled="{Binding CrossArkClusterId, Converter={StaticResource HasStringValueConverter}, FallbackValue=false}" IsChecked="{Binding ClusterDirOverride, Mode=TwoWay}" Text="{DynamicResource ServerSettings_ClusterDirOverrideLabel}" ToolTip="{DynamicResource ServerSettings_ClusterDirOverrideTooltip}" VerticalAlignment="Center" HorizontalAlignment="Left" UseLayoutRounding="False" Foreground="{DynamicResource UnSyncedSetting}"/>
<cctl:CheckBoxAndTextBlock Grid.Row="2" Grid.Column="2" Margin="5,5,5,0" Grid.ColumnSpan="2" IsChecked="{Binding DisableAntiSpeedHackDetection, Mode=TwoWay}" Text="{DynamicResource ServerSettings_DisableAntiSpeedHackLabel}" VerticalAlignment="Center" HorizontalAlignment="Left" ToolTip="{DynamicResource ServerSettings_DisableAntiSpeedHackTooltip}"/>
<cctl:AnnotatedSlider Grid.Row="3" Grid.Column="2" Margin="20,1,5,1" Grid.ColumnSpan="2" Label="{DynamicResource ServerSettings_AntiSpeedHackBiasLabel}" Value="{Binding SpeedHackBias}" Suffix="{DynamicResource ServerSettings_AntiSpeedHackBiasUnits}" Minimum="0.0" Maximum="1.0" SmallChange="0.1" LargeChange="0.25" TickFrequency="60" LabelRelativeWidth="Auto" SliderRelativeWidth="15*" SuffixRelativeWidth="Auto" ToolTip="{DynamicResource ServerSettings_AntiSpeedHackBiasTooltip}" />
@ -1446,7 +1446,7 @@
<RadioButton GroupName="AutoStartServer" Margin="5,0,0,0" VerticalAlignment="Bottom" IsEnabled="{Binding EnableAutoStart}" IsChecked="{Binding AutoStartOnLogin, Converter={cc:BooleanEqualsConverter}, ConverterParameter=true}" Content="{DynamicResource ServerSettings_AutoStartServerOnLoginLabel}" ToolTip="{DynamicResource ServerSettings_AutoStartServerOnLoginTooltip}"/>
</StackPanel>
<cctl:CheckBoxAndTextBlock Grid.Row="1" Grid.Column="0" Margin="5,5,5,0" Name="EnableAutoShutdown1Checkbox" IsChecked="{Binding EnableAutoShutdown1, Mode=TwoWay}" Text="{DynamicResource ServerSettings_EnableAutoShutdownLabel}" VerticalAlignment="Bottom" ToolTip="{DynamicResource ServerSettings_EnableAutoShutdownTooltip}"/>
<cctl:CheckBoxAndTextBlock Grid.Row="1" Grid.Column="0" Margin="5,5,5,0" Name="EnableAutoShutdown1Checkbox" IsChecked="{Binding EnableAutoShutdown1, Mode=TwoWay}" Text="{DynamicResource ServerSettings_EnableAutoShutdownLabel}" VerticalAlignment="Bottom" ToolTip="{DynamicResource ServerSettings_EnableAutoShutdownTooltip}" Foreground="{DynamicResource UnSyncedSetting}"/>
<StackPanel Grid.Row="1" Grid.Column="1" Margin="5,5,5,0" Orientation="Horizontal" IsEnabled="{Binding ElementName=EnableSOTFCheckbox, Path=IsChecked, Converter={StaticResource InvertBooleanConverter}}" >
<TextBox Margin="10,0,0,0" Width="60" Height="20" IsEnabled="{Binding EnableAutoShutdown1}" VerticalAlignment="Bottom" ToolTip="{DynamicResource ServerSettings_EnableAutoShutdownTooltip}">
<Validation.ErrorTemplate>
@ -1468,31 +1468,31 @@
</TextBox>
<StackPanel Orientation="Horizontal">
<StackPanel>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[0], ElementName=SettingsControl, FallbackValue=Sun}" HorizontalAlignment="Center" Margin="0,-5,0,-5"/>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[0], ElementName=SettingsControl, FallbackValue=Sun}" HorizontalAlignment="Center" Margin="0,-5,0,-5" Foreground="{DynamicResource UnSyncedSetting}"/>
<CheckBox IsEnabled="{Binding EnableAutoShutdown1}" IsChecked="{Binding ShutdownDaysOfTheWeek1, Mode=TwoWay, Converter={StaticResource FlagsEnumToBooleanConverterShutdown1}, ConverterParameter={x:Static mts:DaysOfTheWeek.Sunday}}" HorizontalAlignment="Center"/>
</StackPanel>
<StackPanel>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[1], ElementName=SettingsControl, FallbackValue=Mon}" HorizontalAlignment="Center" Margin="0,-5,0,-5"/>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[1], ElementName=SettingsControl, FallbackValue=Mon}" HorizontalAlignment="Center" Margin="0,-5,0,-5" Foreground="{DynamicResource UnSyncedSetting}"/>
<CheckBox IsEnabled="{Binding EnableAutoShutdown1}" IsChecked="{Binding ShutdownDaysOfTheWeek1, Mode=TwoWay, Converter={StaticResource FlagsEnumToBooleanConverterShutdown1}, ConverterParameter={x:Static mts:DaysOfTheWeek.Monday}}" HorizontalAlignment="Center"/>
</StackPanel>
<StackPanel>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[2], ElementName=SettingsControl, FallbackValue=Tue}" HorizontalAlignment="Center" Margin="0,-5,0,-5"/>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[2], ElementName=SettingsControl, FallbackValue=Tue}" HorizontalAlignment="Center" Margin="0,-5,0,-5" Foreground="{DynamicResource UnSyncedSetting}"/>
<CheckBox IsEnabled="{Binding EnableAutoShutdown1}" IsChecked="{Binding ShutdownDaysOfTheWeek1, Mode=TwoWay, Converter={StaticResource FlagsEnumToBooleanConverterShutdown1}, ConverterParameter={x:Static mts:DaysOfTheWeek.Tuesday}}" HorizontalAlignment="Center"/>
</StackPanel>
<StackPanel>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[3], ElementName=SettingsControl, FallbackValue=Wed}" HorizontalAlignment="Center" Margin="0,-5,0,-5"/>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[3], ElementName=SettingsControl, FallbackValue=Wed}" HorizontalAlignment="Center" Margin="0,-5,0,-5" Foreground="{DynamicResource UnSyncedSetting}"/>
<CheckBox IsEnabled="{Binding EnableAutoShutdown1}" IsChecked="{Binding ShutdownDaysOfTheWeek1, Mode=TwoWay, Converter={StaticResource FlagsEnumToBooleanConverterShutdown1}, ConverterParameter={x:Static mts:DaysOfTheWeek.Wednesday}}" HorizontalAlignment="Center"/>
</StackPanel>
<StackPanel>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[4], ElementName=SettingsControl, FallbackValue=Thu}" HorizontalAlignment="Center" Margin="0,-5,0,-5"/>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[4], ElementName=SettingsControl, FallbackValue=Thu}" HorizontalAlignment="Center" Margin="0,-5,0,-5" Foreground="{DynamicResource UnSyncedSetting}"/>
<CheckBox IsEnabled="{Binding EnableAutoShutdown1}" IsChecked="{Binding ShutdownDaysOfTheWeek1, Mode=TwoWay, Converter={StaticResource FlagsEnumToBooleanConverterShutdown1}, ConverterParameter={x:Static mts:DaysOfTheWeek.Thursday}}" HorizontalAlignment="Center"/>
</StackPanel>
<StackPanel>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[5], ElementName=SettingsControl, FallbackValue=Fri}" HorizontalAlignment="Center" Margin="0,-5,0,-5"/>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[5], ElementName=SettingsControl, FallbackValue=Fri}" HorizontalAlignment="Center" Margin="0,-5,0,-5" Foreground="{DynamicResource UnSyncedSetting}"/>
<CheckBox IsEnabled="{Binding EnableAutoShutdown1}" IsChecked="{Binding ShutdownDaysOfTheWeek1, Mode=TwoWay, Converter={StaticResource FlagsEnumToBooleanConverterShutdown1}, ConverterParameter={x:Static mts:DaysOfTheWeek.Friday}}" HorizontalAlignment="Center"/>
</StackPanel>
<StackPanel>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[6], ElementName=SettingsControl, FallbackValue=Sat}" HorizontalAlignment="Center" Margin="0,-5,0,-5"/>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[6], ElementName=SettingsControl, FallbackValue=Sat}" HorizontalAlignment="Center" Margin="0,-5,0,-5" Foreground="{DynamicResource UnSyncedSetting}"/>
<CheckBox IsEnabled="{Binding EnableAutoShutdown1}" IsChecked="{Binding ShutdownDaysOfTheWeek1, Mode=TwoWay, Converter={StaticResource FlagsEnumToBooleanConverterShutdown1}, ConverterParameter={x:Static mts:DaysOfTheWeek.Saturday}}" HorizontalAlignment="Center"/>
</StackPanel>
</StackPanel>
@ -1500,7 +1500,7 @@
<cctl:CheckBoxAndTextBlock IsEnabled="{Binding EnableAutoShutdown1}" IsChecked="{Binding RestartAfterShutdown1, Mode=TwoWay}" Text="{DynamicResource ServerSettings_RestartAfterShutdownLabel}" VerticalAlignment="Bottom" ToolTip="{DynamicResource ServerSettings_RestartAfterShutdownTooltip}" FlowDirection="RightToLeft" Margin="10,0,0,0" />
</StackPanel>
<cctl:CheckBoxAndTextBlock Grid.Row="2" Grid.Column="0" Margin="5,5,5,0" Name="EnableAutoShutdown2Checkbox" IsChecked="{Binding EnableAutoShutdown2, Mode=TwoWay}" Text="{DynamicResource ServerSettings_EnableAutoShutdownLabel}" VerticalAlignment="Bottom" ToolTip="{DynamicResource ServerSettings_EnableAutoShutdownTooltip}"/>
<cctl:CheckBoxAndTextBlock Grid.Row="2" Grid.Column="0" Margin="5,5,5,0" Name="EnableAutoShutdown2Checkbox" IsChecked="{Binding EnableAutoShutdown2, Mode=TwoWay}" Text="{DynamicResource ServerSettings_EnableAutoShutdownLabel}" VerticalAlignment="Bottom" ToolTip="{DynamicResource ServerSettings_EnableAutoShutdownTooltip}" Foreground="{DynamicResource UnSyncedSetting}"/>
<StackPanel Grid.Row="2" Grid.Column="1" Margin="5,5,5,0" Orientation="Horizontal" IsEnabled="{Binding ElementName=EnableSOTFCheckbox, Path=IsChecked, Converter={StaticResource InvertBooleanConverter}}" >
<TextBox Margin="10,0,0,0" Width="60" Height="20" IsEnabled="{Binding EnableAutoShutdown2}" VerticalAlignment="Bottom" ToolTip="{DynamicResource ServerSettings_EnableAutoShutdownTooltip}">
<Validation.ErrorTemplate>
@ -1522,31 +1522,31 @@
</TextBox>
<StackPanel Orientation="Horizontal">
<StackPanel>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[0], ElementName=SettingsControl, FallbackValue=Sun}" HorizontalAlignment="Center" Margin="0,-5,0,-5"/>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[0], ElementName=SettingsControl, FallbackValue=Sun}" HorizontalAlignment="Center" Margin="0,-5,0,-5" Foreground="{DynamicResource UnSyncedSetting}"/>
<CheckBox IsEnabled="{Binding EnableAutoShutdown2}" IsChecked="{Binding ShutdownDaysOfTheWeek2, Mode=TwoWay, Converter={StaticResource FlagsEnumToBooleanConverterShutdown2}, ConverterParameter={x:Static mts:DaysOfTheWeek.Sunday}}" HorizontalAlignment="Center"/>
</StackPanel>
<StackPanel>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[1], ElementName=SettingsControl, FallbackValue=Mon}" HorizontalAlignment="Center" Margin="0,-5,0,-5"/>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[1], ElementName=SettingsControl, FallbackValue=Mon}" HorizontalAlignment="Center" Margin="0,-5,0,-5" Foreground="{DynamicResource UnSyncedSetting}"/>
<CheckBox IsEnabled="{Binding EnableAutoShutdown2}" IsChecked="{Binding ShutdownDaysOfTheWeek2, Mode=TwoWay, Converter={StaticResource FlagsEnumToBooleanConverterShutdown2}, ConverterParameter={x:Static mts:DaysOfTheWeek.Monday}}" HorizontalAlignment="Center"/>
</StackPanel>
<StackPanel>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[2], ElementName=SettingsControl, FallbackValue=Tue}" HorizontalAlignment="Center" Margin="0,-5,0,-5"/>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[2], ElementName=SettingsControl, FallbackValue=Tue}" HorizontalAlignment="Center" Margin="0,-5,0,-5" Foreground="{DynamicResource UnSyncedSetting}"/>
<CheckBox IsEnabled="{Binding EnableAutoShutdown2}" IsChecked="{Binding ShutdownDaysOfTheWeek2, Mode=TwoWay, Converter={StaticResource FlagsEnumToBooleanConverterShutdown2}, ConverterParameter={x:Static mts:DaysOfTheWeek.Tuesday}}" HorizontalAlignment="Center"/>
</StackPanel>
<StackPanel>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[3], ElementName=SettingsControl, FallbackValue=Wed}" HorizontalAlignment="Center" Margin="0,-5,0,-5"/>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[3], ElementName=SettingsControl, FallbackValue=Wed}" HorizontalAlignment="Center" Margin="0,-5,0,-5" Foreground="{DynamicResource UnSyncedSetting}"/>
<CheckBox IsEnabled="{Binding EnableAutoShutdown2}" IsChecked="{Binding ShutdownDaysOfTheWeek2, Mode=TwoWay, Converter={StaticResource FlagsEnumToBooleanConverterShutdown2}, ConverterParameter={x:Static mts:DaysOfTheWeek.Wednesday}}" HorizontalAlignment="Center"/>
</StackPanel>
<StackPanel>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[4], ElementName=SettingsControl, FallbackValue=Thu}" HorizontalAlignment="Center" Margin="0,-5,0,-5"/>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[4], ElementName=SettingsControl, FallbackValue=Thu}" HorizontalAlignment="Center" Margin="0,-5,0,-5" Foreground="{DynamicResource UnSyncedSetting}"/>
<CheckBox IsEnabled="{Binding EnableAutoShutdown2}" IsChecked="{Binding ShutdownDaysOfTheWeek2, Mode=TwoWay, Converter={StaticResource FlagsEnumToBooleanConverterShutdown2}, ConverterParameter={x:Static mts:DaysOfTheWeek.Thursday}}" HorizontalAlignment="Center"/>
</StackPanel>
<StackPanel>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[5], ElementName=SettingsControl, FallbackValue=Fri}" HorizontalAlignment="Center" Margin="0,-5,0,-5"/>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[5], ElementName=SettingsControl, FallbackValue=Fri}" HorizontalAlignment="Center" Margin="0,-5,0,-5" Foreground="{DynamicResource UnSyncedSetting}"/>
<CheckBox IsEnabled="{Binding EnableAutoShutdown2}" IsChecked="{Binding ShutdownDaysOfTheWeek2, Mode=TwoWay, Converter={StaticResource FlagsEnumToBooleanConverterShutdown2}, ConverterParameter={x:Static mts:DaysOfTheWeek.Friday}}" HorizontalAlignment="Center"/>
</StackPanel>
<StackPanel>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[6], ElementName=SettingsControl, FallbackValue=Sat}" HorizontalAlignment="Center" Margin="0,-5,0,-5"/>
<Label Content="{Binding CurrentCulture.DateTimeFormat.AbbreviatedDayNames[6], ElementName=SettingsControl, FallbackValue=Sat}" HorizontalAlignment="Center" Margin="0,-5,0,-5" Foreground="{DynamicResource UnSyncedSetting}"/>
<CheckBox IsEnabled="{Binding EnableAutoShutdown2}" IsChecked="{Binding ShutdownDaysOfTheWeek2, Mode=TwoWay, Converter={StaticResource FlagsEnumToBooleanConverterShutdown2}, ConverterParameter={x:Static mts:DaysOfTheWeek.Saturday}}" HorizontalAlignment="Center"/>
</StackPanel>
</StackPanel>