private void UpdateExistingUserDetailsForm_Load(object sender, EventArgs e) { SetupHelper.SetupAgeGenderControls(rbMale, rbFemale, ddDay, ddMonth, ddYear); SetupHelper.SetupGeoDropDowns(ddCountry, ddState, ddTownCity); SetupHelper.SetupSocioEconomicDropDowns(ddOccupationSector, ddEmploymentLevel, ddAnnualHouseholdIncome); if (!AppDataSingleton.Instance.ExistingUserDetailsDataRetrieved) { SimpleErrorWrapper wrapper = UpdateDetailsWithExistingData(); if (wrapper.ErrorStatus == ErrorStatus1.Failure) { MessageBox.Show(wrapper.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); _bGeoDropDownsSet = true; return; } if (!AppDataSingleton.Instance.UserInfoExists) { lblSubtitle.Text = "Please enter your details."; } AppDataSingleton.Instance.ExistingUserDetailsDataRetrieved = true; } SetupHelper.SetFormControlsToDownloadedDetails(txtFirstName, txtLastName, rbMale, rbFemale, ddDay, ddMonth, ddYear, ddCountry, ddState, ddTownCity, ddOccupationSector, ddEmploymentLevel, ddAnnualHouseholdIncome); _bGeoDropDownsSet = true; }
/// <summary> /// Adds Uninstall information to an XML file ready to be passed on to the Master Server database /// </summary> /// <param name="systemPassPhrase">Pass phrase to authenticate across services</param> /// <param name="userGUID">The user's unique identifier across the system</param> /// <returns>A SimpleErrorWrapper object with the operation result</returns> public SimpleErrorWrapper RegisterSoftwareUninstall(string systemPassPhrase, string userGUID, string machineGUID) { SimpleErrorWrapper simpleErrorWrapper = new SimpleErrorWrapper(); if (systemPassPhrase != "password") { simpleErrorWrapper.ErrorCode = "ERR:001"; simpleErrorWrapper.Message = "Authentication failure"; simpleErrorWrapper.ErrorSeverity = ErrorSeverity.Retriable; simpleErrorWrapper.ErrorStatus = ErrorStatus.Failure; return(simpleErrorWrapper); } string uninstallInfoPath = _machineSpecificDataPath + machineGUID + "\\software_uninstall.dat"; if (!WriteTextToNewFile(DateTime.Now.ToString(), uninstallInfoPath)) { simpleErrorWrapper.ErrorStatus = ErrorStatus.Failure; simpleErrorWrapper.ErrorSeverity = ErrorSeverity.Retriable; simpleErrorWrapper.ErrorCode = "ERR:005"; simpleErrorWrapper.Message = "Uninstall info could not be registered."; return(simpleErrorWrapper); } simpleErrorWrapper.ErrorStatus = ErrorStatus.Success; return(simpleErrorWrapper); }
// new user communication private void RegisterUserDetails() { _bThreadStarted = true; string macAddress = SetupHelper.GetMACAddress(); lock (_lockObj) { try { AppDataSingleton.Instance.SetupLogger.WriteMessage("RegisterUserDetails 2"); AppDataSingleton.Instance.SetupLogger.WriteMessage("RegisterUserDetails 3"); using (var client = new UserDataManagementClient()) { AppDataSingleton.Instance.SetupLogger.WriteMessage("RegisterUserDetails 4"); _wrapper = client.RegisterNewUser(AppDataSingleton.Instance.EmailAddress, AppDataSingleton.Instance.Password, AppDataSingleton.Instance.FirstName, AppDataSingleton.Instance.LastName, AppDataSingleton.Instance.Gender, AppDataSingleton.Instance.DOB, true, AppDataSingleton.Instance.TownCity, AppDataSingleton.Instance.State, AppDataSingleton.Instance.Country, AppDataSingleton.Instance.OccupationSector, AppDataSingleton.Instance.EmploymentLevel, AppDataSingleton.Instance.AnnualHouseholdIncome, AppDataSingleton.Instance.User.UserGUID, AppDataSingleton.Instance.User.MachineGUID, AppDataSingleton.Instance.User.SoftwareMajorVersionNumber, true, AppDataSingleton.Instance.User.SoftwareMinorVersionNumber, true, macAddress, AppDataSingleton.Instance.PCName, AppDataSingleton.Instance.ChannelSubscriptionsToUpload, "password"); } AppDataSingleton.Instance.SetupLogger.WriteMessage("RegisterUserDetails 5"); } catch (System.Net.WebException ex) { AppDataSingleton.Instance.SetupLogger.WriteError(ex); _wrapper = SetupHelper.GetGenericErrorConnectingWrapper(); } } }
private SimpleErrorWrapper UpdateDetailsWithExistingData() { UserManagementServicesLive.UserInfo userInfo = null; SimpleErrorWrapper wrapper = null; try { using (var client = new UserDataManagementClient()) { wrapper = client.GetExistingUserDetails(AppDataSingleton.Instance.User.UserGUID, AppDataSingleton.Instance.Password, "password", out userInfo); } } catch (System.Net.WebException ex) { AppDataSingleton.Instance.SetupLogger.WriteError(ex); return(SetupHelper.GetGenericErrorConnectingWrapper()); } if (wrapper.ErrorStatus == ErrorStatus1.Failure) { return(wrapper); } if (string.IsNullOrEmpty(userInfo.Gender)) { AppDataSingleton.Instance.UserInfoExists = false; } else { AppDataSingleton.Instance.UserInfoExists = true; } AppDataSingleton.Instance.FirstName = userInfo.FirstName; AppDataSingleton.Instance.LastName = userInfo.LastName; AppDataSingleton.Instance.Gender = userInfo.Gender; AppDataSingleton.Instance.DOB = userInfo.DOB; AppDataSingleton.Instance.DOBDay = userInfo.DOB.Day; AppDataSingleton.Instance.DOBMonth = userInfo.DOB.Month; AppDataSingleton.Instance.DOBYear = userInfo.DOB.Year; AppDataSingleton.Instance.TownCity = userInfo.TownCity; AppDataSingleton.Instance.State = userInfo.State; AppDataSingleton.Instance.Country = userInfo.Country; AppDataSingleton.Instance.OccupationSector = userInfo.OccupationSector; AppDataSingleton.Instance.EmploymentLevel = userInfo.EmploymentLevel; AppDataSingleton.Instance.AnnualHouseholdIncome = userInfo.AnnualHouseholdIncome; return(wrapper); }
private void CheckIfEmailForNewUserAlreadyExists() { lock (_lockObj) { try { using (var client = new UserDataManagementClient()) { _wrapper = client.CheckEmailAddressExists(txtEmailAddressNew.Text.Trim(), "password"); } } catch (System.Net.WebException ex) { AppDataSingleton.Instance.SetupLogger.WriteError(ex); _wrapper = SetupHelper.GetGenericErrorConnectingWrapper(); } } }
private void SendEmailReminder() { lock (_lockObj) { try { using (var client = new UserDataManagementClient()) { _wrapper = client.SendEmailReminder(AppDataSingleton.Instance.EmailAddress, "password"); } } catch (System.Net.WebException ex) { AppDataSingleton.Instance.SetupLogger.WriteError(ex); _wrapper = SetupHelper.GetGenericErrorConnectingWrapper(); return; } } }
private void CheckUserDetails() { string userGUID = null; lock (_lockObj) { try { string url = SetupHelper.GetResponsiveServer(ServerType.MasterGetConfig, "masterConfig", "UserManagementServices.svc"); if (string.IsNullOrEmpty(url)) { AppDataSingleton.Instance.SetupLogger.WriteTimestampedMessage("Checking user details - Couldn't find a responsive url."); _wrapper = SetupHelper.GetGenericErrorConnectingWrapper(); return; } using (var client = new UserDataManagementClient()) { client.Url = url; _wrapper = client.GetUserExistsByUserCredentials(txtEmailAddressExisting.Text.Trim(), txtPasswordExisting.Text.Trim(), "password", out userGUID); } } catch (System.Net.WebException ex) { AppDataSingleton.Instance.SetupLogger.WriteError(ex); _wrapper = SetupHelper.GetGenericErrorConnectingWrapper(); return; } if (_wrapper.ErrorStatus == Setup.UserManagementServicesLive.ErrorStatus1.Success) { AppDataSingleton.Instance.User.UserGUID = userGUID; } } }
private void UpdateUserSubscriptions() { _bThreadStarted = true; lock (_lockObj) { try { using (var client = new UserDataManagementClient()) { _wrapper = client.EditSubscriptions(_userGUID, _pcGUID, AppDataSingleton.Instance.ChannelSubscriptionsToUpload, "password"); } } catch (System.Net.WebException ex) { AppDataSingleton.Instance.SetupLogger.WriteError(ex); _wrapper = SetupHelper.GetGenericErrorConnectingWrapper(); } } }
public SimpleErrorWrapper SetCurrentVersionInfo(string userGUID, string machineGUID, string version, string systemPassPhrase) { SimpleErrorWrapper simpleErrorWrapper = new SimpleErrorWrapper(); if (systemPassPhrase != _systemPassPhrase) { simpleErrorWrapper.ErrorCode = "ERR:001"; simpleErrorWrapper.Message = "Authentication failure"; simpleErrorWrapper.ErrorSeverity = ErrorSeverity.Retriable; simpleErrorWrapper.ErrorStatus = ErrorStatus.Failure; return(simpleErrorWrapper); } var clientDataLogger = new ClientDataLogger(); try { clientDataLogger.LogLatestSoftwareVersionInfo(_softwareVersionInfoLogger, machineGUID, version); } catch (Exception ex) { _applicationLog.Error("Software version info could not be registered: " + ex); simpleErrorWrapper.ErrorStatus = ErrorStatus.Failure; simpleErrorWrapper.ErrorSeverity = ErrorSeverity.Retriable; simpleErrorWrapper.ErrorCode = "ERR:005"; simpleErrorWrapper.Message = "Software version info could not be registered."; return(simpleErrorWrapper); } simpleErrorWrapper.ErrorStatus = ErrorStatus.Success; return(simpleErrorWrapper); }
private static bool SendDetails() { SimpleErrorWrapper wrapper = null; try { using (var client = new UserDataManagementClient()) { wrapper = client.SyncWithServerNoPersonalDetails(AppDataSingleton.Instance.User.UserGUID, AppDataSingleton.Instance.User.MachineGUID, AppDataSingleton.Instance.ChannelSubscriptionsToUpload, AppDataSingleton.Instance.User.SoftwareMajorVersionNumber, true, AppDataSingleton.Instance.User.SoftwareMinorVersionNumber, true, Environment.MachineName, null, "password"); } } catch (System.Net.WebException ex) { AppDataSingleton.Instance.SetupLogger.WriteError(ex); return(false); } if (wrapper.ErrorStatus != ErrorStatus1.Success) { AppDataSingleton.Instance.SetupLogger.WriteTimestampedMessage("Send Details failed: message: " + wrapper.Message); return(false); } AppDataSingleton.Instance.SetupLogger.WriteTimestampedMessage("Send Details: success"); return(true); }
internal static void Uninstall() { string userGUID = null; string machineGUID = null; string dataSettingsPath = null; string binaryPath = null; if (!SetupHelper.GetValuesFromRegistry(ref userGUID, ref machineGUID, ref dataSettingsPath, ref binaryPath)) { return; } SimpleErrorWrapper wrapper = SetupHelper.SendUninstallInfo(userGUID, machineGUID); if (wrapper.ErrorStatus != Setup.UserManagementServicesLive.ErrorStatus1.Success) { return; } ScreenSaver.SetScreenSaverActive(0); SetupHelper.KillApplications(); UninstallMSI(); SetupHelper.RemoveAllFiles(binaryPath + "bin", SetupHelper.GetSystemDirectory(), dataSettingsPath); }