public List<BsonDocument> GetUsers(int limit, int skip) { DatingBookDataProvider dbDataProvider = new DatingBookDataProvider(); var users = dbDataProvider.Paging(limit, skip, "first_name", "last_name", "gender", "last_visit"); ActivityDataProvider activity = new ActivityDataProvider(); foreach (var user in users) { user["num_of_visits"] = activity.GetProfileViewersCount(user["_id"].AsObjectId); } return users; }
public dynamic GetUserInfo(ObjectId userId) { BsonDocument output = null; DatingBookDataProvider dbProvider = new DatingBookDataProvider(); FacebookDataProvider fbProvider = new FacebookDataProvider(); var datingBookUser = dbProvider.GetDatingBookUser(userId, "birthday", "fbid", "facebook_user_id", "fname", "lname", "last_visit", "is_deleted", "gender", "email", "picture", "spam_reporters", "set_popup"); if (datingBookUser != null) { var fbUser = fbProvider.GetFacebookBookUser(datingBookUser["facebook_user_id"].AsObjectId, "is_active", "link", "is_banned", "is_post_on_wall", "deauthorized_date", "date_created"); output = fbUser.Merge(datingBookUser); output["registration_date"] = output["date_created"]; output.Remove("date_created"); output["age"] = (int)((DateTime.UtcNow - output["birthday"].AsDateTime).TotalDays / 365); output.Remove("birthday"); ActivityDataProvider activity = new ActivityDataProvider(); output["visit_count"] = activity.GetVisitCountTotal(userId); output["num_of_visits"] = activity.GetUserTotalMessagesSent(userId); output["profile_viewers"] = activity.GetProfileViewersCount(userId); output["profile_viewes"] = activity.GetCountOfProfileViews(userId); output["num_liked"] = activity.GetLikedCount(userId); output["num_likers"] = activity.GetLikersCount(userId); output["num_favorited"] = activity.GetFavoritedCount(userId); output["num_favorites"] = activity.GetFavoritesCount(userId); } return output; }