Пример #1
0
 public override void OnActionExecuting(ActionExecutingContext filterContext)
 {
     if (HttpContext.Current.Request.Cookies.Count > 0)
     {
         if (HttpContext.Current.Request.Cookies["Userid"] != null && HttpContext.Current.Request.Cookies["SessionID"] != null)
         {
             var         id     = HttpContext.Current.Request.Cookies["Userid"].Value;
             User_Master result = MS.Getuserbyid(Convert.ToInt32(id));
             if (result == null)
             {
                 FormsAuthentication.SignOut();
                 HttpContext.Current.Response.Redirect("/Login");
             }
             else if (result.SessionId == null)
             {
                 FormsAuthentication.SignOut();
                 HttpContext.Current.Response.Redirect("/Login");
             }
             else if (!result.SessionId.Equals(Convert.ToString(HttpContext.Current.Request.Cookies["SessionID"].Value)))
             {
                 FormsAuthentication.SignOut();
                 HttpContext.Current.Response.Redirect("/Login");
             }
         }
         else
         {
             FormsAuthentication.SignOut();
             HttpContext.Current.Response.Redirect("/Login");
         }
     }
     base.OnActionExecuting(filterContext);
 }
Пример #2
0
        public HttpResponseMessage signup(User_Master user)
        {
            if (!ModelState.IsValid)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
            }
            try
            {
                User_Master user_obj = entity.User_Master.Where(x => x.email_id == user.email_id).FirstOrDefault();
                if (user_obj == null)
                {
                    user.password = BCrypt.Net.BCrypt.HashPassword(user.password);
                    entity.User_Master.Add(user);
                    try
                    {
                        entity.SaveChanges();
                    }
                    catch
                    {
                        return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Not Found"));
                    }

                    return(Request.CreateResponse(HttpStatusCode.OK, user));
                }
                return(Request.CreateErrorResponse(HttpStatusCode.Conflict, "Email-Id already Exists"));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex));
            }
        }
        public dynamic checkToken(string Token)
        {
            LystenEntities _db      = new LystenEntities();
            var            chkToken = _db.AppAccessTokens.AsEnumerable().Where(top => top.AuthToken == Token).FirstOrDefault();

            if (chkToken == null)
            {
                return(false);
            }
            User_Master model = _db.User_Master.Where(x => x.Id == chkToken.UserId).FirstOrDefault();

            if (chkToken.ExpiresOn <= DateTime.Now)
            {
                //TimeSpan t = new TimeSpan(1, 0, 0, 0, 0);
                //chkToken.ExpiresOn = DateTime.Now.Add(t);
                //_db.SaveChanges();
                BaseApiController.updatetoken = true;
                TokenDetails objToken = api.Helpers.AsyncHelpers.RunSync <TokenDetails>(() => BaseApiController.generatToken(model.Email, model.Password, model.DeviceToken));
                if (String.IsNullOrEmpty(objToken.error))
                {
                    BaseApiController.Add_UpdateToken(model.Id, objToken);
                    BaseApiController.accessToken = objToken.access_token;
                }
                return(true);
            }
            BaseApiController.updatetoken = false;
            BaseApiController.accessToken = "";
            return(true);
        }
Пример #4
0
        /// <summary>
        /// Get test user object
        /// </summary>
        /// <returns>User master object</returns>
        private User_Master GetTestUser()
        {
            User_Master testUser = new User_Master();

            testUser.User_Id   = "abc";
            testUser.User_Name = "afd fs f sdfs aads";
            return(testUser);
        }
Пример #5
0
 public void updatesession(User_Master objuser)
 {
     using (LystenEntities db = new LystenEntities())
     {
         db.Entry(objuser).State = EntityState.Modified;
         db.SaveChanges();
     }
 }
        public ActionResult Edit(User_Master User)
        {
            if (ModelState.IsValid)
            {
                var data = new _Admin_Repo().Edit_User(User);

                if (data >= 1)
                {
                    return(RedirectToAction("Dashboard"));
                }
            }
            return(View());
        }
