public IActionResult GetYTChannelsSB(long groupId) { var lstYoutubeChannel = new List <YoutubeChannel>(); try { var dbr = new DatabaseRepository(_logger, _appEnv); var lstGrpProfiles = GroupProfilesRepository.getGroupProfiles(groupId, _redisCache, dbr); foreach (var item in lstGrpProfiles.Where(t => t.profileType == SocialProfileType.YouTube)) { var YTChnl = GplusRepository.getYTChannel(item.profileId, _redisCache, dbr); if (YTChnl != null) { lstYoutubeChannel.Add(YTChnl); } } } catch (Exception e) { Console.WriteLine(e); } return(Ok(lstYoutubeChannel)); }
public string UpdateBoard(Domain.Socioboard.Models.MongoBoards boards) { try { DatabaseRepository dbr = new DatabaseRepository(); if (!string.IsNullOrEmpty(boards.twitterHashTag)) { TwitterRepository twtrepo = new TwitterRepository(); boards.twitterHashTag = twtrepo.AddTwitterHashTag(boards.twitterHashTag, boards.id.ToString()); } if (!string.IsNullOrEmpty(boards.instagramHashTag)) { InstagramRepository instRepo = new InstagramRepository(); boards.instagramHashTag = instRepo.AddInstagramHashTag(boards.instagramHashTag, boards.id.ToString()); } if (!string.IsNullOrEmpty(boards.gplusHashTag)) { GplusRepository gplusRepo = new GplusRepository(); boards.gplusHashTag = gplusRepo.AddGplusHashTag(boards.gplusHashTag, boards.id.ToString()); } dbr.Update <Domain.Socioboard.Models.MongoBoards>(boards); return("update"); } catch (Exception) { return("Issue in board updation"); } }
public IActionResult GetGplusProfilesOnly(long groupId) { var lstGplusAcc = new List <Googleplusaccounts>(); try { var dbr = new DatabaseRepository(_logger, _appEnv); var lstGrpProfiles = GroupProfilesRepository.GetAllGroupProfiles(groupId, _redisCache, dbr) .Where(t => t.profileType == SocialProfileType.GPlus); lstGplusAcc.AddRange( from item in lstGrpProfiles select GplusRepository.getGPlusAccount(item.profileId, _redisCache, dbr) into gPlusAcc let userdata = dbr.Single <User>(t => t.Id == gPlusAcc.UserId) where gPlusAcc != null && userdata.EmailId != gPlusAcc.EmailId select gPlusAcc); return(Ok(lstGplusAcc)); } catch (Exception) { return(Ok(lstGplusAcc)); } }
public IActionResult GetAllGAProfiles(long groupId) { var lstGoogleAnalyticsAccount = new List <GoogleAnalyticsAccount>(); try { var dbr = new DatabaseRepository(_logger, _appEnv); var lstGrpProfiles = GroupProfilesRepository.GetAllGroupProfiles(groupId, _redisCache, dbr); foreach (var item in lstGrpProfiles.Where(t => t.profileType == SocialProfileType.GoogleAnalytics)) { var gAAcc = GplusRepository.getGAAccount(item.profileId, _redisCache, dbr); if (gAAcc != null) { lstGoogleAnalyticsAccount.Add(gAAcc); } } } catch (Exception e) { Console.WriteLine(e); } return(Ok(lstGoogleAnalyticsAccount)); }
public IActionResult GetPrimaryGoogleAcc(long userId, long groupId) { var userGplusAcc = new Googleplusaccounts(); try { var dbr = new DatabaseRepository(_logger, _appEnv); var lstGrpProfiles = GroupProfilesRepository.GetAllGroupProfiles(groupId, _redisCache, dbr); lstGrpProfiles = lstGrpProfiles.Where(t => t.profileType == SocialProfileType.GPlus).ToList(); foreach (var item in lstGrpProfiles) { var gPlusAcc = GplusRepository.getGPlusAccount(item.profileId, _redisCache, dbr); var userdata = dbr.Single <User>(t => t.Id == gPlusAcc.UserId); if (gPlusAcc != null && userdata.EmailId == gPlusAcc.EmailId) { userGplusAcc = gPlusAcc; } } } catch (Exception e) { Console.WriteLine(e); } return(Ok(userGplusAcc)); }
public IActionResult AddYoutubeChannels(long groupId, long userId) { string data = Request.Form["profileaccesstoken"]; var dbr = new DatabaseRepository(_logger, _appEnv); string[] profiledata = null; profiledata = data.Split(','); var savedStatus = ""; foreach (var item in profiledata) { savedStatus = GplusRepository.AddYoutubeChannels(item, userId, groupId, _redisCache, _appSettings, dbr, _appEnv); } if (savedStatus == "Youtube already added by you") { return(BadRequest("Youtube channel is already added by you")); } if (savedStatus == "Youtube added by any other") { return(BadRequest("Youtube channel is already added by someone else")); } return(Ok("Added Successfully")); }
public IActionResult PostCommentsYoutube(string channelId, string videoId, string commentText) { var dbr = new DatabaseRepository(_logger, _appEnv); GplusRepository.PostCommentsYt(channelId, videoId, commentText, _appSettings, _logger, dbr); return(Ok("")); }
public async Task <IActionResult> getGplusfeeds(long boardId, int skip, int count) { try { DatabaseRepository dbr = new DatabaseRepository(_logger, _env); Domain.Socioboard.Models.MongoBoards board = BoardMeRepository.getBoard(boardId, _redisCache, _appSettings, _logger, dbr); MongoRepository mongorepo = new MongoRepository("MongoBoardGplusHashTag", _appSettings); MongoBoardGplusHashTag gplushashtag = await mongorepo.FindFirstOrDefault <MongoBoardGplusHashTag>(x => x.Boardid.Equals(board.boardId)).ConfigureAwait(false); List <MongoBoardGplusFeeds> GplusFeedsList = GplusRepository.AddBoardGplusTagFeeds(gplushashtag.Displayname, board.gplusHashTag, _appSettings, _logger); if (GplusFeedsList.Count == 0) { MongoRepository boardrepo = new MongoRepository("MongoBoardGplusFeeds", _appSettings); var builder = Builders <MongoBoardGplusFeeds> .Sort; var sort = builder.Descending(t => t.Publishedtime); IList <MongoBoardGplusFeeds> objTwitterPagelist = await boardrepo.FindWithRange <MongoBoardGplusFeeds>(t => t.Gplusboardaccprofileid.Equals(board.gplusHashTag) && t.Feedlink != null, sort, skip, count); List <MongoBoardGplusFeeds> lstBGFeeds = objTwitterPagelist.ToList(); foreach (var items_lstBGFeed in lstBGFeeds) { if (items_lstBGFeed.FromName.Any(c => char.IsSymbol(c)) || items_lstBGFeed.Title.Contains("¾")) { objTwitterPagelist.Remove(items_lstBGFeed); } } return(Ok(objTwitterPagelist)); } return(Ok(GplusFeedsList)); } catch (Exception ex) { Console.WriteLine(ex.StackTrace); return(Ok("Something Went Wrong")); } }
public IActionResult ReviewedComment(string commentId, string sbUserName, long sbUserId, bool status, string commentType) { var dbr = new DatabaseRepository(_logger, _appEnv); GplusRepository.ReviewedComment(commentId, sbUserName, sbUserId, status, commentType, _appSettings, _logger, dbr); return(Ok()); }
public IActionResult AddYoutubeFeed(string accesstoken, string channelid) { //connected to gplusrepository for add data in mongodb GplusRepository.InitialYtFeedsAdd(channelid, accesstoken, _appSettings, _logger); Thread.Sleep(26000); GplusRepository.InitialYtCommentsAdd(channelid, accesstoken, _appSettings, _logger); Thread.Sleep(26000); GplusRepository.InitialYtReplyCommentsAdd(channelid, accesstoken, _appSettings, _logger); return(Ok("")); }
public IActionResult AddGoogleAccountPhone(string refreshToken, string accessToken, long groupId, long userId) { var ret = string.Empty; var objRefresh = string.Empty; var dbr = new DatabaseRepository(_logger, _appEnv); var ObjoAuthTokenGPlus = new oAuthTokenGPlus(_appSettings.GoogleConsumerKey, _appSettings.GoogleConsumerSecret, _appSettings.GoogleRedirectUri); var objToken = new oAuthToken(_appSettings.GoogleConsumerKey, _appSettings.GoogleConsumerSecret, _appSettings.GoogleRedirectUri); var userinfo = new JObject(); try { var user = objToken.GetUserInfo("self", accessToken); //_logger.LogInformation(user); userinfo = JObject.Parse(JArray.Parse(user)[0].ToString()); var people = objToken.GetPeopleInfo("self", accessToken, Convert.ToString(userinfo["id"])); userinfo = JObject.Parse(JArray.Parse(people)[0].ToString()); } catch (Exception ex) { _logger.LogInformation(ex.Message); _logger.LogError(ex.StackTrace); ret = "Access Token Not Found"; return(Ok(ret)); } var gplusAcc = GplusRepository.getGPlusAccount(Convert.ToString(userinfo["id"]), _redisCache, dbr); if (gplusAcc != null && gplusAcc.IsActive) { if (gplusAcc.UserId == userId) { return(BadRequest("GPlus account already added by you.")); } return(BadRequest("GPlus account added by other user.")); } var ngrp = dbr.Find <Groups>(t => t.adminId == userId && t.id == groupId).FirstOrDefault(); if (ngrp == null) { return(Ok("group not exist")); } // Adding GPlus Profile var x = GplusRepository.AddGplusAccount(userinfo, dbr, userId, ngrp.id, accessToken, refreshToken, _redisCache, _appSettings, _logger); if (x == 1) { return(Ok("Gplus Account Added Successfully")); } return(BadRequest("Issues while adding account")); }
public IActionResult GetGplusFeeds(string profileId, long userId, int skip, int count) { if (skip + count < 100) { return(Ok(GplusRepository.getgoogleplusActivity(profileId, _redisCache, _appSettings).Skip(skip) .Take(count))); } var gplusFeedRepo = new MongoRepository("MongoGplusFeed", _appSettings); var builder = Builders <MongoGplusFeed> .Sort; var sort = builder.Descending(t => t.PublishedDate); var result = gplusFeedRepo.FindWithRange(t => t.GpUserId.Equals(profileId), sort, skip, count); var task = Task.Run(async() => { return(await result); }); var lstMongoGplusFeed = task.Result; return(Ok(lstMongoGplusFeed)); }
public IActionResult AddGaSites(long groupId, long userId) { string data = Request.Form["profileaccesstoken"]; var dbr = new DatabaseRepository(_logger, _appEnv); string[] profiledata = null; var lstAddedAccounts = 0; var lstNotAddedAccounts = 0; var listStatus = new ListDictionary(); var i = "0"; profiledata = data.Split(','); foreach (var item in profiledata) { i = GplusRepository.AddGaSites(item, userId, groupId, _redisCache, _appSettings, dbr, _appEnv); if (i == "added by other") { lstNotAddedAccounts++; } else { lstAddedAccounts++; } } listStatus.Add("added", lstAddedAccounts); listStatus.Add("notadded", lstNotAddedAccounts); if (lstAddedAccounts != 0 && lstNotAddedAccounts == 0) { return(Ok("Google Analytics Added Successfully")); } return(Ok(listStatus)); }
public IActionResult GoogleLoginPhone(string refreshToken, string accessToken, SBAccountType accType) { var ret = string.Empty; var objRefresh = string.Empty; var ObjoAuthTokenGPlus = new oAuthTokenGPlus(_appSettings.GoogleConsumerKey, _appSettings.GoogleConsumerSecret, _appSettings.GoogleRedirectUri); var objToken = new oAuthToken(_appSettings.GoogleConsumerKey, _appSettings.GoogleConsumerSecret, _appSettings.GoogleRedirectUri); var userinfo = new JObject(); try { var user = objToken.GetUserInfo("self", accessToken); _logger.LogInformation(user); userinfo = JObject.Parse(JArray.Parse(user)[0].ToString()); } catch (Exception ex) { _logger.LogInformation(ex.Message); _logger.LogError(ex.StackTrace); ret = "Access Token Not Found"; return(Ok(ret)); } var EmailId = string.Empty; try { EmailId = Convert.ToString(userinfo["email"]); } catch { } if (string.IsNullOrEmpty(EmailId)) { return(Ok("Google Not retuning Email")); } try { var inMemUser = _redisCache.Get <User>(EmailId); if (inMemUser != null) { return(Ok(inMemUser)); } } catch (Exception ex) { _logger.LogInformation(ex.Message); _logger.LogError(ex.StackTrace); } var dbr = new DatabaseRepository(_logger, _appEnv); var lstUser = dbr.Find <User>(t => t.EmailId.Equals(EmailId)); if (lstUser != null && lstUser.Count() > 0) { var d1 = DateTime.UtcNow; //User userTable = dbr.Single<User>(t => t.EmailId == EmailId); //userTable.LastLoginTime = d1; lstUser.First().LastLoginTime = d1; dbr.Update(lstUser.First()); _redisCache.Set(lstUser.First().EmailId, lstUser.First()); return(Ok(lstUser.First())); } { var gplusAcc = GplusRepository.getGPlusAccount(Convert.ToString(userinfo["id"]), _redisCache, dbr); if (gplusAcc != null && gplusAcc.IsActive) { return(BadRequest("GPlus account added by other user.")); } var user = new User(); if (accType == SBAccountType.Free) { user.AccountType = SBAccountType.Free; } else if (accType == SBAccountType.Deluxe) { user.AccountType = SBAccountType.Deluxe; } else if (accType == SBAccountType.Premium) { user.AccountType = SBAccountType.Premium; } else if (accType == SBAccountType.Topaz) { user.AccountType = SBAccountType.Topaz; } else if (accType == SBAccountType.Platinum) { user.AccountType = SBAccountType.Platinum; } else if (accType == SBAccountType.Gold) { user.AccountType = SBAccountType.Gold; } else if (accType == SBAccountType.Ruby) { user.AccountType = SBAccountType.Ruby; } else if (accType == SBAccountType.Standard) { user.AccountType = SBAccountType.Standard; } user.PaymentType = PaymentType.paypal; user.ActivationStatus = SBUserActivationStatus.Active; user.CreateDate = DateTime.UtcNow; user.EmailId = EmailId; user.ExpiryDate = DateTime.UtcNow.AddDays(30); user.UserName = "******"; user.EmailValidateToken = "Google"; user.UserType = "User"; user.LastLoginTime = DateTime.UtcNow; user.PaymentStatus = SBPaymentStatus.UnPaid; user.SocialLoginEnableGo = true; try { user.FirstName = Convert.ToString(userinfo["name"]); } catch { } user.RegistrationType = SBRegistrationType.Google; var SavedStatus = dbr.Add(user); var nuser = dbr.Single <User>(t => t.EmailId.Equals(user.EmailId)); if (SavedStatus == 1 && nuser != null) { var group = new Groups(); group.adminId = nuser.Id; group.createdDate = DateTime.UtcNow; group.groupName = SocioboardConsts.DefaultGroupName; SavedStatus = dbr.Add(group); if (SavedStatus == 1) { var ngrp = dbr.Find <Groups>(t => t.adminId == nuser.Id && t.groupName.Equals(SocioboardConsts.DefaultGroupName)) .FirstOrDefault(); GroupMembersRepository.CreateGroupMember(ngrp.id, nuser, _redisCache, dbr); // Adding GPlus Profile GplusRepository.AddGplusAccount(userinfo, dbr, nuser.Id, ngrp.id, accessToken, refreshToken, _redisCache, _appSettings, _logger); } } return(Ok(nuser)); } }
public IActionResult GetAllYtComments(string ChannelId) { return(Ok(GplusRepository.GetAllYoutubeComments(ChannelId, _redisCache, _appSettings))); }
public IActionResult GetYtVdoCommentsWithReply(string VideoId) { return(Ok(GplusRepository.GetYoutubeCommentsWithReply(VideoId, _redisCache, _appSettings))); }
public IActionResult GetGplusFilterFeeds(string profileId, long userId, int skip, int count, string postType) { return(Ok( GplusRepository.getgoogleplusActivity(profileId, _redisCache, _appSettings, skip, count, postType))); }
public IActionResult RecGoogleAccount(string code, long userId) { var ret = string.Empty; var objRefresh = string.Empty; var refreshToken = string.Empty; var access_token = string.Empty; var dbr = new DatabaseRepository(_logger, _appEnv); var ObjoAuthTokenGPlus = new oAuthTokenGPlus(_appSettings.GoogleConsumerKey, _appSettings.GoogleConsumerSecret, _appSettings.GoogleRedirectUri); var objToken = new oAuthToken(_appSettings.GoogleConsumerKey, _appSettings.GoogleConsumerSecret, _appSettings.GoogleRedirectUri); var userinfo = new JObject(); try { objRefresh = ObjoAuthTokenGPlus.GetRefreshToken(code); var objaccesstoken = JObject.Parse(objRefresh); _logger.LogInformation(objaccesstoken.ToString()); try { refreshToken = objaccesstoken["refresh_token"].ToString(); } catch { } access_token = objaccesstoken["access_token"].ToString(); var user = objToken.GetUserInfo("self", access_token); //_logger.LogInformation(user); userinfo = JObject.Parse(JArray.Parse(user)[0].ToString()); var people = objToken.GetPeopleInfo("self", access_token, Convert.ToString(userinfo["id"])); userinfo = JObject.Parse(JArray.Parse(people)[0].ToString()); } catch (Exception ex) { //access_token = objaccesstoken["access_token"].ToString(); //ObjoAuthTokenGPlus.RevokeToken(access_token); _logger.LogInformation(ex.Message); _logger.LogError(ex.StackTrace); ret = "Access Token Not Found"; return(Ok(ret)); } var gplusAcc = GplusRepository.getGPlusAccount(Convert.ToString(userinfo["id"]), _redisCache, dbr); if (gplusAcc != null && gplusAcc.IsActive) { if (gplusAcc.UserId == userId) { } } // Adding GPlus Profile var x = GplusRepository.ReconnectGplusAccount(userinfo, dbr, userId, access_token, refreshToken, _redisCache, _appSettings, _logger); if (x == 1) { return(Ok("Gplus Account Reconnect Successfully")); } return(BadRequest("Issues while adding account")); }
public IActionResult GoogleLogin(string code, SBAccountType accType) { var refreshToken = string.Empty; string accessToken; var objoAuthTokenGPlus = new oAuthTokenGPlus(_appSettings.GoogleConsumerKey, _appSettings.GoogleConsumerSecret, _appSettings.GoogleRedirectUri); var objToken = new oAuthToken(_appSettings.GoogleConsumerKey, _appSettings.GoogleConsumerSecret, _appSettings.GoogleRedirectUri); JObject userInfo; try { var objRefresh = objoAuthTokenGPlus.GetRefreshToken(code); var objAccessToken = JObject.Parse(objRefresh); _logger.LogInformation(objAccessToken.ToString()); try { refreshToken = objAccessToken["refresh_token"].ToString(); } catch (Exception ex) { _logger.LogError(ex.StackTrace); } accessToken = objAccessToken["access_token"].ToString(); var user = objToken.GetUserInfo("self", accessToken); _logger.LogInformation(user); userInfo = JObject.Parse(JArray.Parse(user)[0].ToString()); } catch (Exception ex) { _logger.LogError(ex.StackTrace); return(Ok("Access Token Not Found")); } var emailId = string.Empty; try { emailId = Convert.ToString(userInfo["email"]); } catch (Exception ex) { _logger.LogError(ex.StackTrace); } if (string.IsNullOrEmpty(emailId)) { return(Ok("Google not returning Email")); } try { var inMemUser = _redisCache.Get <User>(emailId); if (inMemUser != null) { return(Ok(inMemUser)); } } catch (Exception ex) { _logger.LogError(ex.StackTrace); } var dbr = new DatabaseRepository(_logger, _appEnv); var signedInUser = dbr.FindFirstMatch <User>(t => t.EmailId.Equals(emailId)); if (signedInUser != null) { if (!signedInUser.SocialLoginEnableGo) { return(Ok("Account isn't sign-up with google!")); } CustomTaskFactory.Instance.Start(() => { if (signedInUser.RefrralCode == null) { signedInUser.RefrralCode = $"{SocioboardApiConstants.ApplicationName}" + signedInUser.Id; } signedInUser.LastLoginTime = DateTime.UtcNow; dbr.Update(signedInUser); _redisCache.Set(signedInUser.EmailId, signedInUser); }); return(Ok(signedInUser)); } var googleUser = new User { AccountType = accType, PaymentType = PaymentType.paypal, ActivationStatus = SBUserActivationStatus.Active, CreateDate = DateTime.UtcNow, EmailId = emailId, ExpiryDate = DateTime.UtcNow.AddDays(1), UserName = $"{SocioboardApiConstants.ApplicationName}", EmailValidateToken = "Google", UserType = "User", LastLoginTime = DateTime.UtcNow, SocialLoginEnableGo = true, SocialLoginEnableFb = false, PaymentStatus = SBPaymentStatus.UnPaid, RegistrationType = SBRegistrationType.Google, TrailStatus = UserTrailStatus.active }; if (googleUser.AccountType == SBAccountType.Free) { googleUser.ExpiryDate = DateTime.UtcNow.AddDays(15); } try { googleUser.FirstName = Convert.ToString(userInfo["name"]); } catch (Exception ex) { _logger.LogError(ex.StackTrace); } var savedStatus = dbr.Add(googleUser); var googleUserAccount = dbr.FindFirstMatch <User>(t => t.EmailId.Equals(googleUser.EmailId)); CustomTaskFactory.Instance.Start(() => { if (savedStatus != 1 || googleUserAccount == null) { return; } _redisCache.Set(emailId, googleUserAccount); var group = new Groups(); group.adminId = googleUserAccount.Id; group.createdDate = DateTime.UtcNow; group.groupName = SocioboardConsts.DefaultGroupName; savedStatus = dbr.Add(group); if (savedStatus != 1) { return; } var groupDetails = dbr.Find <Groups>(t => t.adminId == googleUserAccount.Id && t.groupName.Equals(SocioboardConsts.DefaultGroupName)) .FirstOrDefault(); if (groupDetails == null) { return; } GroupMembersRepository.CreateGroupMember(groupDetails.id, googleUserAccount, _redisCache, dbr); GplusRepository.AddGplusAccount(userInfo, dbr, googleUserAccount.Id, groupDetails.id, accessToken, refreshToken, _redisCache, _appSettings, _logger); }); return(Ok(googleUserAccount)); }
public IActionResult GetYTVideos(string ChannelId, string sortType) { return(Ok(GplusRepository.GetYoutubeFeeds(ChannelId, sortType, _redisCache, _appSettings))); }