예제 #1
0
        public HttpResponseMessage AddUser(UserModel userModel)
        {
            try
            {
                byte[]   bytes      = Convert.FromBase64String(userModel.userImage);
                string[] extensions = userModel.userPicture.Split('.');
                string   extension  = extensions[extensions.Length - 1];
                string   fileName   = Guid.NewGuid().ToString();
                string   filePath   = HttpContext.Current.Server.MapPath("~/assets/images/users/" + fileName + "." + extension);
                using (FileStream binaryFileStream = new FileStream(filePath, FileMode.Create, FileAccess.ReadWrite))
                {
                    binaryFileStream.Write(bytes, 0, bytes.Length);
                    userModel.userPicture = fileName + "." + extension;
                }
                userModel.userImage = string.Empty;
                UserModel addedUser = usersRepository.AddUser(userModel);


                HttpResponseMessage hrm = new HttpResponseMessage(HttpStatusCode.Created)
                {
                    Content = new StringContent(JsonConvert.SerializeObject(addedUser))
                };

                return(hrm);
            }
            catch (Exception ex)
            {
                Errors errors          = ErrorsHelper.GetErrors(ex);
                HttpResponseMessage hr = new HttpResponseMessage(HttpStatusCode.InternalServerError)
                {
                    Content = new StringContent(errors.ToString())
                };
                return(hr);
            }
        }
예제 #2
0
        public HttpResponseMessage ReturnUserByNamePassword(LoginModel loginModel)
        {
            try
            {
                if (loginModel == null)
                {
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, "Data is null."));
                }
                if (!ModelState.IsValid)
                {
                    Errors errors = ErrorsHelper.GetErrors(ModelState);
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, errors));
                }

                LoginModel checkUser = usersRepository.ReturnUserByNamePassword(loginModel);
                if (checkUser == null)
                {
                    Errors errors = ErrorsHelper.GetErrors("Wrong username or password");
                    return(Request.CreateResponse(HttpStatusCode.Unauthorized, errors));
                }
                return(Request.CreateResponse(HttpStatusCode.Created, checkUser));
            }
            catch (Exception ex)
            {
                Errors errors = ErrorsHelper.GetErrors(ex);
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, errors));
            }
        }
예제 #3
0
        public async Task <HttpResponseMessage> GetImdbByWord(string getByWord)
        {
            try
            {
                IncomingWebRequestContext woc = WebOperationContext.Current.IncomingRequest;
                string userPass = woc.Headers["userPass"];
                userPass = Encoding.UTF8.GetString(Convert.FromBase64String(userPass));

                string userID = userRepository.ReturnUserIdByImdbPass(userPass);

                HttpResponseMessage hrm = new HttpResponseMessage(HttpStatusCode.OK)
                {
                    Content = new StringContent(JsonConvert.SerializeObject(await imdbRepository.GetImdbByWord(userPass, getByWord, userID)))
                };
                return(hrm);
            }
            catch (Exception ex)
            {
                Errors errors           = ErrorsHelper.GetErrors(ex);
                HttpResponseMessage hrm = new HttpResponseMessage(HttpStatusCode.InternalServerError)
                {
                    Content = new StringContent(errors.ToString())
                };
                return(hrm);
            }
        }
예제 #4
0
        public HttpResponseMessage AddUser(UserModel userModel)
        {
            try
            {
                if (userModel == null)
                {
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, "Data is null."));
                }
                if (!ModelState.IsValid)
                {
                    Errors errors = ErrorsHelper.GetErrors(ModelState);
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, errors));
                }

                byte[]   bytes      = Convert.FromBase64String(userModel.userImage);
                string[] extensions = userModel.userPicture.Split('.');
                string   extension  = extensions[extensions.Length - 1];
                string   fileName   = Guid.NewGuid().ToString();
                string   filePath   = HttpContext.Current.Server.MapPath("~/assets/images/users/" + fileName + "." + extension);
                using (FileStream binaryFileStream = new FileStream(filePath, FileMode.Create, FileAccess.ReadWrite))
                {
                    binaryFileStream.Write(bytes, 0, bytes.Length);
                    userModel.userPicture = fileName + "." + extension;
                }
                userModel.userImage = string.Empty;
                UserModel addedUser = usersRepository.AddUser(userModel);
                return(Request.CreateResponse(HttpStatusCode.Created, addedUser));
            }
            catch (Exception ex)
            {
                Errors errors = ErrorsHelper.GetErrors(ex);
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, errors));
            }
        }
예제 #5
0
        public HttpResponseMessage DeleteUser(string deleteById)
        {
            try
            {
                int i = usersRepository.DeleteUser(deleteById);

                if (i > 0)
                {
                    HttpResponseMessage hrm = new HttpResponseMessage(HttpStatusCode.NoContent)
                    {
                    };
                    return(hrm);
                }
                HttpResponseMessage hr = new HttpResponseMessage(HttpStatusCode.InternalServerError)
                {
                };
                return(hr);
            }
            catch (Exception ex)
            {
                Errors errors          = ErrorsHelper.GetErrors(ex);
                HttpResponseMessage hr = new HttpResponseMessage(HttpStatusCode.InternalServerError)
                {
                    Content = new StringContent(errors.ToString())
                };
                return(hr);
            }
        }