Пример #7
0
        /*
         * The Authorization class is created to apply authorization filter on action
         */
        public override void OnAuthorization(HttpActionContext actionContext)
        {
            base.OnAuthorization(actionContext);

            /*
             * if the authorization values won't be provided by performer, It will return
             * 'Authorization data is missing' with status code.
             */
            if (actionContext.Request.Headers.Authorization == null)
            {
                HttpResponseMessage httpResponse = new HttpResponseMessage(HttpStatusCode.BadRequest);
                httpResponse.Content      = new StringContent("Authorization data is missing");
                httpResponse.ReasonPhrase = "No Data for Authorization";
                actionContext.Response    = httpResponse;
            }
            else
            {
                /*
                 * if the authorization values are provided by performer,
                 * It will return try to match the data from User_master.
                 */
                String encodedData = actionContext.Request.Headers.Authorization.Parameter;
                //decording the authorization data
                String   decodedData = Encoding.UTF8.GetString(Convert.FromBase64String(encodedData));
                String[] udata       = decodedData.Split(':');
                String   uname       = udata[0];
                String   upass       = udata[1];

                DbExternalEntities dbb = new DbExternalEntities();
                User_Master        u1  = dbb.User_Master.Where(u => u.user_id + "" == uname && u.user_password.Equals(upass)).FirstOrDefault();
                if (u1 != null)
                {
                    /*
                     * if the performer is authorization, then the action will be performed.
                     */
                    Thread.CurrentPrincipal = new GenericPrincipal(new GenericIdentity(u1.user_id.ToString()), null);
                }
                else
                {
                    /*
                     * Else It will return 'You are not an Authorize user to perform this operation!'
                     * with status code.
                     */
                    HttpResponseMessage httpResponse = new HttpResponseMessage(HttpStatusCode.Unauthorized);
                    httpResponse.Content      = new StringContent("You are not an Authorize user to perform this operation!");
                    httpResponse.ReasonPhrase = "Not Authorized!";
                    actionContext.Response    = httpResponse;
                }
            }
        }
        private void SaveData(LifeLineDbContext context)
        {
            User_Master obj = new User_Master();

            obj.userName     = txtUserName.Text.Trim();
            obj.loginId      = txtLoginId.Text.Trim();
            obj.loginKey     = txtPasswd.Text.Trim();
            obj.mobileNo     = txtMobileNo.Text.Trim();
            obj.emailAddress = txtEmailId.Text.Trim();
            obj.entryBy      = SessionHelper.UserId;
            obj.entryDate    = DateTime.Now;
            obj.updatedOn    = null;

            context.AddToUser_Master(obj);
        }
Пример #9
0
        /// <summary>
        /// Ad update user
        /// </summary>
        /// <returns></returns>
        public string AddOrUpdateUsererList(UserManagerContext userData)
        {
            string result = string.Empty;


            User_Master userListMaster = new User_Master();

            userListMaster.First_Name  = userData.FirstName;
            userListMaster.Last_Name   = userData.LastName;
            userListMaster.Employee_ID = userData.EmployeeID;
            userListMaster.User_ID     = Convert.ToInt32(userData.UserID);

            result = dataAccess.AddOrUpdateUser(userListMaster);
            return(result);
        }
Пример #10
0
 public dynamic GetforgotPassword(string email)
 {
     using (LystenEntities db = new LystenEntities())
     {
         User_Master obj = new User_Master();
         obj = db.User_Master.Where(x => x.Email == email).FirstOrDefault();
         if (obj != null)
         {
             objresultCommon.Code = Convert.ToInt32(HttpStatusCode.OK);
             objresultCommon.Msg  = ap.ForgotMessage;
         }
         else
         {
             objresultCommon.Code = Convert.ToInt32(HttpStatusCode.Created);
             objresultCommon.Msg  = ap.ForgotMessageNotExist;
         }
         return(objresultCommon);
     }
 }
