Example #1
0
        public async Task <IActionResult> Picture([FromForm] EditUserPictureViewModel model)
        {
            IntegratorFile NewProfilePicture = new IntegratorFile();

            NewProfilePicture.FileName      = Path.GetFileNameWithoutExtension(model.UserProfileImage.FileName);
            NewProfilePicture.FileExtension = Path.GetExtension(model.UserProfileImage.FileName);
            NewProfilePicture.FileSize      = model.UserProfileImage.Length;
            NewProfilePicture.ContentType   = model.UserProfileImage.ContentType;
            NewProfilePicture.DateCreated   = DateTime.Now;
            NewProfilePicture.UserPicture   = new UserPicture()
            {
                IntegratorUserID        = _userService.GetUserID(),
                IsCurrentProfilePicture = true
            };

            Image OriginalImage = null;

            using (var memoryStream = new MemoryStream())
            {
                await model.UserProfileImage.CopyToAsync(memoryStream);

                OriginalImage = new Bitmap(memoryStream);


                Image destinationImage = new Bitmap(480, 480);

                using (Graphics g = Graphics.FromImage(destinationImage))
                {
                    g.DrawImage(
                        OriginalImage,
                        new Rectangle(0, 0, 480, 480),
                        new Rectangle(model.sourceX, model.sourceY, model.sourceWidth, model.sourceHeight),
                        GraphicsUnit.Pixel
                        );
                }

                byte[] CroppedImage;
                using (var ms = new MemoryStream())
                {
                    destinationImage.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
                    CroppedImage = ms.ToArray();
                }

                NewProfilePicture.FileSize = CroppedImage.Length;



                NewProfilePicture.InegratorFileBlob = new InegratorFileBlob()
                {
                    FileBlob = CroppedImage
                };
            }
            _userService.AddUserProfilePicture(NewProfilePicture);
            return(RedirectToAction("Picture"));
        }
Example #2
0
 public bool AddUserProfilePicture(IntegratorFile UserPicture)
 {
     try
     {
         _integratorFilesRepository.Insert(UserPicture);
         return(true);
     }
     catch (IntegratorException e)
     {
         throw new IntegratorException(e.Message);
     }
 }
Example #3
0
 public IEntityCRUDResponse DeleteUserProfilePicture(IntegratorFile entity)
 {
     try
     {
         _commonIntegratorFileRepository.Delete(entity);
         _entityCRUDResponse.Returned_ID = entity.Id;
         _entityCRUDResponse.Success     = true;
         _entityCRUDResponse.Message     = "User Profile Picture was Successfully Deleted.";
     }
     catch (Exception e)
     {
         _entityCRUDResponse.Returned_ID = 0;
         _entityCRUDResponse.Success     = false;
         _entityCRUDResponse.Message     = "User Profile Picture was not successfully deleted, - " + e.Message;
     }
     return(_entityCRUDResponse);
 }
Example #4
0
        public IEntityCRUDResponse AddUserProfilePicture(IntegratorFile entity)
        {
            try
            {
                if (entity.UserPicture.IsCurrentProfilePicture)
                {
                    ResetAllUserPicturesAsNotDefault();
                }

                _commonIntegratorFileRepository.Insert(entity);
                _entityCRUDResponse.Returned_ID = entity.Id;
                _entityCRUDResponse.Success     = true;
                _entityCRUDResponse.Message     = "User Profile Picture was Successfully Added.";
            }
            catch (Exception e)
            {
                _entityCRUDResponse.Returned_ID = 0;
                _entityCRUDResponse.Success     = false;
                _entityCRUDResponse.Message     = "User Profile Picture was not successfully Added, - " + e.Message;
            }
            return(_entityCRUDResponse);
        }
Example #5
0
 public bool AddUserDocument(IntegratorFile Document)
 {
     throw new NotImplementedException();
 }