예제 #6
0
 public HttpResponseMessage UpdateMovie(string id, MovieExtendModel movieModel)
 {
     try
     {
         if (movieModel == null)
         {
             return(Request.CreateResponse(HttpStatusCode.BadRequest, "Data is null."));
         }
         //if (!ModelState.IsValid)
         //{
         //	Errors errors = ErrorsHelper.GetErrors(ModelState);
         //	return Request.CreateResponse(HttpStatusCode.BadRequest, errors);
         //}
         string uid = base.ControllerContext.RequestContext.Principal.Identity.Name;
         movieModel.userID = uid;
         movieModel.imdbID = id;
         MovieExtendModel updatedMovie = moviesExtendRepository.UpdateMovie(movieModel);
         return(Request.CreateResponse(HttpStatusCode.OK, updatedMovie));
     }
     catch (Exception ex)
     {
         Errors errors = ErrorsHelper.GetErrors(ex);
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, errors));
     }
 }
예제 #7
0
        public HttpResponseMessage DeleteMovie(string deletById)
        {
            try
            {
                IncomingWebRequestContext woc = WebOperationContext.Current.IncomingRequest;
                string userPass = woc.Headers["userPass"];
                userPass = Encoding.UTF8.GetString(Convert.FromBase64String(userPass));

                string userID = usersRepository.ReturnUserIdByImdbPass(userPass);
                int    i      = moviesExtendRepository.DeleteMovie(deletById, userID);

                if (i > 0)
                {
                    HttpResponseMessage hrm = new HttpResponseMessage(HttpStatusCode.NoContent)
                    {
                    };
                    return(hrm);
                }
                HttpResponseMessage hr = new HttpResponseMessage(HttpStatusCode.InternalServerError)
                {
                };
                return(hr);
            }
            catch (Exception ex)
            {
                Errors errors          = ErrorsHelper.GetErrors(ex);
                HttpResponseMessage hr = new HttpResponseMessage(HttpStatusCode.InternalServerError)
                {
                    Content = new StringContent(errors.ToString())
                };
                return(hr);
            }
        }
예제 #8
0
 public HttpResponseMessage GetOneUser(string id)
 {
     try
     {
         UserModel oneUser = usersRepository.GetOneUserById(id);
         return(Request.CreateResponse(HttpStatusCode.OK, oneUser));
     }
     catch (Exception ex)
     {
         Errors errors = ErrorsHelper.GetErrors(ex);
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, errors));
     }
 }
예제 #9
0
 public HttpResponseMessage GetAllUsers()
 {
     try
     {
         List <UserModel> allUsers = usersRepository.GetAllUsers();
         return(Request.CreateResponse(HttpStatusCode.OK, allUsers));
     }
     catch (Exception ex)
     {
         Errors errors = ErrorsHelper.GetErrors(ex);
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, errors));
     }
 }
예제 #10
0
 public HttpResponseMessage DeleteUser(string id)
 {
     try
     {
         int i = usersRepository.DeleteUser(id);
         return(Request.CreateResponse(HttpStatusCode.NoContent));
     }
     catch (Exception ex)
     {
         Errors errors = ErrorsHelper.GetErrors(ex);
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, errors));
     }
 }
예제 #11
0
 public HttpResponseMessage GetByTitle(string movieTitle)
 {
     try
     {
         string           id       = base.ControllerContext.RequestContext.Principal.Identity.Name;
         MovieExtendModel oneMovie = moviesExtendRepository.GetByTitle(movieTitle, id);
         return(Request.CreateResponse(HttpStatusCode.OK, oneMovie));
     }
     catch (Exception ex)
     {
         Errors errors = ErrorsHelper.GetErrors(ex);
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, errors));
     }
 }
예제 #12
0
 public HttpResponseMessage GetByWord(string byWord)
 {
     try
     {
         string id = base.ControllerContext.RequestContext.Principal.Identity.Name;
         List <MovieExtendModel> movies = moviesExtendRepository.GetByWord(byWord, id);
         return(Request.CreateResponse(HttpStatusCode.OK, movies));
     }
     catch (Exception ex)
     {
         Errors errors = ErrorsHelper.GetErrors(ex);
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, errors));
     }
 }
예제 #13
0
 public HttpResponseMessage DeleteMovie(string id)
 {
     try
     {
         string userId = base.ControllerContext.RequestContext.Principal.Identity.Name;
         int    i      = moviesExtendRepository.DeleteMovie(id, userId);
         return(Request.CreateResponse(HttpStatusCode.NoContent));
     }
     catch (Exception ex)
     {
         Errors errors = ErrorsHelper.GetErrors(ex);
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, errors));
     }
 }
