コード例 #1
0
        public IHttpActionResult Login(LoginRequest model)
        {
            try
            {
                string result = _userService.LogIn(model.Email, model.Password);

                switch (result)
                {
                case "unverified":
                    UserBaseAddRequest newModel = new UserBaseAddRequest();
                    newModel.Email = model.Email;
                    string token = _userBaseService.GetRegTokenByEmail(newModel);
                    return(Ok(new ItemResponse <string> {
                        Item = token
                    }));

                default:
                    return(Ok(new ItemResponse <string> {
                        Item = result
                    }));
                }
            }
            catch (Exception ex)
            {
                _errorLogService.Post(new Models.Requests.Logs.ErrorLogAddRequest
                {
                    ErrorSourceTypeId = 1,
                    Message           = ex.Message,
                    StackTrace        = ex.StackTrace,
                    Title             = "Error in " + GetType().Name + " " + System.Reflection.MethodBase.GetCurrentMethod().Name
                });
                return(BadRequest(ex.Message)); //show us the exception msg
            }
        }
コード例 #2
0
        public IHttpActionResult ResendValidation(UserBaseAddRequest model)
        {
            try
            {
                string token = model.Token;
                string email = model.Email;

                //*************GMAIL INJECTION CODE TEST FOR SENDING ONE EMAIL TO A SINGLE EMAIL*************

                // Note: Service must include 'To', 'Subject', and 'Body'. 'Body' may include HTML
                _gmailService.SendSingleEmail(new GmailContent
                {
                    To = new EmailUserObj {
                        Email = email
                    },
                    Subject = "Thank You For Registering",
                    Body    = "Thank you for Registering with Prospect. Click Here to LogIn. http://localhost:3024/home/registerValidation/" + token
                });

                return(Ok(new SuccessResponse()));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
コード例 #3
0
        //POST CALL
        public string Registration(UserBaseAddRequest model)
        //public int Registration(UserBaseAddRequest model)
        {
            //int id = 0;
            string Token = "";

            DataProvider.ExecuteNonQuery("dbo.Users_UserBase_Insert",
                                         inputParamMapper : delegate(SqlParameterCollection paramCollection)
            {     // must be in the same order as our table
                paramCollection.AddWithValue("@email", model.Email);
                paramCollection.AddWithValue("@passwordHash", model.PasswordHash);
                paramCollection.AddWithValue("@salt", model.Salt);
                paramCollection.AddWithValue("@role", model.Role);
                paramCollection.AddWithValue("@postalCode", model.PostalCode);
                paramCollection.AddWithValue("@firstName", model.FirstName);
                paramCollection.AddWithValue("@middleName", model.MiddleName);
                paramCollection.AddWithValue("@lastName", model.LastName);
                paramCollection.AddWithValue("@dateOfBirth", model.DateOfBirth);
                paramCollection.AddWithValue("@gender", model.Gender);
                paramCollection.AddWithValue("@athleteTypeId", model.AthleteTypeId);
                SqlParameter paramId = new SqlParameter("@Token", SqlDbType.NVarChar, 128); // has to be sqldbtype not just int
                //SqlParameter paramId = new SqlParameter("@id", SqlDbType.Int); // has to be sqldbtype not just int
                paramId.Direction = ParameterDirection.Output;                              //changing our direction of our param to get correct info
                //paramId.Value = id;
                paramId.Value = Token;

                paramCollection.Add(paramId);
            },

                                         returnParameters : delegate(SqlParameterCollection paramCollection)
            {
                Token = paramCollection["@Token"].Value.ToString();
            });
            return(Token);
        }
コード例 #4
0
 public IHttpActionResult Post(UserBaseAddRequest model)
 {
     try
     {
         ItemResponse <int> response = new ItemResponse <int>
         {
             Item         = _loginService.Insert(model),
             IsSuccessful = true
         };
         return(Ok(response));
     }
     catch (Exception ex) { return(BadRequest(ex.Message)); }
 }
コード例 #5
0
        public int Insert(UserBaseAddRequest model)
        {
            int id = 0;

            Adapter.ExecuteQuery("dbo.UserBaseId_Insert", new[] {
                SqlDbParameter.Instance.BuildParameter("@Email", model.Email, System.Data.SqlDbType.NVarChar),
                SqlDbParameter.Instance.BuildParameter("@PasswordHash", model.PasswordHash, System.Data.SqlDbType.NVarChar),
                SqlDbParameter.Instance.BuildParameter("@Salt", model.Salt, SqlDbType.NVarChar),
                SqlDbParameter.Instance.BuildParameter("@IsAccountLocked", model.IsAccountLocked, System.Data.SqlDbType.Bit),
                SqlDbParameter.Instance.BuildParameter("@Id", id, System.Data.SqlDbType.Int, 0, ParameterDirection.Output)
            }, (parameters =>
            {
                id = parameters.GetParmValue <int>("@Id"); //for inserts
            }));
            return(id);
        }
コード例 #6
0
        public IHttpActionResult Registration(UserBaseAddRequest model)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }
                string token = "";
                string email = model.Email;

                token = _userService.Create(model);
                EmailBody eb = new EmailBody
                {
                    Token        = token,
                    TemplateType = EmailFileType.REGISTER
                };

                //*************GMAIL INJECTION CODE TEST FOR SENDING ONE EMAIL TO A SINGLE EMAIL*************

                // Note: Service must include 'To', 'Subject', and 'Body'. 'Body' may include HTML
                _gmailService.SendSingleEmail(new GmailContent
                {
                    To = new EmailUserObj {
                        Email = email
                    },
                    Subject = "Thank You For Registering",
                    //Body = "Thank you for Registering with Prospect. Click Here to LogIn. http://localhost:3024/home/registerValidation/" + token
                    Body = _emailTemplate.CreateEmailBody(eb)
                });

                return(Ok(new ItemResponse <string> {
                    Item = "success"
                }));
            }
            catch (Exception ex)
            {
                return(Ok(new ItemResponse <string> {
                    Item = ex.Message
                }));
            }
        }
コード例 #7
0
        public string GetRegTokenByEmail(UserBaseAddRequest model)
        {
            string Token = "";

            DataProvider.ExecuteNonQuery("dbo.Apps_AppToken_SelectRegistrationTokenByEmail",
                                         inputParamMapper : delegate(SqlParameterCollection paramCollection)
            {                                                                               // must be in the same order as our table
                paramCollection.AddWithValue("@email", model.Email);
                SqlParameter paramId = new SqlParameter("@Token", SqlDbType.NVarChar, 128); // has to be sqldbtype not just int
                //SqlParameter paramId = new SqlParameter("@id", SqlDbType.Int); // has to be sqldbtype not just int
                paramId.Direction = ParameterDirection.Output;                              //changing our direction of our param to get correct info
                //paramId.Value = id;
                paramId.Value = Token;

                paramCollection.Add(paramId);
            },

                                         returnParameters : delegate(SqlParameterCollection paramCollection)
            {
                Token = paramCollection["@Token"].Value.ToString();
            });

            return(Token);
        }
コード例 #8
0
        public ActionResult <SuccessResponse> Put(UserBaseAddRequest model)
        {
            SuccessResponse response = new SuccessResponse();

            return(Ok200(response));
        }
コード例 #9
0
        public ActionResult <ItemResponse <int> > Post(UserBaseAddRequest model)
        {
            ItemResponse <int> response = new ItemResponse <int>();

            return(Created201(response));
        }