private static async Task Auth() { var usernameElement = await _page.QuerySelectorAsync(".upc-user-name"); if (usernameElement != null) { return; } #region Get creds var credentials = await CredentialsUtils.GetAllAsync(); string login = credentials["uplay"][0]["login"]; string password = credentials["uplay"][0]["password"]; #endregion await _page.GoToAsync("https://store.ubi.com/ru/account-connection", WaitUntilNavigation.Load); #region Get login iframe // ReSharper disable StringLiteralTypo await _page.WaitForSelectorAsync("#loginiframe", PptrUtils.ShortSelectorAwaiter); var accountsFrame = await _page.QuerySelectorAsync("#loginiframe"); var accountsFrameContent = await accountsFrame.ContentFrameAsync(); await accountsFrameContent.WaitForSelectorAsync("#AuthPassword", PptrUtils.LongSelectorAwaiter); #endregion #region Fill form var loginInput = await accountsFrameContent.QuerySelectorAsync("#AuthEmail"); if (loginInput is not null) { await loginInput.TypeAsync(login); } var passwordInput = await accountsFrameContent.QuerySelectorAsync("#AuthPassword"); if (passwordInput is not null) { await passwordInput.TypeAsync(password); } #endregion #region Submit var submitButton = await accountsFrameContent.QuerySelectorAsync("form button.btn.btn-primary.btn-block"); await submitButton.ClickAsync(); #endregion }
static void Main(string[] args) { //These codelines are needed to use the NotifyIcon without a Form. Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); CredentialsUtils.CheckConfiguration(); //Initialize NumberController NumberController.Initialize(); //Start ClipboardMonitor ClipboardMonitor.Start(); //Start TrayIcon Application.Run(new TrayIconContext()); }
private void AskIfCallCurrentNumber() { if (NumberController.Instance.CurrentNumber.Type == NumberStringType.INTERNAL) { if (CredentialsUtils.CheckConfiguration()) { DialogResult answer = MessageHelper.MessageBoxService.ShowOnTop(MessageType.InfoYesNo, MessageHelper.AskIfCallMessage); if (answer == DialogResult.Yes) { SnomPhoneController.Instance.CallCurrentNumber(); } } } else { new CallMessageBox().ShowDialog(); } }
private bool SaveCredentials() { string ipAddress = this.tbIpAddress.Text; Uri ipAddressUri = null; string user = this.tbUser.Text; string password = this.tbPassword.Text; string ownnumber = this.tbOwnNumber.Text; CheckState autostart = this.cbAutoStart.CheckState; bool ipAddressValid = CredentialsUtils.IsValidIpAddress(ipAddress); bool userValid = CredentialsUtils.IsValidUser(user); bool passwordValid = CredentialsUtils.IsValidPassword(password); bool ownnumberValid = CredentialsUtils.IsValidOwnNumber(ownnumber); ConnectionType connectionType = ConnectionType.NO_CONNECTION; bool connectionValid = false; bool credentialsValid = !(!userValid && passwordValid); if (ipAddressValid && credentialsValid && ownnumberValid) { ipAddressUri = new Uri(Constant.HTTP + ipAddress); connectionType = SnomPhoneController.Instance.CheckConnection(ipAddressUri, user, password); connectionValid = connectionType == ConnectionType.VALID; } if (connectionValid) { Credentials.Instance.PhoneUri = ipAddressUri; Credentials.Instance.User = user; Credentials.Instance.Password = password; Credentials.Instance.OwnNumber = ownnumber; SetStartup(); } else { MessageHelper.MessageBoxService.Show( MessageType.Warning, MessageHelper.WrongSettingsMessage(ipAddressValid, userValid, passwordValid, ownnumberValid, connectionType)); } return(connectionValid); }
private static async Task Auth() { var credentials = await CredentialsUtils.GetAllAsync(); string login = credentials["gog"][0]["login"]; string password = credentials["gog"][0]["password"]; var username = await _page.EvaluateExpressionAsync <string>("document.querySelector('#menuUsername').innerText"); if (username == "") { var signInButton = await _page.QuerySelectorAsync(".menu-anonymous-header__btn--sign-in"); await _page.EvaluateFunctionAsync <string>("e => e.click()", signInButton); await _page.WaitForSelectorAsync("#GalaxyAccountsFrame", PptrUtils.LongSelectorAwaiter); var accountsFrame = await _page.QuerySelectorAsync("#GalaxyAccountsFrame"); var accountsFrameContent = await accountsFrame.ContentFrameAsync(); await accountsFrameContent.WaitForSelectorAsync("#login_username", PptrUtils.LongSelectorAwaiter); await accountsFrameContent.WaitForSelectorAsync("#login_password", PptrUtils.LongSelectorAwaiter); await accountsFrameContent.WaitForSelectorAsync("#login_login", PptrUtils.LongSelectorAwaiter); var loginInput = await accountsFrameContent.QuerySelectorAsync("#login_username"); await loginInput.TypeAsync(login); var passwordInput = await accountsFrameContent.QuerySelectorAsync("#login_password"); await passwordInput.TypeAsync(password); var submitButton = await accountsFrameContent.QuerySelectorAsync("#login_login"); await submitButton.ClickAsync(); } }
public static IDictionary <string, string> PopulateCredentials(string username, string password) { return(CredentialsUtils.PopulateCredentials(username, password)); }