Пример #11
0
        public ActionResult Login(User_Master model)
        {
            var data = new Home_Repo().Login(model.User_Email, model.User_Password, model.Role_ID);

            if (data == null)
            {
                ModelState.AddModelError(string.Empty, "Login Failed");

                if (model.Role_ID == 4)
                {
                    return(RedirectToAction("Login"));
                }
                else
                {
                    return(RedirectToAction("Login", new { Who = "Employee" }));
                }
            }

            Session["User_ID"]   = data.User_ID;
            Session["Role_ID"]   = data.Role_ID;
            Session["User_Name"] = data.User_Name;
            //Session["User_Email"] = data.User_Email;



            if (data.Role_ID == 1)
            {
                return(RedirectToAction("Dashboard", "Admin"));
            }

            else if (data.Role_ID == 2)
            {
                return(RedirectToAction("Dashboard", "Manager"));
            }

            else if (data.Role_ID == 3)
            {
                return(RedirectToAction("Dashboard", "Staff"));
            }

            return(RedirectToAction("Dashboard", "customer"));
        }
Пример #12
0
        protected void btnSubmit_Click(object sender, EventArgs e)
        {
            try
            {
                User_Master _objUser   = new User_Master();
                Signup_BL   _objSingup = new Signup_BL();

                _objUser.FirstName = txtFirstName.Text.Trim();
                _objUser.LastName  = txtLastName.Text.Trim();
                _objUser.Email     = txtEmail.Text.Trim();
                _objUser.Phone     = txtPhone.Text.Trim();
                _objUser.Username  = txtUsername.Text.Trim();
                _objUser.Password  = txtPassword.Text.Trim();

                bool IsSave = _objSingup.CreateUser(_objUser);
            }
            catch (Exception ex)
            {
                Response.Write(ex.Message);
            }
        }
        public override void OnAuthorization(HttpActionContext actionContext)
        {
            base.OnAuthorization(actionContext); //getting actioncontext for future use

            //checking if user has provided authorization or not
            if (actionContext.Request.Headers.Authorization == null)
            {
                HttpResponseMessage httpResponse = new HttpResponseMessage(HttpStatusCode.Forbidden);
                httpResponse.Content   = new StringContent("Authorization Data Not Found!!!");
                actionContext.Response = httpResponse;
            }
            else
            {
                String   encodedData = actionContext.Request.Headers.Authorization.Parameter;
                String   decodeData  = Encoding.UTF8.GetString(Convert.FromBase64String(encodedData)); //decoding the data sent by the auth
                String[] userdata    = decodeData.Split(':');                                          //spliting using ':' which will separate username and password

                //saving for ease of use
                int    id       = Convert.ToInt32(userdata[0]);
                String password = userdata[1];

                AppointmentDBEntities context = new AppointmentDBEntities(); //creating entity object just to access data from the table

                //using lamda and saving the return value in um where both id and pass matches in admin table
                User_Master um = context.User_Master.Where(b => b.User_id == id && b.User_Password_.Equals(password)).FirstOrDefault();


                //if null it means no data found meaning id pass is wrong
                if (um != null)
                {
                    Thread.CurrentPrincipal = new GenericPrincipal(new GenericIdentity((um.User_id).ToString()), null); // saving identity for future use and calling thread (if needed)
                }
                else
                {
                    HttpResponseMessage httpResponse = new HttpResponseMessage(HttpStatusCode.Unauthorized);
                    httpResponse.Content   = new StringContent("Authorization Data is Invalid");
                    actionContext.Response = httpResponse;
                }
            }
        }
Пример #14
0
 public void SendToUser(User_Master obj)
 {
     using (LystenEntities db = new LystenEntities())
     {
         try
         {
             var    template     = db.EmailTemplates.Where(x => x.SystemName == "system.user.Password").FirstOrDefault();
             var    emailaccount = db.Settings.Where(x => x.Name == "SendGrid.Key").FirstOrDefault();
             var    Emailfrom    = db.Settings.Where(x => x.Name == "SendGrid.FromMail").FirstOrDefault();
             string body         = template.Body;
             body = body.Replace("{Fullname}", obj.Displayname);
             body = body.Replace("{Username}", obj.Email);
             body = body.Replace("{Password}", obj.Password);
             var res = SendGridServices.Execute(emailaccount.Value, body, Emailfrom.Value, obj.Email, template.Subject);
         }
         catch (Exception ex)
         {
             CommonServices.ErrorLogging(ex);
             throw ex;
         }
     }
 }
