public void RecoverAccount(long accountId, IBackgroundJobService backgroundJobService) { new RecoverUserCommandHandler(new DataBaseContext()).Handle(new RecoverUserCommand { AccountId = accountId }); var account = new GetAccountByIdQueryHandler(new DataBaseContext()).Handle(new GetAccountByIdQuery { UserId = accountId }); new CookieService().RefreshCookies(new AccountViewModel { Id = accountId, Login = account.Login, Password = account.Password, Proxy = account.Proxy, ProxyLogin = account.ProxyLogin, ProxyPassword = account.ProxyPassword, UserAgentId = account.UserAgentId }, forSpy: false, backgroundJob: backgroundJobService); if (account.GroupSettingsId == null) { return; } var settings = _accountSettingsManager.GetSettings((long)account.GroupSettingsId); var accountViewModel = new AccountViewModel { Id = account.Id, AuthorizationDataIsFailed = account.AuthorizationDataIsFailed, Cookie = account.Cookie.CookieString, IsDeleted = account.IsDeleted, ProxyDataIsFailed = account.ProxyDataIsFailed, GroupSettingsId = account.GroupSettingsId, Name = account.Name, Proxy = account.Proxy, FacebookId = account.FacebookId, Login = account.Login, PageUrl = account.PageUrl, Password = account.Password, ProxyLogin = account.ProxyLogin, ProxyPassword = account.ProxyPassword, ConformationDataIsFailed = account.ConformationIsFailed, UserAgentId = account.UserAgentId }; var model = new AddOrUpdateAccountModel() { Account = accountViewModel, NewSettings = settings, OldSettings = null }; backgroundJobService.AddOrUpdateAccountJobs(model); }
public void RenameAccountJobs(IRenameAccountJobs model) { var currentModel = model as RenameAccountJobsModel; if (currentModel == null) { return; } var accountViewModel = currentModel.AccountViewModel; var oldLogin = currentModel.OldLogin; var removeAccountModel = new RemoveAccountJobsModel { AccountId = accountViewModel.Id, Login = oldLogin }; var addOrUpdateAccountModel = new AddOrUpdateAccountModel { Account = accountViewModel }; RemoveAccountJobs(removeAccountModel); AddOrUpdateAccountJobs(addOrUpdateAccountModel); }
private void RefreshJobs(long accountId, long groupId) { var account = _accountManager.GetAccountById(accountId); var settings = new GroupService(null).GetSettings(groupId); var model = new AddOrUpdateAccountModel { Account = account, OldSettings = null, NewSettings = settings }; UpdateSettings(model); }
public long AddOrUpdateAccount(AccountDraftViewModel model, IBackgroundJobService backgroundJobService) { var userAgentId = new GetRandomUserAgentQueryHandler(new DataBaseContext()).Handle(new GetRandomUserAgentQuery()); if (userAgentId == null) { return(0); } var accountId = new AddOrUpdateAccountCommandHandler(new DataBaseContext()).Handle(new AddOrUpdateAccountCommand { Id = model.Id, Name = model.Name, PageUrl = model.PageUrl, FacebookId = model.FacebookId, Password = model.Password, Login = model.Login, Proxy = model.Proxy, ProxyLogin = model.ProxyLogin, ProxyPassword = model.ProxyPassword, UserAgentId = userAgentId.Id }); new CookieService().RefreshCookies(new AccountViewModel { Id = accountId, Login = model.Login, Password = model.Password, Proxy = model.Proxy, ProxyLogin = model.ProxyLogin, ProxyPassword = model.ProxyPassword, UserAgentId = model.UserAgentId }, false, backgroundJobService); var account = new GetAccountByIdQueryHandler(new DataBaseContext()).Handle(new GetAccountByIdQuery { UserId = accountId }); if (model.Id == null || model.PageUrl == null || model.FacebookId == 0) { long accountFacebookId = 0; string homePageUrl = null; if (account.Cookie != null) { accountFacebookId = _proxyManager.GetAccountFacebookId(account.Cookie.CookieString); homePageUrl = _accountManager.CreateHomePageUrl(accountFacebookId); } new AddOrUpdateAccountCommandHandler(new DataBaseContext()).Handle(new AddOrUpdateAccountCommand { Id = account.Id, Name = model.Name, PageUrl = homePageUrl, FacebookId = accountFacebookId, Password = model.Password, Login = model.Login, Proxy = model.Proxy, ProxyLogin = model.ProxyLogin, ProxyPassword = model.ProxyPassword }); return(accountId); } var modelForJob = new AddOrUpdateAccountModel { Account = new AccountViewModel { Id = accountId, PageUrl = account.PageUrl, Login = account.Login, Password = account.Password, FacebookId = account.FacebookId, Proxy = account.Proxy, ProxyLogin = account.ProxyLogin, ProxyPassword = account.ProxyPassword, Cookie = account.Cookie.CookieString, Name = model.Name, GroupSettingsId = account.GroupSettingsId, AuthorizationDataIsFailed = account.AuthorizationDataIsFailed, ProxyDataIsFailed = account.ProxyDataIsFailed, ConformationDataIsFailed = account.ConformationIsFailed, IsDeleted = account.IsDeleted, UserAgentId = account.UserAgentId } }; _jobService.AddOrUpdateAccountJobs(modelForJob); return(accountId); }