private async Task PickPhotoCommandExecute(PlatformDocument document) { if (document.Name.EndsWith(".png") || document.Name.EndsWith(".jpg")) { var photoModel = new PhotoModel { NoteId = Id }; var mediaService = DependencyService.Get <IMediaService>(); var fileSystem = DependencyService.Get <IFileSystem>(); var imageContent = fileSystem.ReadAllBytes(document.Path); var resizedImage = mediaService.ResizeImage(imageContent, ConstantsHelper.ResizedImageWidth, ConstantsHelper.ResizedImageHeight); string path = Environment.GetFolderPath(Environment.SpecialFolder.Personal); string imagePath = Path.Combine(path, document.Name); File.WriteAllBytes(imagePath, resizedImage); photoModel.ResizedPath = imagePath; photoModel.Thumbnail = imagePath; await _transformHelper.ResizeAsync(imagePath, photoModel); Photos.Add(photoModel.ToPhotoViewModel()); PhotosCollectionChanged?.Invoke(this, EventArgs.Empty); } IsLoading = false; }
private async Task PickPhotoCommandExecute(PlatformDocument document) { IsLoading = true; var ci = CrossMultilingual.Current.CurrentCultureInfo; if (document.Name.EndsWith(".png") || document.Name.EndsWith(".jpg")) { var mediaService = DependencyService.Get <IMediaService>(); var fileSystem = DependencyService.Get <IFileSystem>(); var imageContent = fileSystem.ReadAllBytes(document.Path); var resizedImage = mediaService.ResizeImage(imageContent, ConstantsHelper.ResizedImageWidth, ConstantsHelper.ResizedImageHeight); var photoModel = new PhotoModel { Name = document.Name, Image = Convert.ToBase64String(resizedImage) }; Photos.Add(photoModel.ToPhotoViewModel()); PhotosCollectionChanged?.Invoke(this, EventArgs.Empty); IsLoading = false; } else { IsLoading = false; var imagePickErrorMesssageLocalized = Resmgr.Value.GetString(ConstantsHelper.ImagePickErrorMesssage, ci); var okLocalized = Resmgr.Value.GetString(ConstantsHelper.Ok, ci); _alertService.ShowOkAlert(imagePickErrorMesssageLocalized, okLocalized); } }
private void DeletePhotoCommandExecute(int position) { IsLoading = true; if (Photos.Any()) { Photos.RemoveAt(position); PhotosCollectionChanged?.Invoke(this, EventArgs.Empty); } IsLoading = false; }
private async Task TakePhotoCommandExecute() { bool permissionResult = await PermissionService.AskPermission(); if (permissionResult) { IsLoading = true; var photoModel = await _mediaHelper.TakePhotoAsync(); if (photoModel != null) { Photos.Add(photoModel.ToPhotoViewModel()); PhotosCollectionChanged?.Invoke(this, EventArgs.Empty); } IsLoading = false; } }