예제 #14
0
 public HttpResponseMessage GetAllUsers()
 {
     try {
         HttpResponseMessage hrm = new HttpResponseMessage(HttpStatusCode.OK)
         {
             Content = new StringContent(JsonConvert.SerializeObject(usersRepository.GetAllUsers()))
         };
         return(hrm);
     }
     catch (Exception ex)
     {
         Errors errors          = ErrorsHelper.GetErrors(ex);
         HttpResponseMessage hr = new HttpResponseMessage(HttpStatusCode.InternalServerError)
         {
             Content = new StringContent(errors.ToString())
         };
         return(hr);
     }
 }
예제 #15
0
        public async Task <HttpResponseMessage> GetImdbByWord(string movieWord)
        {
            //http://localhost:49270/api/imdbMovies/byWord/matrix/

            string id = base.ControllerContext.RequestContext.Principal.Identity.Name;

            try
            {
                UserModel         userModel = usersRepository.GetOneUserById(id);
                List <MovieModel> movies    = await imdbRepository.GetImdbByWord(userModel.userImdbPass, movieWord, id);

                return(Request.CreateResponse(HttpStatusCode.OK, movies));
            }
            catch (Exception ex)
            {
                Errors errors = ErrorsHelper.GetErrors(ex);
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, errors));
            }
        }
예제 #16
0
 public HttpResponseMessage AddMovie(MovieExtendModel movieModel)
 {
     try
     {
         HttpResponseMessage hrm = new HttpResponseMessage(HttpStatusCode.Created)
         {
             Content = new StringContent(JsonConvert.SerializeObject(moviesExtendRepository.AddMovie(movieModel)))
         };
         return(hrm);
     }
     catch (Exception ex)
     {
         Errors errors           = ErrorsHelper.GetErrors(ex);
         HttpResponseMessage hrm = new HttpResponseMessage(HttpStatusCode.InternalServerError)
         {
             Content = new StringContent(errors.ToString())
         };
         return(hrm);
     }
 }
예제 #17
0
 public HttpResponseMessage ReturnUserByNamePassword(LoginModel loginModel)
 {
     try
     {
         HttpResponseMessage hrm = new HttpResponseMessage(HttpStatusCode.Created)
         {
             Content = new StringContent(JsonConvert.SerializeObject(usersRepository.ReturnUserByNamePassword(loginModel)))
         };
         return(hrm);
     }
     catch (Exception ex)
     {
         Errors errors          = ErrorsHelper.GetErrors(ex);
         HttpResponseMessage hr = new HttpResponseMessage(HttpStatusCode.InternalServerError)
         {
             Content = new StringContent(errors.ToString())
         };
         return(hr);
     }
 }
예제 #18
0
 public HttpResponseMessage UpdateMovie(string updateById, MovieExtendModel movieModel)
 {
     try
     {
         movieModel.imdbID = updateById;
         HttpResponseMessage hrm = new HttpResponseMessage(HttpStatusCode.OK)
         {
             Content = new StringContent(JsonConvert.SerializeObject(moviesExtendRepository.UpdateMovie(movieModel)))
         };
         return(hrm);
     }
     catch (Exception ex)
     {
         Errors errors           = ErrorsHelper.GetErrors(ex);
         HttpResponseMessage hrm = new HttpResponseMessage(HttpStatusCode.InternalServerError)
         {
             Content = new StringContent(errors.ToString())
         };
         return(hrm);
     }
 }
예제 #19
0
        public HttpResponseMessage UpdateUser(string updateById, UserModel userModel)
        {
            try
            {
                userModel.userID = updateById;
                UserModel updatedUser = usersRepository.UpdateUser(userModel);

                HttpResponseMessage hrm = new HttpResponseMessage(HttpStatusCode.OK)
                {
                    Content = new StringContent(JsonConvert.SerializeObject(updatedUser))
                };
                return(hrm);
            }
            catch (Exception ex)
            {
                Errors errors          = ErrorsHelper.GetErrors(ex);
                HttpResponseMessage hr = new HttpResponseMessage(HttpStatusCode.InternalServerError)
                {
                    Content = new StringContent(errors.ToString())
                };
                return(hr);
            }
        }
예제 #20
0
        public HttpResponseMessage UpdateUser(string id, UserModel userModel)
        {
            try
            {
                if (userModel == null)
                {
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, "Data is null."));
                }
                if (!ModelState.IsValid)
                {
                    Errors errors = ErrorsHelper.GetErrors(ModelState);
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, errors));
                }

                userModel.userID = id;
                UserModel updatedUser = usersRepository.UpdateUser(userModel);
                return(Request.CreateResponse(HttpStatusCode.OK, updatedUser));
            }
            catch (Exception ex)
            {
                Errors errors = ErrorsHelper.GetErrors(ex);
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, errors));
            }
        }