Example #1
0
 protected void lnkQuickSearch_Click(object sender, EventArgs e)
 {
     if (HttpContext.Current == null)
         HttpContext.Current = itsContext;
     ProcessMenuButtonClick((LinkButton)sender, "Quick Friends Search", "Friends Search Results", false);
     if (CurrentUserSession != null)
     {
         var search1 = new BasicFriendsSearch
         {
             Username = CurrentUserSession.Username,
             Active = true,
             Deleted = false,
             SortByColumn = OrderByColumnEnum.FacebookMutualFriends,
             FriendUsername = String.Empty
         };
         if (CurrentUserSession != null) search1.ExcludeUsername.Add(CurrentUserSession.Username);
         if (MatchmakerHelper.IsMatchToFriendAlredySelected) search1.ExcludeUsername.Add(MatchmakerHelper.MatchToUsername);
         DateTime time1 = DateTime.Now;
         var res1 = search1.GetResults();
         DateTime time2 = DateTime.Now;
         TimeSpan delta = time2/* DateTime.Now*/ - time1;
         string[] usernames = (res1 != null) ? res1.Usernames : null;
         //var search2 = new FacebookFriendsSearch();
         //var res2 = search2.GetResults();
         //string[] fbFriendsIds = (res2 !=null) ? res2.Usernames : null;
         var results = new FacebookAndUsersMergeResults
                         {
                             Usernames = usernames,
                             FacebookIds = null//fbFriendsIds
                         };
         SearchResults.Results = results;
     }
 }
Example #2
0
        public static void FetchUserCacheDataThread(object userSessionObj)
        {
            //var httpContext = HttpContext.Current;
            UserSession userSession = (UserSession)userSessionObj;

            lock (userSession.GetSession().SyncRoot)
            {
                //userSession.SessionState = httpContext.Session;
                DateTime[] t = new DateTime[10];
                t[0] = DateTime.Now;
                userSession.ProfileAnswers = userSession.FetchAnswers();
                t[1] = DateTime.Now;
                var search = new BasicFriendsSearch
                {
                    Username = userSession.Username,
                    Active = true,
                    Deleted = false,
                    HasPhoto = true,
                    Visible = true,
                    SortByColumn = OrderByColumnEnum.FacebookMutualFriends
                };
                var results = search.GetResults();
                userSession.UserFriends = results.Get();
                //userSession.FetchFriends();
                userSession.UserFriendsPrimaryPhotoIds =
                    userSession.UserFriends.Select(user =>
                        Photo.GetPrimaryOrDefaultId(user.Username)).ToArray();
                if (userSession.UserFriendsPrimaryPhotoIds.Count() > 0)
                {
                    FetchDbImageToCacheDirectoryBackgroundWorker.PhotosIdsList =
                        FetchDbImageToCacheDirectoryBackgroundWorker.PhotosIdsList
                            .Union(userSession.UserFriendsPrimaryPhotoIds.Take(100)).ToList();

                    userSession.UserFriendsPrelodImages =
                        userSession.UserFriendsPrimaryPhotoIds.Where(id => id > 0)
                            .Select(id => ImageHelper.CreateImageUrl(id, 117, 117, true, true, true))
                            .Take(2).ToArray();
                }

                t[2] = DateTime.Now;
                userSession.FavouriteUsers = userSession.FetchFavouriteUsers();
                t[3] = DateTime.Now;
                userSession.BlockedUsers = userSession.FetchBlockedUsers();
                t[4] = DateTime.Now;
                //userSession.FacebookFriends = userSession.FetchFacebookFriends();
                t[5] = DateTime.Now;

                if (userSession.GetSession() != null)
                {
                    foreach (var pageName in userSession.SessionPagesDic.Keys)
                    {
                        try
                        {
                            HttpContext.Current.Server.Execute(pageName, userSession.SessionPagesDic[pageName], false);
                        }
                        catch (Exception ex) { }
                    }
                }

                t[6] = DateTime.Now;
                UpdatePopupTips(userSession);
                t[7] = DateTime.Now;
            }
        }
Example #3
0
        protected void btnSearch_Click(object sender, EventArgs e)
        {
            if (HttpContext.Current == null)
                HttpContext.Current = itsContext;
            bool isUsernameSearch = !IsPostBack || txtUsername.Text.Trim().Length > 0;
            BasicFriendsSearch search = new BasicFriendsSearch
                                            {
                                                Username = CurrentUserSession.Username,
                                                FriendUsername = isUsernameSearch ? txtUsername.Text.Trim() : null
                                            };

            if (Config.Users.RequireProfileToShowInSearch)
            {
                search.HasAnswer = true;
            }
            else
            {
                search.hasAnswer_isSet = false;
            }
            if (!Config.Users.DisableGenderInformation)
            {
                search.Gender = (User.eGender)SearchGenderPicker1.LookingForGender;
                //if (Config.Users.InterestedInFieldEnabled && !Config.Users.DisableGenderInformation)
                //    search.InterestedIn = (User.eGender) SearchGenderPicker1.InterestedInGender;
            }
            if (!Config.Users.DisableAgeInformation)
            {
                try
                {
                    search.MinAge = AgeRangePicker1.AgeFrom;
                    search.MaxAge = AgeRangePicker1.AgeTo;
                }
                catch
                {
                }
            }
            if (Config.Users.LocationPanelVisible)
            {
                if (SearchLocationPicker1 != null)
                {
                    search.Country = (SearchLocationPicker1.Country.IsNullOrEmpty()) ? "" : SearchLocationPicker1.Country;
                    search.State = (SearchLocationPicker1.Region.IsNullOrEmpty()) ? "" : SearchLocationPicker1.Region;
                    search.City = (SearchLocationPicker1.City.IsNullOrEmpty()) ? "" : SearchLocationPicker1.City;
                }
            }

            if (cbPhotoReq.Checked)
                search.HasPhoto = true;

            if (CurrentUserSession != null) search.ExcludeUsername.Add(CurrentUserSession.Username);
            if (MatchmakerHelper.IsMatchToFriendAlredySelected) search.ExcludeUsername.Add(MatchmakerHelper.MatchToUsername);
            var results = new FacebookAndUsersMergeResults
                           {
                               Usernames = search.GetResults().Usernames,
                               FacebookIds = null
                           };
            SearchResults.Results = results;
            SetSearchresultViewableProperties();
        }
