コード例 #1
0
        public List <ProfileDisplayClass> loadPassList(string APIKey, string username)
        {
            if (APIKey == this.APIKey)
            {
                User tempUser = new User();
                int  userID   = tempUser.getUserID(username);

                PassedList tempList = new PassedList();
                try
                {
                    string listOfPasses  = tempList.getPasses(userID).List;
                    int[]  passedUserIDs = Array.ConvertAll(listOfPasses.Split('|'), int.Parse);

                    List <ProfileDisplayClass> passedUserProfiles = new List <ProfileDisplayClass>();
                    foreach (int id in passedUserIDs)
                    {
                        ProfileDisplayClass profileDisplay = new ProfileDisplayClass();
                        passedUserProfiles.Add(profileDisplay.retreiveProfileDisplayFromDB(id));
                    }
                    return(passedUserProfiles);
                }
                catch (NullReferenceException)
                {
                    return(null);
                }
            }
            else
            {
                return(new List <ProfileDisplayClass>());
            }
        }
コード例 #2
0
        private void loadConversations()
        {
            DBConnect  objDB  = new DBConnect();
            SqlCommand objCmd = new SqlCommand();

            objCmd.CommandType = CommandType.StoredProcedure;
            objCmd.CommandText = "TP_GetUserMessages";
            objCmd.Parameters.AddWithValue("@username", Session["Username"].ToString());
            DataSet conversationsDS = objDB.GetDataSetUsingCmdObj(objCmd);
            string  usernameOne;
            string  usernameTwo;

            User tempUser = new User();
            int  userID;
            ProfileDisplayClass        profileDisplay;
            List <ProfileDisplayClass> userProfiles = new List <ProfileDisplayClass>();

            if (conversationsDS.Tables[0].Rows.Count > 0)
            {
                foreach (DataRow row in conversationsDS.Tables[0].Rows)
                {
                    usernameOne = row["UserOneUsername"].ToString();
                    usernameTwo = row["UserTwoUsername"].ToString();
                    if (usernameOne.Equals(Session["Username"].ToString()))
                    {
                        userID         = tempUser.getUserID(usernameTwo);
                        profileDisplay = new ProfileDisplayClass();
                        userProfiles.Add(profileDisplay.retreiveProfileDisplayFromDB(userID));
                    }
                    else if (usernameTwo.Equals(Session["Username"].ToString()))
                    {
                        userID         = tempUser.getUserID(usernameOne);
                        profileDisplay = new ProfileDisplayClass();
                        userProfiles.Add(profileDisplay.retreiveProfileDisplayFromDB(userID));
                    }
                }

                Table tblConversations = generateConversationsTable(userProfiles);
                conversationsDiv.Controls.Add(tblConversations);
            }
        }
コード例 #3
0
        private void loadReceivedRequests()
        {
            string      url      = "https://localhost:44369/api/DatingService/Profiles/LoadReceivedDateRequests/" + GlobalData.APIKey + "/" + Session["Username"].ToString();
            WebRequest  request  = WebRequest.Create(url);
            WebResponse response = request.GetResponse();

            Stream       theDataStream = response.GetResponseStream();
            StreamReader reader        = new StreamReader(theDataStream);
            string       data          = reader.ReadToEnd();

            reader.Close();
            response.Close();

            JavaScriptSerializer js = new JavaScriptSerializer();
            List <DateRequest>   receivedDateRequests = js.Deserialize <List <DateRequest> >(data);

            if (receivedDateRequests.Count == 0)
            {
                Label lblNoReceivedRequests = new Label();
                lblNoReceivedRequests.Text = "You have not received any date requests yet.";
                received.Controls.Add(lblNoReceivedRequests);
            }
            else
            {
                List <ProfileDisplayClass> receivedRequestProfiles = new List <ProfileDisplayClass>();
                foreach (DateRequest dateRequest in receivedDateRequests)
                {
                    int userIDFrom = dateRequest.UserIDFrom;

                    ProfileDisplayClass profileDisplay = new ProfileDisplayClass();
                    receivedRequestProfiles.Add(profileDisplay.retreiveProfileDisplayFromDB(userIDFrom));
                }
                Table tblReceivedDateRequests = generateReceivedRequestsTable(receivedDateRequests, receivedRequestProfiles);
                received.Controls.Add(tblReceivedDateRequests);
            }
        }
