public async Task <IActionResult> PutFollows([FromRoute] int id, [FromBody] Follows follows) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != follows.UserID) { return(BadRequest()); } _context.Entry(follows).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!FollowsExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public IHttpActionResult Follow(FollowsDto dto) { var followerId = User.Identity.GetUserId(); var followingId = dto.FollowingId; Follows follows; if (_context.Follows.Any(f => f.FollowerId == followerId && f.FollowingId == followingId)) { follows = new Follows { FollowerId = followerId, FollowingId = followingId }; _context.Entry(follows).State = EntityState.Deleted; } else { follows = new Follows { FollowerId = followerId, FollowingId = followingId }; _context.Follows.Add(follows); } _context.SaveChanges(); return(Ok()); }
public async Task <Unit> Handle(Command request, CancellationToken cancellationToken) { var newFollow = new Follows { UserId = request.UserId, FollowerId = request.FollowUserId }; _context.Follows.Add(newFollow); var user = await _context.Users.FirstOrDefaultAsync(u => u.Id == request.UserId); user.CountFollowers++; var follower = await _context.Users.FirstOrDefaultAsync(u => u.Id == request.FollowUserId); follower.CountFollowing++; var success = await _context.SaveChangesAsync() > 0; if (success) { return(Unit.Value); } throw new Exception("Problem saving changes in follows table"); }
public ActionResult Create([Bind(Include = "EmployeeId")] string EmployeeId) { //受信できてるか if (EmployeeId == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } //フォロー先IDが有効か if (db.Users.Find(EmployeeId) == null) { return(HttpNotFound()); } //ログインユーザー取得 string UserId = User.Identity.GetUserId(); Follows follow = new Follows() { EmployeeId = UserId, FollowId = EmployeeId }; //Contextに新しいオブジェクト追加 db.Follows.Add(follow); //実際のDBに反映 db.SaveChanges(); // TempDataにフラッシュメッセージを入れておく。 TempData["flush"] = String.Format("{0}さんをフォローしました。", db.Users.Find(EmployeeId).EmployeeName); //indexにRedirect(ページ遷移) return(RedirectToAction("Index")); }
/// <summary> /// Creates an Instance of the TwitchAPI Class. /// </summary> /// <param name="logger">Instance Of Logger, otherwise no logging is used, </param> /// <param name="rateLimiter">Instance Of RateLimiter, otherwise no ratelimiter is used. </param> public TwitchAPI(ILogger <TwitchAPI> logger = null, IRateLimiter rateLimiter = null) { _logger = logger; _http = new HttpClient(new TwitchLibCustomHttpMessageHandler(new HttpClientHandler(), _logger)); _rateLimiter = rateLimiter ?? BypassLimiter.CreateLimiterBypassInstance(); Auth = new Auth(this); Blocks = new Blocks(this); Badges = new Badges(this); Bits = new Bits(this); ChannelFeeds = new ChannelFeeds(this); Channels = new Channels(this); Chat = new Chat(this); Clips = new Clips(this); Collections = new Collections(this); Communities = new Communities(this); Follows = new Follows(this); Games = new Games(this); Ingests = new Ingests(this); Root = new Root(this); Search = new Search(this); Streams = new Streams(this); Subscriptions = new Subscriptions(this); Teams = new Teams(this); ThirdParty = new ThirdParty(this); Undocumented = new Undocumented(this); Users = new Users(this); Videos = new Videos(this); Webhooks = new Webhooks(this); Debugging = new Debugging(); Settings = new ApiSettings(this); _jsonSerializer = new TwitchLibJsonSerializer(); }
private async void CheckUnreadFollowsMethod() { if (null == _notify) { return; } FollowsVisible = Visibility.Collapsed; var result = await _notify.CheckFollowsAsync(LoginUser.Current.Token, "notifications/unread_follows", true); ContentsLoading = false; if (result == null) { return; } if (result.Error != null) { ToasteIndicator.Instance.Show(String.Empty, result.Error.Message, null, 3); Debug.WriteLine(Regex.Unescape(result.Error.Message)); return; } Follows.Clear(); foreach (var item in result.Result.GetItems().Select(item => item as NotifyItem)) { Follows.Add(item); } FollowsVisible = Follows.Count > 0 ? Visibility.Visible : Visibility.Collapsed; }
public void RemoveFollow(int followerId, int followedId) { var follow = Follows.SingleOrDefault(f => f.FollowedId == followedId && f.FollowerId == followerId); if (follow != null) { Follows.Remove(follow); SaveChanges(); } }
private static void FollowUser(string[] splitMessage) { var follows = new Follows() { User = splitMessage[0], Follow = splitMessage[2], }; listFollows.Add(follows); }
/// <summary>FollowedUsersResponse constructor</summary> /// <param name="apiResponse">Returned api response in string form.</param> public FollowedUsersResponse(string apiResponse) { JObject json = JObject.Parse(apiResponse); foreach (JToken followedUser in json.SelectToken("follows")) { Follows.Add(new Follow(followedUser.ToString())); } TotalFollowCount = int.Parse(json.SelectToken("_total").ToString()); }
/* * Description:Adds a follower to Follows table * Params:Object Follow * Output:None */ public void AddFollowsRecord(FollowRequest followrequest) { Follows follows = new Follows(); Guid obj = Guid.NewGuid(); follows.id_follows = obj.ToString(); follows.id_followee = _context.athletes.Where(a => a.username == followrequest.username).Select(u => u.id).SingleOrDefault(); follows.id_athlete = _context.onlineusers.Where(ou => ou.token == followrequest.token).Select(a => a.id_athlete_fk).SingleOrDefault(); _context.follows.Add(follows); _context.SaveChanges(); }
public bool addNewFollow(Follows f) { try { _followsRepository.Add(f); return(true); } catch { return(false); } }
public async Task <IActionResult> PostFollows([FromBody] Follows follows) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } _context.Follows.Add(follows); await _context.SaveChangesAsync(); return(CreatedAtAction("GetFollows", new { id = follows.UserID }, follows)); }
public IActionResult Update(string id, Follows followsIn) { var follows = _followsService.Get(id); if (follows == null) { return(NotFound()); } _followsService.Update(id, followsIn); return(NoContent()); }
/// <summary> /// Método para fazer a verificação e inserção do terminal /// </summary> /// <param name="terminal"></param> /// <returns></returns> public bool AddTerminalToFollow(Terminal terminal) { string value = terminal.Value; if (!FollowList.ContainsKey(value)) { FollowList.Add(value, true); Follows.Add(terminal); return(true); } return(false); }
public static void DodajFollowDoBloga(string userName, string blogID) { Follows follow = new Follows(); follow.UsersUser_ID = zwrocIdUzytkownikaPoUsername(userName); follow.BlogsBlog_ID = Int32.Parse(blogID); bazadanych.FollowsSet.Add(follow); var blog = zwrocBlogPoId(Int32.Parse(blogID)); blog.followCount++; bazadanych.SaveChanges(); }
public async void CancelFollow(object par) { if (!SettingHelper.Account.Logined && !await Utils.ShowLoginDialog()) { Utils.ShowMessageToast("请先登录后再操作"); return; } var item = par as FollowSeasonModel; try { var api = followAPI.CancelFollowSeason(item.season_id.ToString()); var results = await api.Request(); if (results.status) { var data = await results.GetJson <ApiResultModel <JObject> >(); if (data.success) { Follows.Remove(item); if (Follows.Count == 0) { Nothing = true; } if (!string.IsNullOrEmpty(data.result["toast"]?.ToString())) { Utils.ShowMessageToast(data.result["toast"].ToString()); } else { Utils.ShowMessageToast("操作成功"); } } else { Utils.ShowMessageToast(data.message); } } else { Utils.ShowMessageToast(results.message); } } catch (Exception ex) { var handel = HandelError <object>(ex); Utils.ShowMessageToast(handel.message); } }
public object GetUserFeed(int userId, int p, int n) { var feed = Follows .Where(f => f.FollowerId == userId) .Select(f => Posts.Where(pt => pt.AuthorId == f.FollowedId).ToList()) .SelectMany(pt => pt) .OrderByDescending(pt => pt.Published) .ToList() .Select(pt => GetFormattedPost(pt)) .ToList(); return(n < feed.Count - p ? feed.GetRange(p, n) : (feed.Count - p > 0 ? feed.GetRange(p, feed.Count - p) : new List <object> ())); }
public void SeedFollows() { Follows follows1 = new Follows { UserId = "User1", FollowedUserIds = new List <string> { "User2" } }; Follows follows2 = new Follows { UserId = "User2", FollowedUserIds = new List <string> { "User4", "User5" } }; Follows follows3 = new Follows { UserId = "User3", FollowedUserIds = new List <string>() }; Follows follows4 = new Follows { UserId = "User4", FollowedUserIds = new List <string>() }; Follows follows5 = new Follows { UserId = "User5", FollowedUserIds = new List <string>() }; List <Follows> followses = new List <Follows> { follows1, follows2, follows3, follows4, follows5 }; _follows.InsertMany(followses); }
public Follow AddFollow(int followerId, int followedId) { var follow = Follows.SingleOrDefault(f => f.FollowerId == followerId && f.FollowedId == followedId); if (follow != null) { return(follow); } var follower = GetUserById(followerId); var followed = GetUserById(followedId); follow = new Follow(); follow.Follower = follower; follow.Followed = followed; Follows.Add(follow); SaveChanges(); return(follow); }
public void Delete() { ICollection <Post> temp = AuthorPosts; List <Post> temp2 = new List <Post>(); // Supprime les posts du membre foreach (Post post in AuthorPosts) { if (post.IsParent) { temp2.AddRange(post.Thread.Posts); post.Delete(); } } Model.Posts.RemoveRange(temp); Model.Posts.RemoveRange(temp2); AuthorPosts.Clear(); if (Role == Role.Professor) { List <Course> temp3 = new List <Course>(); foreach (Course course in Model.Courses) { // Supprime le professeur du cours if (course.Professor.Equals(this)) { temp3.Add(course); course.Delete(); } } Model.Courses.RemoveRange(temp3); } Follows.Clear(); Model.Subscriptions.RemoveRange(this.Subscription); foreach (Competition compet in Model.Competitions) { // Supprime le membre dans les competitions if (compet.Participants.Contains(this)) { compet.Participants.Remove(this); } } // Supprime le membre lui-même Model.Members.Remove(this); }
public IHttpActionResult Follow(FollowsDto dto) { var followerId = User.Identity.GetUserId(); if (_context.Follows.Any(a => a.ArtistId == dto.ArtistId && a.FollowerId == followerId)) { return(BadRequest("The attendance already exists")); } var follow = new Follows { ArtistId = dto.ArtistId, FollowerId = followerId }; _context.Follows.Add(follow); _context.SaveChanges(); return(Ok()); }
private async Task SetSeasonStatus(FollowSeasonModel item, int status) { if (!SettingHelper.Account.Logined && !await Utils.ShowLoginDialog()) { Utils.ShowMessageToast("请先登录后再操作"); return; } try { var api = followAPI.SetSeasonStatus(item.season_id.ToString(), status); var results = await api.Request(); if (results.status) { var data = await results.GetJson <ApiResultModel <JObject> >(); if (data.success) { Follows.Remove(item); if (Follows.Count == 0) { Nothing = true; } Utils.ShowMessageToast("操作成功"); } else { Utils.ShowMessageToast(data.message); } } else { Utils.ShowMessageToast(results.message); } } catch (Exception ex) { var handel = HandelError <object>(ex); Utils.ShowMessageToast(handel.message); } }
public ActionResult Delete([Bind(Include = "EmployeeId")] string EmployeeId) { if (EmployeeId == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } //ログインしているユーザーID取得 string UserId = User.Identity.GetUserId(); //フォロ-先一覧取得 List <Follows> follows = db.Follows .Where(r => r.EmployeeId == UserId) .ToList(); if (follows == null) { return(HttpNotFound()); } //解除したいフォロー先従業員の行取得 Follows follow = follows.Find(f => f.FollowId == EmployeeId); if (follow == null) { return(HttpNotFound()); } // 行削除 db.Follows.Remove(follow); db.SaveChanges(); //解除先従業員名取得 string deleteName = db.Users.Find(follow.FollowId).EmployeeName; TempData["flush"] = String.Format("{0}さんのフォローを解除しました。", deleteName); return(RedirectToAction("Index", "Follows")); }
public ActionResult AddFollow(long userId) { Follows f = new Follows(); f.followeType = 1; f.followTime = DateTime.Now; f.followUserId = userId; f.userId = loginUser.userId; if (_followsService.addNewFollow(f)) { User user = _userService.getUserById(userId); user.userFans = user.userFans + 1; //活跃度+1 user.userVitality = user.userVitality + 1; _userService.updateUser(user); JsonResult["boo_success"] = true; return(Json(JsonResult)); } else { JsonResult["boo_success"] = false; return(Json(JsonResult)); } }
public async Task <FollowLists> GetFollowLists() { var f = new FollowLists(); f.isGood = true; if (currentFollows == null) { var tempF = await HelixAPI.GetFollows(ConfigMgnr.I.User); if (!tempF.IsOk) { f.isGood = false; return(f); } currentFollows = tempF; } f.online = new List <Follow>(); f.offline = new List <Follow>(); foreach (var item in currentFollows.Follow) { if (currentStreams != null && currentStreams.Stream.Exists(x => x.Channel.Equals(item.Name))) { f.online.Add(item); } else { f.offline.Add(item); } } f.online = f.online.OrderBy(x => x.Name).ToList(); f.offline = f.offline.OrderBy(x => x.Name).ToList(); return(f); }
public bool IsFollowing(int artistId) { return(Follows.Select(x => x.Artist?.Id).Contains(artistId)); }
public int GetFollowerCount(int id) { return(Follows.Where(f => f.FollowedId == id).Count()); }
public ICollection <int> GetFolloweds(int id) { return(Follows.Where(f => f.FollowerId == id).Select(f => f.FollowedId).ToList()); }
// GET: /Posts/IncreaseFollower public string IncreaseFollower(int followerID) { // Check Follow exists string userEmail = HttpContext.Session.GetString(SessionKey); var users = _context.Users .Where(m => m.Email == userEmail) .ToList <Users>(); int userID = users[0].Id; var follows = _context.Follows .Where(m => m.FollowingUser == userID && m.FollowedUser == followerID) .ToList <Follows>(); // Increase Follower and Following if (follows.Count == 0) { // Update following int followingCount = (int)users[0].FollowingCount + 1; users[0].FollowingCount = followingCount; _context.Update(users[0]); //Update follower var followedUsers = _context.Users .Where(m => m.Id == followerID) .ToList <Users>(); followedUsers[0].FollowersCount = followedUsers[0].FollowersCount + 1; _context.Update(followedUsers[0]); //Insert record into Follows table var followRecord = new Follows(); followRecord.FollowingUser = userID; followRecord.FollowedUser = followerID; _context.Add(followRecord); // commit changes _context.SaveChanges(); return(JsonConvert.SerializeObject(new { result = "true", FollowingCount = followingCount })); } // Decrease Follower and Following else { // Update following int followingCount = (int)users[0].FollowingCount - 1; users[0].FollowingCount = followingCount; _context.Update(users[0]); //Update follower var followedUsers = _context.Users .Where(m => m.Id == followerID) .ToList <Users>(); followedUsers[0].FollowersCount = followedUsers[0].FollowersCount - 1; _context.Update(followedUsers[0]); //Insert record into Follows table _context.Remove(follows[0]); // commit changes _context.SaveChanges(); return(JsonConvert.SerializeObject(new { result = "false", FollowingCount = followingCount })); } }
public void CalcularAFD(ArrayList ER) { Stack <Nodo> Simbolos = new Stack <Nodo>(); List <Nodo> ExpresionRegular = new List <Nodo>(); ArrayList ST = new ArrayList(); int cont = 1; for (int x = 0; x < ER.Count; x++) { if (ER[x].ToString() != "·" && ER[x].ToString() != "(" && ER[x].ToString() != "|" && ER[x].ToString() != ")" && ER[x].ToString() != "*" && ER[x].ToString() != "+" && ER[x].ToString() != "?") { Follows Siguiente = new Follows(); Siguiente.Indice = cont; Siguiente.Simbolo = ER[x].ToString(); LSiguientes.Add(Siguiente); Nodo N = new Nodo(); N.simbolo = ER[x].ToString(); N.First.Add(cont); N.Last.Add(cont); N.Nulo = false; cont++; ExpresionRegular.Add(N); if ((!ST.Contains(ER[x])) && ER[x].ToString() != "#") { ST.Add(ER[x]); } } else { Nodo N = new Nodo(); N.simbolo = ER[x].ToString(); ExpresionRegular.Add(N); } } for (int x = 0; x < ER.Count; x++) { if (ER[x].ToString() != "·" && ER[x].ToString() != "(" && ER[x].ToString() != "|" && ER[x].ToString() != ")" && ER[x].ToString() != "*" && ER[x].ToString() != "+" && ER[x].ToString() != "?") { Simbolos.Push(ExpresionRegular[x]); } else { CalcularNuevoNodo(ER[x].ToString(), ref Simbolos); } } MostrarFollows(); //Tabla final Queue <string> ConjuntosNuevos = new Queue <string>(); List <string> ConjuntosExisten = new List <string>(); string[] conjuntos = new string[ST.Count + 1]; string Inicio = ""; Nodo N2 = Simbolos.Pop(); List <int> First = N2.First; for (int x = 0; x < First.Count; x++) { Inicio += First[x] + ","; } Inicio = Inicio.TrimEnd(','); conjuntos[0] = Inicio; ConjuntosNuevos.Enqueue(Inicio); ConjuntosExisten.Add(Inicio); ST.Sort(); while (ConjuntosNuevos.Count != 0) { if (ConjuntosNuevos.Count != 0) { conjuntos[0] = ConjuntosNuevos.Dequeue(); } for (int x = 0; x < ST.Count; x++) { for (int y = 0; y < LSiguientes.Count; y++) { if (ST[x].ToString() == LSiguientes[y].Simbolo && conjuntos[0].Contains(LSiguientes[y].Indice.ToString())) { for (int z = 0; z < LSiguientes[y].Follow.Count; z++) { if (conjuntos[x + 1] == null || conjuntos[x + 1] == "") { conjuntos[x + 1] += LSiguientes[y].Follow[z].ToString(); } else if (!conjuntos[x + 1].Contains(LSiguientes[y].Follow[z].ToString())) { conjuntos[x + 1] += "," + LSiguientes[y].Follow[z].ToString(); } } conjuntos[x + 1] = conjuntos[x + 1].TrimEnd(','); if (conjuntos[0] != conjuntos[x + 1] && !ConjuntosExisten.Contains(conjuntos[x + 1])) { ConjuntosNuevos.Enqueue(conjuntos[x + 1]); ConjuntosExisten.Add(conjuntos[x + 1]); } } } } Tabla.Add(conjuntos); conjuntos = new string[ST.Count + 1]; } MostrarTabla(ST, ConjuntosExisten); }