Example #4
0
        public static void FetchUserCacheDataThread(HttpContext context)
        {
            lock (context.Session.SyncRoot)
            {
                UserSession userSession = (UserSession)context.Session["UserSession"];

                userSession.SessionPagesDic = new Dictionary<string, StringWriter>
                    {
                        //{"~/Home.aspx", new StringWriter()},
                        //{"~/Home_mm.aspx", new StringWriter()},
                        {"Search3.aspx", new StringWriter()},
                        {"Friends3.aspx", new StringWriter()},
                        {"Mailbox.aspx", new StringWriter()},
                        {"ManageProfile.aspx", new StringWriter()},
                        {"InviteFriends.aspx", new StringWriter()}
                    };

                DateTime[] t = new DateTime[10];
                t[0] = DateTime.Now;
                userSession.ProfileAnswers = userSession.FetchAnswers();
                t[1] = DateTime.Now;
                var search = new BasicFriendsSearch
                                 {
                                     Username = userSession.Username,
                                     Active = true,
                                     Deleted = false,
                                     HasPhoto = true,
                                     Visible = true,
                                     SortByColumn = OrderByColumnEnum.FacebookMutualFriends
                                 };
                var results = search.GetResults();
                userSession.UserFriends = results.Get();
                context.Session["UserFriends"] = userSession.UserFriends;
                context.Session["UserFriendsUsernames"] = results.Usernames;
                //userSession.FetchFriends();
                userSession.UserFriendsPrimaryPhotoIds =
                    userSession.UserFriends.Select(user =>
                        Photo.GetPrimaryOrDefaultId(user.Username)).ToArray();
                if (userSession.UserFriendsPrimaryPhotoIds.Count() > 0)
                {
                    FetchDbImageToCacheDirectoryBackgroundWorker.PhotosIdsList =
                        FetchDbImageToCacheDirectoryBackgroundWorker.PhotosIdsList
                            .Union(userSession.UserFriendsPrimaryPhotoIds.Take(400)).ToList();

                    userSession.UserFriendsPrelodImages =
                        userSession.UserFriendsPrimaryPhotoIds.Where(id => id > 0)
                            .Select(id => ImageHelper.CreateImageUrl(id, 117, 117, false, true, true))
                            .Where(s => !s.Contains(".jpg")).Take(500).Union(
                        userSession.UserFriendsPrimaryPhotoIds.Where(id => id > 0)
                            .Select(id => ImageHelper.CreateImageUrl(id, 32, 32, false, true, true))
                            .Where(s => !s.Contains(".jpg")).Take(500)).ToArray();
                }

                t[2] = DateTime.Now;
                userSession.FavouriteUsers = userSession.FetchFavouriteUsers();
                context.Session["FavouriteUsers"] = userSession.FavouriteUsers;
                t[3] = DateTime.Now;
                userSession.BlockedUsers = userSession.FetchBlockedUsers();
                context.Session["BlockedUsers"] = userSession.BlockedUsers;
                t[4] = DateTime.Now;
                //userSession.FacebookFriends = userSession.FetchFacebookFriends();
                var search2 = new BasicSearch
                {
                    ViewerUsername = userSession.Username,
                    Gender = userSession.InterestedIn,
                    InterestedIn = userSession.Gender,
                    MaxAge = Math.Min(userSession.IncomingMessagesRestrictions.AgeTo, Config.Users.MaxAge),
                    MinAge = Math.Max(userSession.IncomingMessagesRestrictions.AgeFrom, Config.Users.MinAge),
                    SortColumn = "MutualFriendsCount"
                };
                search2.SortColumn = "LastOnline";
                search2.ExcludeUsername.Add(userSession.Username);
                context.Session["BasicSearchResultsUsernames"] = search2.GetResults().Usernames;
                t[5] = DateTime.Now;

                if (context.Session != null)
                {
                    foreach (var pageName in userSession.SessionPagesDic.Keys)
                    {
                        try
                        {
                            context.Server.Execute("~/" + pageName, false);
                            //context.Server.Execute("~/" + pageName, userSession.SessionPagesDic[pageName], false);
                            //context.Session[pageName] = userSession.SessionPagesDic[pageName];
                        }
                        catch (Exception ex) { }
                    }
                    foreach (var url in userSession.UserFriendsPrelodImages)
                    {
                        try
                        {
                            context.Server.Execute(url.Replace(Config.ServerSettings.DomainURL, "~"), true);
                            //context.Session[pageName] = userSession.SessionPagesDic[pageName];
                        }
                        catch (Exception ex) { }
                    }

                }

                t[6] = DateTime.Now;
                UpdatePopupTips(userSession);
                t[7] = DateTime.Now;
            }
        }