コード例 #4
0
        private void loadResults(string city, string state, string gender, string commitment, string haveKids, string wantKids, string occupation)
        {
            string url = "https://localhost:44369/api/DatingService/Search/LoadSearchResults/Member/" + GlobalData.APIKey + "/" + city + "/" + state + "/" + gender + "/" + commitment + "/" + haveKids + "/" + wantKids + "/" + occupation;

            WebRequest  request  = WebRequest.Create(url);
            WebResponse response = request.GetResponse();

            Stream       theDataStream = response.GetResponseStream();
            StreamReader reader        = new StreamReader(theDataStream);
            string       data          = reader.ReadToEnd();

            reader.Close();
            response.Close();

            JavaScriptSerializer js = new JavaScriptSerializer();

            MemberSearchResults[]      profileResults     = js.Deserialize <MemberSearchResults[]>(data);
            List <ProfileDisplayClass> profileResultsList = new List <ProfileDisplayClass>();

            foreach (MemberSearchResults result in profileResults)
            {
                User userResult   = new User();
                int  resultUserID = userResult.getUserID(result.Username);


                ProfileDisplayClass profileDisplay = new ProfileDisplayClass();
                profileResultsList.Add(profileDisplay.retreiveProfileDisplayFromDB(resultUserID));
            }

            ArrayList filterPassedProfileResults = new ArrayList();

            User currentUser   = new User();
            int  currentUserID = currentUser.getUserID(Session["Username"].ToString());

            PassedList currentUserPassedList = new PassedList();

            currentUserPassedList = currentUserPassedList.getPasses(currentUserID);

            foreach (ProfileDisplayClass result in profileResultsList)//adds search results that are not currently in the users passed list
            {
                User userResult   = new User();
                int  resultUserID = userResult.getUserID(result.Username);

                if ((currentUserPassedList == null && resultUserID != currentUserID))
                {
                    filterPassedProfileResults.Add(result);
                }
                else if ((currentUserPassedList != null && !currentUserPassedList.List.Contains(resultUserID.ToString())) && (resultUserID != currentUserID))
                {
                    filterPassedProfileResults.Add(result);
                }
            }

            ArrayList   filterUserBlockedProfileResults = new ArrayList();
            BlockedList currentUserBlockedList          = new BlockedList();

            currentUserBlockedList = currentUserBlockedList.getBlocked(currentUserID);

            foreach (ProfileDisplayClass result in filterPassedProfileResults)//adds search results that are not in the users blocked list
            {
                User userResult   = new User();
                int  resultUserID = userResult.getUserID(result.Username);

                if (currentUserBlockedList == null)
                {
                    filterUserBlockedProfileResults.Add(result);
                }
                else if (!currentUserBlockedList.List.Contains(resultUserID.ToString()))
                {
                    filterUserBlockedProfileResults.Add(result);
                }
            }

            ArrayList filterBlockedByProfileResults = new ArrayList();

            foreach (ProfileDisplayClass result in filterUserBlockedProfileResults.ToArray())//adds search results that do not have the current user blocked
            {
                User userResult   = new User();
                int  resultUserID = userResult.getUserID(result.Username);

                BlockedList resultBlockedList = new BlockedList();
                resultBlockedList = resultBlockedList.getBlocked(resultUserID);

                if (resultBlockedList == null)
                {
                    filterBlockedByProfileResults.Add(result);
                }
                else if (!resultBlockedList.List.Contains(resultUserID.ToString()))
                {
                    filterBlockedByProfileResults.Add(result);
                }
            }

            //return filterBlockedByProfileResults;
            List <ProfileDisplayClass> filteredProfiles = filterBlockedByProfileResults.Cast <ProfileDisplayClass>().ToList();

            //Table tblResults = generateResultsTable(filteredProfiles);
            if (filteredProfiles.Count != 0)
            {
                Table tblResults = generateResultsTable(filteredProfiles);
                resultsDiv.Controls.Add(tblResults);
                resultsContainer.Visible = true;
            }
            else
            {
                Label lblNoResults = new Label();
                lblNoResults.ID   = "lblNoResults";
                lblNoResults.Text = "There no profiles that meet your criteria, please search again.";
                resultsDiv.Controls.Add(lblNoResults);
                resultsContainer.Visible = true;
            }
        }