Пример #15
0
 public dynamic Changepassword(UserModel objcurpwd)
 {
     using (LystenEntities db = new LystenEntities())
     {
         var         paswrdenc = SecutiryServices.EncodePasswordToBase64(objcurpwd.Currentpassword);
         User_Master result    = (from um in db.User_Master
                                  where um.Id == objcurpwd.Id &&
                                  um.Password == paswrdenc
                                  select um
                                  ).FirstOrDefault();
         if (result != null)
         {
             result.Password        = SecutiryServices.EncodePasswordToBase64(objcurpwd.Newpassword);
             db.Entry(result).State = EntityState.Modified;
             db.SaveChanges();
             return("Success");
         }
         else
         {
             return("Invalid Password.");
         }
     }
 }
Пример #16
0
        public bool CreateUser(User_Master _objUser)
        {
            bool          IsSave = false;
            SqlConnection sqlCon = new SqlConnection(Db_Connect.conStr);
            SqlCommand    sqlCom = new SqlCommand();

            try
            {
                if (sqlCon.State == ConnectionState.Open)
                {
                    sqlCon.Close();
                }
                sqlCon.Open();
                sqlCom             = new SqlCommand("INSERT INTO [dbo].[User_Master] ([FirstName],[LastName],[Username],[Password],[Email],[Phone]) VALUES (@FirstName,@LastName,@Username,@Password,@Email,@Phone)", sqlCon);
                sqlCom.CommandType = CommandType.Text;
                sqlCom.Parameters.AddWithValue("@FirstName", _objUser.FirstName);
                sqlCom.Parameters.AddWithValue("@LastName", _objUser.LastName);
                sqlCom.Parameters.AddWithValue("@Email", _objUser.Email);
                sqlCom.Parameters.AddWithValue("@Phone", _objUser.Phone);
                sqlCom.Parameters.AddWithValue("@Username", _objUser.Username);
                sqlCom.Parameters.AddWithValue("@Password", _objUser.Password);

                sqlCom.ExecuteNonQuery();
                IsSave = true;
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                sqlCom.Dispose();
                sqlCon.Close();
            }
            return(IsSave);
        }
Пример #17
0
        public override void OnAuthorization(HttpActionContext actionContext) // method Call
        {
            base.OnAuthorization(actionContext);
            if (actionContext.Request.Headers.Authorization == null)
            {
                HttpResponseMessage httpResponse = new HttpResponseMessage(HttpStatusCode.Forbidden);
                httpResponse.Content = new StringContent("Authorization Data is missing!!!");
                // If UnAuthorized Persone try to Login in
                httpResponse.ReasonPhrase = "No Authorization!!";
                actionContext.Response    = httpResponse;
            }
            else
            {
                String   encodedData = actionContext.Request.Headers.Authorization.Parameter;          // Encode Data
                String   decodeData  = Encoding.UTF8.GetString(Convert.FromBase64String(encodedData)); // Decode Data
                String[] user        = decodeData.Split(':');                                          // Splite In Arry

                int    uid  = Convert.ToInt32(user[0]);
                String upss = user[1];

                dbAppointmentEntities db = new dbAppointmentEntities();// db object
                User_Master           u1 = db.User_Master.Where(u => u.User_id == uid && u.User_Password.Equals(upss)).FirstOrDefault();
                // Check User Id and pass in database
                if (u1 != null)
                {
                    Thread.CurrentPrincipal = new GenericPrincipal(new GenericIdentity(u1.User_name), null);
                }
                else
                {
                    HttpResponseMessage httpResponse = new HttpResponseMessage(HttpStatusCode.Unauthorized);
                    httpResponse.Content      = new StringContent("Authorization Data is invalid !!!");
                    httpResponse.ReasonPhrase = "No Authorization!!";
                    actionContext.Response    = httpResponse;
                }
            }
        }
