/// <summary> /// Updates the client user. /// </summary> /// <param name="user">The user.</param> /// <returns>System.Int32.</returns> public static int UpdateClientUser(ClientUser user) { var result = profileManager.SaveProfile(user.GetProfile()); cache.Remove(user.Name); return(result); }
public static void InitDataFast(ClientUser user) { var config = new SysConfig(); var syncManager = new DataSyncManager(); syncManager.ClearUserTables(user.GetProfile().Postfix); InitData(user); System.Threading.Thread.Sleep(120000); var date = DateTime.UtcNow; if (SysConfig.UseStaticDate) { date = new CompetitorDataGenerator(config, user).GetMaxDate(); } BuildReports(config, user.GetProfile(), date); GenerateWordCloud(user.GetProfile()); }
/// <summary> /// Initializes the data. /// </summary> /// <param name="clientUser">The client user.</param> public static void InitData(ClientUser clientUser) { var distributedLock = new SqlDistributedLock("InitData_" + clientUser.Name, SysConfig.DefaultConnStr); using (distributedLock.Acquire()) { try { clientUser = ProfileHelper.GetClientUser(clientUser.Name); var syncManager = new DataSyncManager(); syncManager.LoadUserData( clientUser.GetProfile().Postfix, clientUser.UserFilter, clientUser.CompetitorFilter); } catch (Exception e) { Console.WriteLine(e.Message); } } }
public async Task <ActionResult> Register(RegisterViewModel model) { if (this.ModelState.IsValid) { var user = new ApplicationUser { UserName = model.UserName, Email = model.Email }; var result = await this.UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { await this.SignInManager.SignInAsync(user, false, false); var profile = new ClientUserProfile { Id = user.Id, UserName = user.UserName, Postfix = user.UserName, CreatedTime = DateTime.UtcNow }; var cuser = new ClientUser(profile); cuser.UserFilter = new CustomerFilters(); cuser.UserFilter.UserName = cuser.Name; var filter = new Filter { Name = "Keywords", Value = cuser.Name }; var filterList = new FilterList(); filterList.Filters.Add(filter); cuser.UserFilter.UserFilterListCollection.Add(filterList); /* * var customFilter = new CustomerFilters(); * customFilter.UserName = string.Empty; * var cfilter = new Filter { Name = "Keywords", Value = string.Empty }; * var cfilterList = new FilterList(); * cfilterList.Filters.Add(cfilter); * customFilter.UserFilterListCollection.Add(cfilterList); * * cuser.CompetitorFilter.Add(customFilter); */ var affected = ProfileHelper.UpdateClientUser(cuser); if (affected > 0) { var syncManager = new DataSyncManager(); syncManager.BuildUserTables(cuser.GetProfile().Postfix); } //var syncManager = new DataSyncManager(cuser); //syncManager.CreateTablesForClientUser(); // For more information on how to enable account confirmation and password reset please visit http://go.microsoft.com/fwlink/?LinkID=320771 // Send an email with this link // string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id); // var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme); // await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>"); return(this.RedirectToAction("Index", "Home")); } this.AddErrors(result); } // If we got this far, something failed, redisplay form return(this.View(model)); }