public static int commentCompare(Counting sp1, Counting sp2) { if (sp1.comment == sp2.comment) return 0; if (sp1.comment > sp2.comment) return -1; return 1; }
public static int postCompare(Counting sp1, Counting sp2) { if (sp1.post == sp2.post) return 0; if (sp1.post > sp2.post) return -1; return 1; }
public static int rateCompare(Counting sp1, Counting sp2) { if (sp1.rate == sp2.rate) return 0; if (sp1.rate > sp2.rate) return -1; return 1; }
public static int likedCompare(Counting sp1, Counting sp2) { if (sp1.liked == sp2.liked) return 0; if (sp1.liked > sp2.liked) return -1; return 1; }
public static int createdTimeCompare(Counting sp1, Counting sp2) { if (String.Compare(sp1.createdTime, "") == 0 || String.Compare(sp2.createdTime, "") == 0) return 0; DateTime date1 = DateTime.ParseExact(sp1.createdTime, "yyyy-MM-dd HH:mm:ss,fff", System.Globalization.CultureInfo.InvariantCulture); DateTime date2 = DateTime.ParseExact(sp2.createdTime, "yyyy-MM-dd HH:mm:ss,fff", System.Globalization.CultureInfo.InvariantCulture); return DateTime.Compare(date2, date1); }
private List<Counting> getUserPostList(dynamic result, ref List<Counting> countingArr) { if (countingArr == null) countingArr = new List<Counting>(); // dynamic result1 = fbClient.Get("fql", new { q = "SELECT uid FROM user WHERE uid=me()" }); // while (me.data != null) // { foreach (var element in result.data) { if (isGetByDate(element.created_time) == true) { bool isExit = false; for (int i = 0; i < countingArr.Count && isExit == false; i++) { //UserPost userPost in members if (String.Compare(countingArr[i].id, element.from.id) == 0) { countingArr[i].post = countingArr[i].post + 1; isExit = true; // break; } } if (isExit == false) { Counting tmp = new Counting(element.from.id, 0, 0, 1, ""); countingArr.Add(tmp); } } } // me = fbClient.Get(me.paging.next); //} return countingArr; }
private List<Counting> getUserLikedList(dynamic result, ref List<Counting> countingArr) { if (countingArr == null) countingArr = new List<Counting>(); // dynamic result1 = fbClient.Get("fql", new { q = "SELECT uid FROM user WHERE uid=me()" }); // while (me.data != null) // { foreach (var dataNode in result.data) { if (isGetByDate(dataNode.created_time) == true) { //Post liked of user if (dataNode.likes != null) { bool isExit = false; int likeCount = 0; if (dataNode.likes.Count < 25) likeCount = dataNode.likes.Count; else { var fbClient = new Facebook.FacebookClient(); fbClient.AccessToken = result.access_token; dynamic resultTmp = dataNode.likes; bool isContinute = true; for (int i = 0; isContinute == true; i = i + 100) { string rq = "https://graph.facebook.com/" + dataNode.id + "/likes?limit=100&offset=" + i; resultTmp = fbClient.Get(rq); if (resultTmp.data != null) { likeCount += resultTmp.data.Count; if (resultTmp.data.Count < 100) isContinute = false; } else isContinute = false; } } //bool isExit = false; //int likeCount = dataNode.likes.data.Count; //var fbClient = new Facebook.FacebookClient(); //fbClient.AccessToken = result.access_token; //dynamic resultTmp = dataNode.likes; //while (resultTmp.paging.next != null) //{ // fbClient = new Facebook.FacebookClient(); // fbClient.AccessToken = result.access_token; // resultTmp = fbClient.Get(resultTmp.paging.next); // if (resultTmp.data != null) // likeCount += resultTmp.data.Count; //} for (int i = 0; i < countingArr.Count && isExit == false; i++) { //UserPost userPost in members if (String.Compare(countingArr[i].id, dataNode.from.id) == 0) { countingArr[i].liked = countingArr[i].liked + likeCount; isExit = true; // break; } } if (isExit == false) { Counting tmp = new Counting(dataNode.from.id, 0, likeCount, 0, "", dataNode.from.name); countingArr.Add(tmp); } } } //Comement liked of User if (dataNode.comments != null) { dynamic resultTmp = dataNode.comments; //do //{ if (dataNode.comments.data.Count < 25) { foreach (var commentNode in resultTmp.data) { if (isGetByDate(commentNode.created_time) == true) { if (commentNode.like_count != 0) { int like_count = (int)commentNode.like_count; bool isExit = false; for (int i = 0; i < countingArr.Count && isExit == false; i++) { //UserPost userPost in members if (String.Compare(countingArr[i].id, commentNode.from.id) == 0) { countingArr[i].liked = countingArr[i].liked + like_count; isExit = true; // break; } } if (isExit == false) { Counting tmp = new Counting(commentNode.from.id, 0, like_count, 0, "", dataNode.from.name); countingArr.Add(tmp); } } } } // if (resultTmp.paging.next != null) // resultTmp = fbClient.Get(resultTmp.paging.next); // else // resultTmp = null; //} while (resultTmp != null); } //if (dataNode.comments.data.Count >= 25) else { bool isContinute = true; for (int i = 0; isContinute == true; i = i + 100) { string rq = "https://graph.facebook.com/" + dataNode.id + "/comments?limit=100&offset=" + i; var fbClient = new Facebook.FacebookClient(); fbClient.AccessToken = result.access_token; resultTmp = fbClient.Get(rq); if (resultTmp.data != null) { if (resultTmp.data.Count < 100) isContinute = false; foreach (var commentNode in resultTmp.data) { if (isGetByDate(commentNode.created_time) == true) { if (commentNode.like_count != 0) { int like_count = (int)commentNode.like_count; bool isExit = false; for (int j = 0; j < countingArr.Count && isExit == false; j++) { //UserPost userPost in members if (String.Compare(countingArr[j].id, commentNode.from.id) == 0) { countingArr[j].liked = countingArr[j].liked + like_count; isExit = true; // break; } } if (isExit == false) { Counting tmp = new Counting(commentNode.from.id, 0, like_count, 0, "", dataNode.from.name); countingArr.Add(tmp); } } } } } else isContinute = false; } } } } // me = fbClient.Get(me.paging.next); //} return countingArr; }
private List<Counting> getPostCommentList(dynamic result, ref List<Counting> countingArr) { if (countingArr == null) countingArr = new List<Counting>(); // dynamic result1 = fbClient.Get("fql", new { q = "SELECT uid FROM user WHERE uid=me()" }); // while (me.data != null) // { foreach (var dataNode in result.data) { if (isGetByDate(dataNode.created_time) == true) { if (dataNode.comments != null) { //int likeCount = 0; //foreach() bool isExit = false; int commentCount = 0;// dataNode.comments.data.Count; int count = dataNode.comments.data.Count; if (count < 25) commentCount = dataNode.comments.data.Count; else { var fbClient = new Facebook.FacebookClient(); fbClient.AccessToken = accessToken; dynamic resultTmp;// = dataNode.comments; bool isContinute = true; for (int i = 0; isContinute == true; i = i + 50) { string rq = "https://graph.facebook.com/" + dataNode.id + "/comments?limit=50&offset=" + i; resultTmp = fbClient.Get(rq); if (resultTmp.data != null) { commentCount += resultTmp.data.Count; if (resultTmp.data.Count < 50) isContinute = false; } else isContinute = false; } } for (int i = 0; i < countingArr.Count && isExit == false; i++) { //UserPost userPost in members if (String.Compare(countingArr[i].id, dataNode.id) == 0) { countingArr[i].comment = countingArr[i].comment + commentCount; isExit = true; // break; } } if (isExit == false) { Counting tmp = new Counting(dataNode.id, commentCount, 0, 0, dataNode.created_time); countingArr.Add(tmp); } } } } // me = fbClient.Get(me.paging.next); //} //countingArr.Sort(Counting.commentCompare); return countingArr; }