Пример #18
0
        public async Task <ResultClass> PostLoginAuthenticationAsync(UserMasterModel objtblusermaster)
        {
            try
            {
                using (LystenEntities db = new LystenEntities())
                {
                    string baseURL = HttpContext.Current.Request.Url.Authority;
                    baseURL += (WebConfigurationManager.AppSettings["userimagepath"]).Replace("~", "");

                    //db.Configuration.LazyLoadingEnabled = false;
                    var pwd = SecutiryServices.EncodePasswordToBase64(objtblusermaster.Password);

                    User_Master result = (from um23 in db.User_Master
                                          where um23.Email.ToUpper() == objtblusermaster.UserNameorEmail.ToUpper() && um23.Password == pwd
                                          select um23
                                          ).FirstOrDefault();
                    if (result == null)
                    {
                        result = (from um23 in db.User_Master
                                  where um23.UserName.ToUpper() == objtblusermaster.UserNameorEmail.ToUpper() && um23.Password == pwd
                                  select um23
                                  ).FirstOrDefault();
                    }
                    var model = new
                    {
                    };
                    if (result != null)
                    {
                        var id = result.Id;
                        if (result.IsActive == true)
                        {
                            objresult.Code = (int)HttpStatusCode.OK;
                            objresult.Msg  = ap.Success;
                            //var user = result;
                            objresult.Data = AutoMapper.Mapper.Map <UserViewLoginModel>(result);
                            User_Master obj = result;//db.User_Master.Where(x => x.Id == id).FirstOrDefault();
                            obj.SessionId       = null;
                            obj.IsLogin         = true;
                            obj.DeviceType      = objtblusermaster.DeviceType;
                            obj.DeviceToken     = objtblusermaster.DeviceToken;
                            obj.TimeZone        = objtblusermaster.TimeZone;
                            db.Entry(obj).State = EntityState.Modified;
                            db.SaveChanges();
                            objresult.Data.Image = US.GetFavouriteImage(baseURL, result.Id);
                        }
                        else
                        {
                            objresult.Code = (int)HttpStatusCode.Accepted;
                            objresult.Msg  = ap.LoginUserIsNotActive;
                            //var user = result;
                            objresult.Data = AutoMapper.Mapper.Map <UserViewLoginModel>(result);
                        }
                    }
                    else if (result == null)
                    {
                        objresult.Code        = (int)HttpStatusCode.NotFound;
                        objresult.Msg         = ap.LoginUserInvalid;
                        objresult.Data        = model;
                        objresult.AccessToken = "";
                    }
                    else
                    {
                        objresult.Code = (int)HttpStatusCode.Accepted;
                        objresult.Msg  = ap.LoginUserIsNotActive;
                        result.Image   = US.GetFavouriteImage(baseURL, result.Id);

                        objresult.Data = AutoMapper.Mapper.Map <UserViewLoginModel>(result);
                    }

                    if (objresult.Code == (int)HttpStatusCode.OK)
                    {
                        TokenDetails objToken = await generatToken((result.Email), (result.Password), (result.DeviceToken));

                        //User_Master obj1 = db.User_Master.Where(x => x.Id == result.Id).FirstOrDefault();
                        //obj1.DeviceType = objtblusermaster.DeviceType;
                        ////obj.DeviceToken = objtblusermaster.DeviceToken;
                        //db.Entry(obj1).State = EntityState.Modified;
                        //db.SaveChanges();
                        (objresult.AccessToken) = objToken.access_token;
                        var obj = objresult.Data as UserViewLoginModel;
                        Add_UpdateToken(obj.Id, objToken, 1, objtblusermaster.DeviceType);
                    }
                    //if (updatetoken)
                    //{
                    //    (objresult.Data as UserViewModel).AccessToken = accessToken;
                    //}
                    //else
                    //{
                    //    (objresult.Data as UserViewModel).AccessToken = "";
                    //}
                    //db.Configuration.LazyLoadingEnabled = true;
                    return(objresult);
                }
            }
            catch (Exception ex)
            {
                objresult.Code        = (int)HttpStatusCode.NotAcceptable;
                objresult.Msg         = Convert.ToString(ex.Message);
                objresult.Data        = "";
                objresult.AccessToken = "";
                return(objresult);
            }
        }
