Example #1
0
        public async Task <PhotoForReturnModel> AddPhotoForAmenity(PhotoForCreationModel photoModel)
        {
            var file         = photoModel.File;
            var uploadResult = new ImageUploadResult();

            if (file.Length > 0)
            {
                using (var stream = file.OpenReadStream())
                {
                    var uploadParams = new ImageUploadParams()
                    {
                        File           = new FileDescription(file.Name, stream),
                        Transformation = new Transformation().Width(500).Height(500).Crop("fill").Gravity("face")
                    };

                    uploadResult = _cloudinary.Upload(uploadParams);
                }
            }

            photoModel.PhotoURL = uploadResult.Uri.ToString();
            photoModel.PublicID = uploadResult.PublicId;

            var photo = _mapper.Map <Photos>(photoModel);


            if (!await CheckIfPhotoExist(photoModel.ReferenceID))
            {
                photo.IsMain = true;
            }
            else
            {
                photo.IsMain = false;
            }

            _context.Photos.Add(photo);
            await _context.SaveChangesAsync();

            return(_mapper.Map <PhotoForReturnModel>(photo));
        }
        public async Task <UserCreatedModel> Register(UserForRegisterModel user, string password)
        {
            var userToCreate = _mapper.Map <Users>(user);

            byte[] passwordHash, passwordSalt;
            CreatePasswordHash(password, out passwordHash, out passwordSalt);

            userToCreate.PasswordHash = passwordHash;
            userToCreate.PasswordSalt = passwordSalt;

            await _context.AddAsync(userToCreate);

            await _context.SaveChangesAsync();

            var userToReturn = _mapper.Map <UserCreatedModel>(userToCreate);

            return(userToReturn);
        }