private List <Tracker> BuildTracker() { var trackerList = new List <Tracker>(); trackerList.Add(_trackerPivotService.AddTracker(TrackerConstants.CURRENT_WEIGHT, CurrentWeightValue.ToString())); trackerList.Add(_trackerPivotService.AddTracker(TrackerConstants.CURRENT_WEIGHT_UI, CurrentWeightValue.ToString())); trackerList.Add(_trackerPivotService.AddTracker(TrackerConstants.WEIGHT_VOLUME_TYPE, App.Configuration.AppConfig.DefaultWeightVolume)); if (GoalAchieved) { trackerList.Add(_trackerPivotService.AddTracker(TrackerConstants.TSHIRT_SIZE, TShirtSize.Trim())); trackerList.Add(_trackerPivotService.AddTracker(TrackerConstants.FRONT_IMAGE, ImageFront.Trim())); trackerList.Add(_trackerPivotService.AddTracker(TrackerConstants.SIDE_IMAGE, ImageSide.Trim())); trackerList.Add(_trackerPivotService.AddTracker(TrackerConstants.ABOUT_JOURNEY, AboutYourJourney.Trim())); } return(trackerList); }
public void StringConstructorTest(string input, int pixels, ImageSide side) { var ts = new ThumbnailSize(input); Assert.AreEqual(pixels, ts.Pixels); Assert.AreEqual(side, ts.Side); }
private async Task <List <Tracker> > BuildTracker() { var trackerList = new List <Tracker>(); await Task.Run(async() => { trackerList.Add(await trackerService.AddTracker(TrackerConstants.CURRENT_WEIGHT, CurrentWeightValue.ToString())); if (GoalAchieved) { trackerList.Add(await trackerService.AddTracker(TrackerConstants.TSHIRT_SIZE, TShirtSize.Trim())); trackerList.Add(await trackerService.AddTracker(TrackerConstants.FRONT_IMAGE, ImageFront.Trim())); trackerList.Add(await trackerService.AddTracker(TrackerConstants.SIDE_IMAGE, ImageSide.Trim())); trackerList.Add(await trackerService.AddTracker(TrackerConstants.ABOUT_JOURNEY, AboutYourJourney.Trim())); } }); return(trackerList); }
private async Task UploadImageAsync(ImageSide side) { if (side == ImageSide.SIDE) { _model.ImageSide = _model.ImageDefault; } else { _model.ImageFront = _model.ImageDefault; } var result = await DisplayActionSheet(TextResources.ChooseOption, TextResources.Cancel, null, new string[] { TextResources.PickFromGallery, TextResources.TakeFromCamera }); if (result != null) { if (result == "Cancel") { return; } _media.Refresh(); if (result == TextResources.PickFromGallery) { var mediaFile = await _media.PickPhotoAsync(); if (mediaFile == null) { _model.SetActivityResource(showError: true, errorMessage: _media.Message); return; } await Task.Run(() => { _model.SetActivityResource(false, true); }); var response = await _media.UploadPhotoAsync(mediaFile); if (!response) { _model.SetActivityResource(true, false, showError: true, errorMessage: _media.Message); return; } _model.SetActivityResource(); if (_media.FileName != null) { if (side == ImageSide.SIDE) { _model.ImageSide = _media.FileName; } else { _model.ImageFront = _media.FileName; } (side == ImageSide.SIDE ? imageSide : imageFront).Source = ImageSource.FromStream(() => mediaFile.GetStream()); } else { _model.SetActivityResource(showError: true, errorMessage: _media.Message); } } else if (result == TextResources.TakeFromCamera) { var mediaFile = await _media.TakePhotoAsync(); if (mediaFile == null) { _model.SetActivityResource(showError: true, errorMessage: _media.Message); } else { await Task.Run(() => { _model.SetActivityResource(false, true); }); var response = await _media.UploadPhotoAsync(mediaFile); if (!response) { _model.SetActivityResource(true, false, showError: true, errorMessage: _media.Message); return; } _model.SetActivityResource(); if (!string.IsNullOrEmpty(_media.FileName)) { if (side == ImageSide.SIDE) { _model.ImageSide = _media.FileName; } else { _model.ImageFront = _media.FileName; } (side == ImageSide.SIDE ? imageSide : imageFront).Source = ImageSource.FromStream(() => mediaFile.GetStream()); } else { _model.SetActivityResource(showError: true, errorMessage: _media.Message); } } } } }
protected async Task UploadImageAsync(ImageSide side) { if (side == ImageSide.SIDE) { _model.ImageSide = _model.ImageDefault; } else { _model.ImageFront = _model.ImageDefault; } //var result = await DisplayActionSheet(TextResources.ChooseOption, TextResources.Cancel, null, // new string[] { TextResources.PickFromGallery, TextResources.TakeFromCamera }); //var result = await DisplayAlert(TextResources.ChooseOption, string.Empty, TextResources.PickFromGallery, TextResources.TakeFromCamera ); var result = TextResources.TakeFromCamera; if (result != null) { if (result == "Cancel") { return; } if (!await _devicePermissionServices.RequestReadStoragePermission()) { await DisplayAlert(TextResources.Review, TextResources.MessagePermissionReadStorageRequired, TextResources.Ok); return; } media.Refresh(); if (result.ToString() == TextResources.PickFromGallery) { var _mediaFile = await media.PickPhotoAsync(); if (_mediaFile == null) { _model.SetActivityResource(showError: true, errorMessage: media.Message); return; } (side == ImageSide.SIDE ? imageSide : imageFront).Source = ImageSource.FromStream(() => { return(_mediaFile.GetStream()); }); if (media.FileName != null) { if (side == ImageSide.SIDE) { _model.ImageSide = media.FileName; } else { _model.ImageFront = media.FileName; } } else { _model.SetActivityResource(showError: true, errorMessage: media.Message); } } else if (result.ToString() == TextResources.TakeFromCamera) { if (!await _devicePermissionServices.RequestCameraPermission()) { await DisplayAlert(TextResources.Review, TextResources.MessagePermissionCameraRequired, TextResources.Ok); return; } if (!await _devicePermissionServices.RequestWriteStoragePermission()) { await DisplayAlert(TextResources.Review, TextResources.MessagePermissionCameraRequired, TextResources.Ok); return; } var mediaFile = await media.TakePhotoAsync(); if (mediaFile == null) { _model.SetActivityResource(showError: true, errorMessage: media.Message); return; } (side == ImageSide.SIDE ? imageSide : imageFront).Source = ImageSource.FromStream(() => { return(mediaFile.GetStream()); }); if (media.FileName != null && media.FileName.Trim().Length > 0) { var index = media.FileName.LastIndexOf("\""); var fileName = media.FileName.Remove(index, 1); if (side == ImageSide.SIDE) { _model.ImageSide = fileName; } else { _model.ImageFront = fileName; } } else { _model.SetActivityResource(showError: true, errorMessage: media.Message); } } } }
public void SizeIdCreationTest(int pix, ImageSide side, string id) { var ts = new ThumbnailSize(pix, side); Assert.AreEqual(id, ts.SizeString); }
private async Task UploadImageAsync(ImageSide side) { if (side == ImageSide.SIDE) { _model.ImageSide = _model.ImageDefault; } else { _model.ImageFront = _model.ImageDefault; } Device.BeginInvokeOnMainThread(async() => { var localMessage = ""; var result = await DisplayActionSheet(TextResources.ChooseOption, TextResources.Cancel, null, new string[] { TextResources.PickFromGallery, TextResources.TakeFromCamera }); if (result != null) { if (result == "Cancel") { return; } if (!await _devicePermissionServices.RequestReadStoragePermission()) { _model.SetActivityResource(showError: true, errorMessage: TextResources.MessagePermissionReadStorageRequired); return; } _media.Refresh(); if (result.ToString() == TextResources.PickFromGallery) { var mediaFile = await _media.PickPhotoAsync(); if (mediaFile == null) { localMessage = _media.Message; } else { _model.SetActivityResource(false, true); var response = await _media.UploadPhotoAsync(mediaFile); if (response) { if (side == ImageSide.SIDE) { _model.ImageSide = _media.FileName; } else { _model.ImageFront = _media.FileName; } (side == ImageSide.SIDE ? imageSide : imageFront).Source = ImageSource.FromStream(() => { return(mediaFile.GetStream()); }); } else { localMessage = _media.Message; } _model.SetActivityResource(); } } else if (result.ToString() == TextResources.TakeFromCamera) { if (!await _devicePermissionServices.RequestCameraPermission()) { _model.SetActivityResource(showError: true, errorMessage: TextResources.MessagePermissionCameraRequired); return; } if (!await _devicePermissionServices.RequestWriteStoragePermission()) { _model.SetActivityResource(showError: true, errorMessage: TextResources.MessagePermissionCameraRequired); return; } var mediaFile = await _media.TakePhotoAsync(); if (mediaFile == null) { localMessage = _media.Message; } else { _model.SetActivityResource(false, true); var response = await _media.UploadPhotoAsync(mediaFile); if (response) { if (side == ImageSide.SIDE) { _model.ImageSide = _media.FileName; } else { _model.ImageFront = _media.FileName; } (side == ImageSide.SIDE ? imageSide : imageFront).Source = ImageSource.FromStream(() => { return(mediaFile.GetStream()); }); } else { localMessage = _media.Message; } _model.SetActivityResource(); } } if (!string.IsNullOrEmpty(localMessage)) { _model.SetActivityResource(showError: true, errorMessage: localMessage); } } }); await Task.Delay(TimeSpan.FromMilliseconds(1)); }
private async Task <bool> Validate() { var validationErrors = new ValidationErrors(); await Task.Run(() => { // Current Weight if (CurrentWeightValue == 0) { validationErrors.Add( string.Format(TextResources.Required_IsMandatory, TextResources.WeightLossGoal)); } else if (CurrentWeightValue < App.Configuration.AppConfig.MINIMUM_WEIGHT_LOSE) { validationErrors.Add(string.Format(TextResources.Validation_MustBeMoreThan, TextResources.WeightLossGoal, App.Configuration.AppConfig.MINIMUM_WEIGHT_LOSE)); } if (GoalAchieved) { // Front Photo if (ImageFront == null || ImageFront.Trim().Length == 0 || ImageFront == ImageDefault) { validationErrors.Add(string.Format(TextResources.Required_MustBeSelected, TextResources.FrontPhoto)); } // Side Photo if (ImageSide == null || ImageSide.Trim().Length == 0 || ImageSide == ImageDefault) { validationErrors.Add(string.Format(TextResources.Required_MustBeSelected, TextResources.SidePhoto)); } //Gender if (IsGenderRequired && !IsGenderSelected) { validationErrors.Add(string.Format(TextResources.Required_MustBeSelected, TextResources.Gender)); } // T-Shirt Size if (TShirtSize == null || TShirtSize.Trim().Length == 0) { validationErrors.Add(string.Format(TextResources.Required_MustBeSelected, TextResources.TShirtSize)); } // Why you want to join if (AboutYourJourney == null || AboutYourJourney.Trim().Length == 0) { validationErrors.Add(string.Format(TextResources.Required_IsMandatory, TextResources.AboutYourJourney)); } } }); if (validationErrors.Count() > 0) { SetActivityResource(showError: true, errorMessage: validationErrors.Count() > 2 ? TextResources.PleaseReviewAllInputsAreMandatory : validationErrors.Show("\n")); } return(validationErrors.Count() == 0); }
private async Task UploadImageAsync(ImageSide side) { if (side == ImageSide.SIDE) { _imageSideName = string.Empty; _model.ImageSide = _model.ImageDefault; } else { _imageFrontName = string.Empty; _model.ImageFront = _model.ImageDefault; } var result = await DisplayActionSheet(TextResources.ChooseOption, TextResources.Cancel, null, new string[] { TextResources.PickFromGallery, TextResources.TakeFromCamera }); if (result != null) { if (result == "Cancel") { return; } if (!await _devicePermissionServices.RequestReadStoragePermission()) { _model.SetActivityResource(showError: true, errorMessage: TextResources.MessagePermissionReadStorageRequired); return; } _media.Refresh(); if (result == TextResources.PickFromGallery) { var mediaFile = await _media.PickPhotoAsync(); if (mediaFile == null) { _model.SetActivityResource(showError: true, errorMessage: _media.Message); return; } _model.SetActivityResource(false, true); var response = await _media.UploadPhotoAsync(mediaFile); if (!response) { _model.SetActivityResource(true, false, showError: true, errorMessage: _media.Message); return; } _model.SetActivityResource(); (side == ImageSide.SIDE ? imageSide : imageFront).Source = ImageSource.FromStream(() => { return(mediaFile.GetStream()); }); if (_media.FileName != null) { if (side == ImageSide.SIDE) { _imageSideName = _model.ImageSide = _media.FileName; } else { _imageFrontName = _model.ImageFront = _media.FileName; } (side == ImageSide.SIDE ? imageSide : imageFront).Source = ImageSource.FromStream(() => { return(mediaFile.GetStream()); }); } else { _model.SetActivityResource(showError: true, errorMessage: _media.Message); } } else if (result == TextResources.TakeFromCamera) { if (!await _devicePermissionServices.RequestCameraPermission()) { _model.SetActivityResource(showError: true, errorMessage: TextResources.MessagePermissionCameraRequired); return; } if (!await _devicePermissionServices.RequestWriteStoragePermission()) { _model.SetActivityResource(showError: true, errorMessage: TextResources.MessagePermissionCameraRequired); return; } var mediaFile = await _media.TakePhotoAsync(); if (mediaFile == null) { _model.SetActivityResource(showError: true, errorMessage: _media.Message); return; } _model.SetActivityResource(false, true); var response = await _media.UploadPhotoAsync(mediaFile); if (!response) { _model.SetActivityResource(true, false, showError: true, errorMessage: _media.Message); return; } _model.SetActivityResource(); if (_media.FileName != null && _media.FileName.Trim().Length > 0) { if (side == ImageSide.SIDE) { _imageSideName = _model.ImageSide = _media.FileName; } else { _imageFrontName = _model.ImageFront = _media.FileName; } (side == ImageSide.SIDE ? imageSide : imageFront).Source = ImageSource.FromStream(() => { return(mediaFile.GetStream()); }); } else { _model.SetActivityResource(showError: true, errorMessage: _media.Message); } } } }
public ThumbnailSize(int pixels, ImageSide side) { Pixels = pixels; Side = side; }