Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
815295e548 |
@@ -170,4 +170,5 @@ public interface IAccountService
|
||||
/// <param name="accountId">Account id.</param>
|
||||
/// <returns>Whether the notifications should be created after sync or not.</returns>
|
||||
Task<bool> IsNotificationsEnabled(Guid accountId);
|
||||
Task UpdateAccountCustomServerInformationAsync(CustomServerInformation customServerInformation);
|
||||
}
|
||||
|
||||
@@ -262,6 +262,8 @@
|
||||
"IMAPSetupDialog_AccountType": "Account type",
|
||||
"IMAPSetupDialog_ValidationSuccess_Title": "Success",
|
||||
"IMAPSetupDialog_ValidationSuccess_Message": "Validation successful",
|
||||
"IMAPSetupDialog_SaveImapSuccess_Title": "Success",
|
||||
"IMAPSetupDialog_SaveImapSuccess_Message": "IMAP settings saved successfuly.",
|
||||
"IMAPSetupDialog_ValidationFailed_Title": "IMAP Server validation failed.",
|
||||
"IMAPSetupDialog_CertificateAllowanceRequired_Row0": "This server is requesting a SSL handshake to continue. Please confirm the certificate details below.",
|
||||
"IMAPSetupDialog_CertificateAllowanceRequired_Row1": "Allow the handshake to continue setting up your account.",
|
||||
|
||||
@@ -98,19 +98,13 @@ public partial class EditAccountDetailsPageViewModel : MailBaseViewModel
|
||||
Messenger.Send(new BackBreadcrumNavigationRequested());
|
||||
}
|
||||
|
||||
[RelayCommand]
|
||||
private Task SaveWithoutGoBackAsync()
|
||||
{
|
||||
return UpdateAccountAsync();
|
||||
}
|
||||
|
||||
[RelayCommand]
|
||||
private async Task ValidateImapSettingsAsync()
|
||||
{
|
||||
try
|
||||
{
|
||||
await _imapTestService.TestImapConnectionAsync(ServerInformation, true);
|
||||
_mailDialogService.InfoBarMessage(Translator.IMAPSetupDialog_ValidationSuccess_Title, Translator.IMAPSetupDialog_ValidationSuccess_Message, Core.Domain.Enums.InfoBarMessageType.Success); ;
|
||||
_mailDialogService.InfoBarMessage(Translator.IMAPSetupDialog_ValidationSuccess_Title, Translator.IMAPSetupDialog_ValidationSuccess_Message, Core.Domain.Enums.InfoBarMessageType.Success);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -118,12 +112,9 @@ public partial class EditAccountDetailsPageViewModel : MailBaseViewModel
|
||||
}
|
||||
}
|
||||
|
||||
private Task UpdateAccountAsync()
|
||||
[RelayCommand]
|
||||
private async Task UpdateCustomServerInformationAsync()
|
||||
{
|
||||
Account.Name = AccountName;
|
||||
Account.SenderName = SenderName;
|
||||
Account.AccountColorHex = SelectedColor == null ? string.Empty : SelectedColor.Hex;
|
||||
|
||||
if (ServerInformation != null)
|
||||
{
|
||||
ServerInformation.IncomingAuthenticationMethod = AvailableAuthenticationMethods[SelectedIncomingServerAuthenticationMethodIndex].ImapAuthenticationMethod;
|
||||
@@ -135,6 +126,17 @@ public partial class EditAccountDetailsPageViewModel : MailBaseViewModel
|
||||
Account.ServerInformation = ServerInformation;
|
||||
}
|
||||
|
||||
await _accountService.UpdateAccountCustomServerInformationAsync(Account.ServerInformation);
|
||||
|
||||
_mailDialogService.InfoBarMessage(Translator.IMAPSetupDialog_SaveImapSuccess_Title, Translator.IMAPSetupDialog_SaveImapSuccess_Message, Core.Domain.Enums.InfoBarMessageType.Success);
|
||||
}
|
||||
|
||||
private Task UpdateAccountAsync()
|
||||
{
|
||||
Account.Name = AccountName;
|
||||
Account.SenderName = SenderName;
|
||||
Account.AccountColorHex = SelectedColor == null ? string.Empty : SelectedColor.Hex;
|
||||
|
||||
return _accountService.UpdateAccountAsync(Account);
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
xmlns:helpers="using:Wino.Helpers"
|
||||
xmlns:imapsetup="using:Wino.Views.ImapSetup"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:picker="using:Microsoft.UI.Xaml.Controls"
|
||||
xmlns:muxc="using:Microsoft.UI.Xaml.Controls"
|
||||
mc:Ignorable="d">
|
||||
|
||||
<ScrollViewer>
|
||||
@@ -118,7 +118,7 @@
|
||||
Header="{x:Bind domain:Translator.IMAPSetupDialog_IncomingMailServer}"
|
||||
Text="{x:Bind ViewModel.ServerInformation.IncomingServer, Mode=TwoWay}" />
|
||||
|
||||
<picker:NumberBox
|
||||
<muxc:NumberBox
|
||||
Grid.Row="2"
|
||||
Header="{x:Bind domain:Translator.IMAPSetupDialog_IncomingMailServerPort}"
|
||||
Maximum="65535"
|
||||
@@ -169,7 +169,7 @@
|
||||
Header="{x:Bind domain:Translator.IMAPSetupDialog_OutgoingMailServer}"
|
||||
Text="{x:Bind ViewModel.ServerInformation.OutgoingServer, Mode=TwoWay}" />
|
||||
|
||||
<picker:NumberBox
|
||||
<muxc:NumberBox
|
||||
Grid.Row="2"
|
||||
Grid.Column="2"
|
||||
Header="{x:Bind domain:Translator.IMAPSetupDialog_OutgoingMailServerPort}"
|
||||
@@ -215,13 +215,13 @@
|
||||
Orientation="Horizontal"
|
||||
Spacing="12">
|
||||
|
||||
<ProgressRing
|
||||
Width="5"
|
||||
Height="5"
|
||||
<muxc:ProgressRing
|
||||
Width="20"
|
||||
Height="20"
|
||||
IsActive="{x:Bind ViewModel.ValidateImapSettingsCommand.IsRunning, Mode=OneWay}" />
|
||||
<Button Command="{x:Bind ViewModel.ValidateImapSettingsCommand}" Content="Test" />
|
||||
<Button
|
||||
Command="{x:Bind ViewModel.SaveWithoutGoBackCommand}"
|
||||
Command="{x:Bind ViewModel.UpdateCustomServerInformationCommand}"
|
||||
Content="{x:Bind domain:Translator.Buttons_Save}"
|
||||
Style="{ThemeResource AccentButtonStyle}" />
|
||||
</StackPanel>
|
||||
|
||||
@@ -408,6 +408,11 @@ public class AccountService : BaseDatabaseService, IAccountService
|
||||
ReportUIChange(new AccountUpdatedMessage(account));
|
||||
}
|
||||
|
||||
public async Task UpdateAccountCustomServerInformationAsync(CustomServerInformation customServerInformation)
|
||||
{
|
||||
await Connection.UpdateAsync(customServerInformation).ConfigureAwait(false);
|
||||
}
|
||||
|
||||
public async Task UpdateAccountAliasesAsync(Guid accountId, List<MailAccountAlias> aliases)
|
||||
{
|
||||
// Delete existing ones.
|
||||
|
||||
Reference in New Issue
Block a user