Пример #19
0
        public async Task <ResultClass> newRegisterUser(User_Master um)
        {
            using (LystenEntities db = new LystenEntities())
            {
                if (string.IsNullOrEmpty(um.Password))
                {
                    um.Password = um.UserName + "@2018";
                }
                var pwd    = SecutiryServices.EncodePasswordToBase64(um.Password);
                var result = (from um23 in db.User_Master
                              where um23.Email.ToUpper() == um.Email.ToUpper() && um23.Password == pwd
                              select um23
                              ).FirstOrDefault();

                um.Password = pwd;
                var model = new
                {
                };

                if (result != null)
                {
                    objresult.Code = (int)HttpStatusCode.Found;
                    objresult.Msg  = ap.UserEMailExist;
                    objresult.Data = model;
                }
                else
                {
                    if (db.User_Master.Any(x => x.UserName.ToLower().Trim() == um.UserName.ToLower().Trim()))
                    {
                        objresult.Code          = (int)HttpStatusCode.Found;
                        objresult.Msg           = ap.UserNameExist;
                        objresult.Data          = model;
                        (objresult.AccessToken) = "";
                        return(objresult);
                    }
                    um.Displayname  = um.FullName;
                    um.DeviceType   = um.DeviceType;
                    um.IsLogin      = true;
                    um.IsDisclaimer = false;
                    um.RoleId       = um.RoleId;

                    um.PostalCode  = um.PostalCode;
                    um.Skill       = um.Skill;
                    um.SSN         = um.SSN;
                    um.IsVerified  = false;
                    um.DateOfBirth = um.DateOfBirth;
                    um.TimeZone    = um.TimeZone;
                    um.Address     = um.Address;
                    um.CityId      = um.CityId;
                    um.StateId     = um.StateId;
                    um.CountryId   = um.CountryId;

                    db.User_Master.Add(um);
                    db.SaveChanges();
                    objresult.Code           = (int)HttpStatusCode.OK;
                    objresult.Msg            = ap.Success;
                    objresult.Data           = AutoMapper.Mapper.Map <UserViewModel>(um);
                    objresult.Data.Favourite = new List <ProfileFavourite>()
                    {
                    };
                }
                (objresult.AccessToken) = "";
                if (objresult.Code == (int)HttpStatusCode.OK)
                {
                    TokenDetails objToken = await generatToken(um.Email, um.Password, um.DeviceToken);

                    (objresult.AccessToken) = objToken.access_token;
                    var obj = AutoMapper.Mapper.Map <UserViewModel>(objresult.Data);
                    Add_UpdateToken(obj.Id, objToken, 1, um.DeviceType);
                }
                return(objresult);
            }
        }
Пример #20
0
 public dynamic SaveUser(UserModel objUM)
 {
     using (LystenEntities db = new LystenEntities())
     {
         if (objUM.Id > 0)
         {
             var user     = db.User_Master.Where(x => x.Id == objUM.Id).FirstOrDefault();
             var sendflag = false;
             if (user.Password != objUM.Password)
             {
                 sendflag = true;
             }
             //user.Email = objUM.Email;
             user.Password        = objUM.Password;
             user.Address         = objUM.Address;
             user.CountryId       = objUM.Country;
             user.StateId         = objUM.State;
             user.CityId          = objUM.City;
             user.Phone           = objUM.Phone;
             user.Mobile          = objUM.Mobile;
             user.Displayname     = objUM.Displayname;
             user.IsActive        = true;
             user.Modifydate      = System.DateTime.Now;
             db.Entry(user).State = EntityState.Modified;
             db.SaveChanges();
             if (sendflag == true)
             {
                 ES.SendToUser(user);
             }
             return(new { Id = user.Id, Status = "Update" });
         }
         else
         {
             if (db.User_Master.Any(x => x.Email == (objUM.Email).Trim()))
             {
                 objUM.Id = db.User_Master.Where(x => x.Email == (objUM.Email).Trim()).Select(x => x.Id).FirstOrDefault();
                 return(new { Id = objUM.Id, Status = "Exists" });
             }
             else
             {
                 User_Master user = new User_Master();
                 user.Email       = objUM.Email;
                 user.Password    = objUM.Password;
                 user.Address     = objUM.Address;
                 user.CountryId   = objUM.Country;
                 user.StateId     = objUM.State;
                 user.CityId      = objUM.City;
                 user.Phone       = objUM.Phone;
                 user.Mobile      = objUM.Mobile;
                 user.Displayname = objUM.Displayname;
                 user.IsActive    = true;
                 user.Createdate  = System.DateTime.Now;
                 user.Modifydate  = System.DateTime.Now;
                 user.Createdby   = 1;
                 db.User_Master.Add(user);
                 db.SaveChanges();
                 ES.SendToUser(user);
                 return(new { Id = user.Id, Status = "Insert" });
             }
         }
     }
 }
