public HttpResponseMessage UserPhoneNumbers()
        {
            HttpResponseMessage hrm = Request.CreateResponse(HttpStatusCode.NoContent);

            dynamic data = new ExpandoObject();

            using (GetEmployerConnString gecs = new GetEmployerConnString(Request.EmployerID())) {
                using (GetEmployeeByCchIdForCallCenter gebcfcc = new GetEmployeeByCchIdForCallCenter()) {
                    gebcfcc.CchId = Request.CCHID();
                    gebcfcc.GetData(gecs.ConnString);
                    data.MobilePhone    = gebcfcc.MobilePhone;
                    data.AlternatePhone = gebcfcc.AlternatePhone;

                    hrm = Request.CreateResponse(HttpStatusCode.OK, (object)data);
                }
            }
            return(hrm);
        }
        public HttpResponseMessage PasswordReset1(UserAuthenticationRequest request)
        {
            var     e    = new CCHEncrypt();
            dynamic data = new ExpandoObject();

            using (GetEmployerConnString gecs = new GetEmployerConnString(Request.EmployerID())) {
                using (GetUserContentPreference gucp = new GetUserContentPreference()) {
                    gucp.CCHID = Request.CCHID();
                    gucp.GetData(gecs.ConnString);

                    data.ContactPhoneNumber = gucp.ContactPhoneNumber;
                }

                using (GetEmployeeByCchIdForCallCenter gebcfcc = new GetEmployeeByCchIdForCallCenter()) {
                    gebcfcc.CchId = Request.CCHID();
                    gebcfcc.GetData(gecs.ConnString);

                    if (request.UserName == gebcfcc.Email &&
                        request.LastFourSsn == gebcfcc.MemberSsn)
                    {
                        data.Success = true;

                        e.UserKey   = Request.EncryptionKey();
                        e.SecretKey = Properties.Settings.Default.SecretKey;
                        e.Add("EmployerID", Request.EmployerID().ToString());
                        e.Add("UserID", Request.UserID());
                        e.Add("UserName", request.UserName);
                        e.Add("CCHID", Request.CCHID().ToString());

                        string authHash = e.ToString();
                        //data.AuthHash = authHash;
                    }
                    else
                    {
                        data.Fail         = true;
                        data.ErrorMessage = "Email or SSN does Not Match";
                    }
                }
            }
            HttpResponseMessage hrm = Request.CreateResponse(HttpStatusCode.OK, (object)data);

            return(hrm);
        }
        public HttpResponseMessage PasswordReset0(UserAuthenticationRequest request)
        {
            var     e    = new CCHEncrypt();
            dynamic data = new ExpandoObject();

            using (GetUserProfileByEmail gupbe = new GetUserProfileByEmail()) {
                gupbe.Email = request.UserName;
                gupbe.GetFrontEndData();

                int employerId = Convert.ToInt32(gupbe.EmployerId);

                using (GetEmployerConnString gecs = new GetEmployerConnString(employerId)) {
                    using (GetKeyEmployeeInfo gkei = new GetKeyEmployeeInfo()) {
                        gkei.Email = request.UserName;
                        gkei.GetData(gecs.ConnString);

                        if (gkei.Tables.Count > 0 && gkei.Tables[0].Rows.Count > 0)
                        {
                            int cchId = gkei.Tables[0].Rows[0].GetData <int>("CCHID");

                            using (GetUserContentPreference gucp = new GetUserContentPreference()) {
                                gucp.CCHID = cchId;
                                gucp.GetData(gecs.ConnString);

                                data.ContactPhoneNumber = gucp.ContactPhoneNumber;
                            }

                            using (GetEmployeeByCchIdForCallCenter gebcfcc = new GetEmployeeByCchIdForCallCenter()) {
                                gebcfcc.CchId = cchId;
                                gebcfcc.GetData(gecs.ConnString);

                                if (request.UserName.ToLower() == gebcfcc.Email.ToLower() &&
                                    request.FullSsn.Trim() == gebcfcc.MemberFullSsn)
                                {
                                    var membershipUser = Membership.GetUser(request.UserName);
                                    if (membershipUser != null)
                                    {
                                        if (membershipUser.ProviderUserKey != null)
                                        {
                                            e.UserKey   = Request.EncryptionKey();
                                            e.SecretKey = Properties.Settings.Default.SecretKey;
                                            e.Add("UserName", request.UserName);
                                            e.Add("CCHID", gkei.CCHID.ToString());
                                            e.Add("EmployerID", employerId.ToString());

                                            string aspUserId = membershipUser.ProviderUserKey.ToString();
                                            e.Add("UserID", aspUserId);
                                            data.AuthHash = e.ToString();

                                            data.Question = membershipUser.PasswordQuestion;
                                            data.Success  = true;
                                        }
                                        else
                                        {
                                            data.Fail         = true;
                                            data.ErrorMessage = "Provider User Key does Not Exist";
                                        }
                                    }
                                    else
                                    {
                                        data.Fail         = true;
                                        data.ErrorMessage = "Member Account does Not Exist";
                                    }
                                }
                                else
                                {
                                    data.Fail         = true;
                                    data.ErrorMessage = "Email or SSN does Not Match";
                                }
                            }
                        }
                        else
                        {
                            data.Fail         = true;
                            data.ErrorMessage = "Key Employee Info is Missing";
                        }
                    }
                }
            }
            HttpResponseMessage hrm = Request.CreateResponse(HttpStatusCode.OK, (object)data);

            return(hrm);
        }