Example #1
0
        public ActionResult UpdateProfilePhoto()
        {
            var user              = GetUser();
            var photo             = new UserPhotos();
            var databasePathSmall = "";
            var databasePathBig   = "";
            var flag              = false;
            var resizer           = new ImageResize();
            var tracer            = "";

            try
            {
                if (Request.Files.Count > 0)
                {
                    var file = Request.Files[0];

                    if (file != null && file.ContentLength > 0)
                    {
                        Image imgSmall      = resizer.RezizeImage(Image.FromStream(file.InputStream, true, true), 190, 190);
                        Image imgBig        = resizer.RezizeImage(Image.FromStream(file.InputStream, true, true), 640, 640);
                        var   fileName      = Path.GetFileName(file.FileName);
                        var   fileNameSmall = fileName.Replace(".", "-tumbnail.");
                        var   fileNameBig   = fileName.Replace(".", "-big.");
                        var   pathSmall     = Path.Combine(Server.MapPath("~/images/post-images"), fileNameSmall);
                        var   pathBig       = Path.Combine(Server.MapPath("~/images/post-images"), fileNameBig);
                        databasePathSmall = "../../images/post-images/" + fileNameSmall;
                        databasePathBig   = "../../images/post-images/" + fileNameBig;
                        tracer           += pathSmall + " " + pathBig;
                        imgSmall.Save(pathSmall);
                        imgBig.Save(pathBig);
                        flag = true;
                    }
                }
            }
            catch (Exception ex)
            {
                return(Json(new LoginResult(result: 0, error: ex.Message + " filename=" + tracer)));
            }
            user.UserProfilePhoto = databasePathSmall;
            _db.Users.Attach(user);
            photo.UserId         = user.Id;
            photo.UserPhotoSmall = databasePathSmall;
            photo.UserPhotoBig   = databasePathBig;
            _db.UserPhotos.Add(photo);
            _db.UsersLastMoves.Add(new UsersLastMoves {
                MoveDate = DateTime.Now, UserId = user.Id, UsersLastMoveText = " profil fotoğrafını güncelledi.", UsersMoveLink = "/users/album/" + user.Id
            });
            var entry = _db.Entry(user);

            entry.Property(e => e.UserProfilePhoto).IsModified = flag;
            try
            {
                _db.SaveChanges();
                return(Json(1));
            }
            catch (Exception)
            {
                return(Json(0));
            }
        }
Example #2
0
        public ActionResult AddPost(string postText)
        {
            if(String.IsNullOrEmpty(postText)) return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            var user = GetUserModel();
            var post = new Post
            {
                UserId=user.Id,
                PostText = postText,
                PostDatePosted = DateTime.Now
               
            };
            try
            {
                //yeni post kaydedilip id'si alınıyo
                _db.Posts.Add(post);
                _db.SaveChanges();
                _db.UsersLastMoves.Add(new UsersLastMoves { MoveDate = DateTime.Now, UserId = user.Id, UsersLastMoveText =" bir gönderi paylaştı.", UsersMoveLink = "/users/index/" + post.UserId + "#post" + post.PostID });
            }
            catch (Exception ex)
            {
                return Json(new { success = false, error = true, message = ex.InnerException.ToString() });
            }
            var photo = new PostPhotos();
            var postPhotoList = new List<PostPhotos>();
            var resizer = new ImageResize();
            if (Request.Files.Count > 0)
            {
                
                HttpFileCollectionBase files = Request.Files;
                for (int i=0;i< files.Count;i++)
                {
                    if (files[i] != null && files[i].ContentLength > 0)
                    {
                        Image imgBig = resizer.RezizeImage(Image.FromStream(files[i].InputStream, true, true), 640, 640);
                        var fileName = Path.GetFileName(files[i].FileName);
                        var fileNameBig = fileName.Replace(".", "-big.");
                        var pathBig = Path.Combine(Server.MapPath("~/images/post-images"), fileNameBig);
                        var databasePathBig = "../../images/post-images/" + fileNameBig;
                        imgBig.Save(pathBig);
                        //bir gönderiye birden fazla resim eklenebiliniyor.
                        var postPhotoLocation = new PostPhotos()
                        {
                            PostID = post.PostID,
                            PostPhotosLocateBig = databasePathBig,
                        };
                        postPhotoList.Add(postPhotoLocation);
                    }
                }
            }

            try
            {
                    //gönderinin resimlerinin sunucuda ki yerleri kaydediliyor
                    _db.PostPhotos.AddRange(postPhotoList);

                    _db.SaveChanges();
                    return Json(new { success = true });
            }
            catch (Exception ex)
            {
                _db.Posts.Remove(post);
                _db.PostPhotos.Remove(photo);
                _db.SaveChanges();
                return Json(new { success = false,error =true,message =ex.InnerException.ToString() });
            }

        }