Пример #21
0
        public async Task <IHttpActionResult> Regeister()
        {
            ResultClass result = new ResultClass();

            try
            {
                User_Master Um = new User_Master();
                Um.Email    = HttpContext.Current.Request.Params["Email"];
                Um.UserName = HttpContext.Current.Request.Params["UserName"];
                try
                {
                    Um.Password = HttpContext.Current.Request.Params["Password"];
                    Um.Age      = Convert.ToInt16(HttpContext.Current.Request.Params["Age"]);
                }
                catch { Um.Password = Um.UserName + "@2018"; Um.Age = 18; }
                Um.Phone = HttpContext.Current.Request.Params["Phone"];

                Um.Gender   = Convert.ToInt16(HttpContext.Current.Request.Params["Gender"]);
                Um.FullName = (HttpContext.Current.Request.Params["FullName"]);

                Um.DeviceToken = (HttpContext.Current.Request.Params["DeviceToken"]);
                Um.DeviceType  = (HttpContext.Current.Request.Params["DeviceType"]);
                Um.RoleId      = Convert.ToInt32((HttpContext.Current.Request.Params["RoleId"]));
                Um.Skill       = (HttpContext.Current.Request.Params["Skill"]);
                Um.PostalCode  = (HttpContext.Current.Request.Params["PostalCode"]);
                Um.SSN         = (HttpContext.Current.Request.Params["SSN"]);
                Um.DateOfBirth = (HttpContext.Current.Request.Params["DateOfBirth"]);
                Um.Address     = (HttpContext.Current.Request.Params["Address"]);
                //Um.TimeZone = (HttpContext.Current.Request.Params["TimeZone"]);
                Um.CityId     = Convert.ToInt32((HttpContext.Current.Request.Params["City"]));
                Um.CountryId  = Convert.ToInt32((HttpContext.Current.Request.Params["Country"]));
                Um.StateId    = Convert.ToInt32((HttpContext.Current.Request.Params["State"]));
                Um.IsActive   = true;
                Um.Createdate = System.DateTime.Now;
                Um.Createdby  = 1; Um.Image = "";

                int iUploadedCnt = 0;

                // DEFINE THE PATH WHERE WE WANT TO SAVE THE FILES.
                string sPath = "";
                sPath = System.Web.Hosting.HostingEnvironment.MapPath(WebConfigurationManager.AppSettings["userimagepath"]);

                bool exists = System.IO.Directory.Exists(sPath);

                if (!exists)
                {
                    System.IO.Directory.CreateDirectory(sPath);
                }
                System.Web.HttpFileCollection hfc = System.Web.HttpContext.Current.Request.Files;
                result = await ApiCommon.newRegisterUser(Um);

                // CHECK THE FILE COUNT.
                for (int iCnt = 0; iCnt <= hfc.Count - 1; iCnt++)
                {
                    System.Web.HttpPostedFile hpf = hfc[iCnt];

                    if (hpf.ContentLength > 0)
                    {
                        string ImagePath = result.Data.Id + "_" + hpf.FileName;
                        // CHECK IF THE SELECTED FILE(S) ALREADY EXISTS IN FOLDER. (AVOID DUPLICATE)
                        if (!File.Exists(sPath + Path.GetFileName(ImagePath)))
                        {
                            // SAVE THE FILES IN THE FOLDER.
                            hpf.SaveAs(sPath + Path.GetFileName(ImagePath));
                            Um.Image     = ImagePath;
                            iUploadedCnt = iUploadedCnt + 1;
                        }
                        else
                        {
                            File.Delete(sPath + Path.GetFileName(ImagePath));
                            hpf.SaveAs(sPath + Path.GetFileName(ImagePath));
                            Um.Image     = ImagePath;
                            iUploadedCnt = iUploadedCnt + 1;
                        }
                        Um.Id = result.Data.Id;
                        var dadata = Apiuser.UpdateProfilePic(Um);
                        dadata.Result.AccessToken = result.AccessToken;
                        return(Ok(dadata.Result));
                    }
                }

                return(Ok(result));
            }
            catch (Exception ex)
            {
                return(Ok(ApiEx.FireException(result, ex)));
            }
        }