diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 906ce8f..1e6be84 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,8 +1,8 @@ + + android:parentActivityName=".ui.MainActivity" /> @@ -135,30 +135,40 @@ class CustomExercisesActivity : AppCompatActivity() { intent.type = "image/*" photoPicker.launch(PickVisualMediaRequest(ActivityResultContracts.PickVisualMedia.ImageOnly)) } - - /** - * TODO: If a field is empty, replace it with placeholder text - */ save.setOnClickListener { - val newName = name.text.toString() - val newDesc = desc.text.toString() - val newTags = ArrayList(tags.text.toString().split(",", ", ")) - val newExercise = Exercise( - name = newName, - description = newDesc, - tags = newTags, - repsFlag = reps.isChecked, - setsFlag = sets.isChecked, - durationFlag = duration.isChecked, - distanceFlag = distance.isChecked - ) - exerciseViewModel.addExercise( - newExercise, - thumbnail.value!! - ) - - exerciseViewModel.getExercisesByUser() - dialog.dismiss() + if (name.text.isNotEmpty()) { + val newName = name.text.toString() + var newDesc = "" + if (desc.text.isNotEmpty()) + newDesc = desc.text.toString() + var newTags = ArrayList() + if (tags.text.isNotEmpty()) + newTags = ArrayList(tags.text.toString().split(",", ", ")) + val newExercise = Exercise( + name = newName, + description = newDesc, + tags = newTags, + repsFlag = reps.isChecked, + setsFlag = sets.isChecked, + durationFlag = duration.isChecked, + distanceFlag = distance.isChecked + ) + exerciseViewModel.addExercise( + newExercise, + thumbnail.value!! + ) + + exerciseViewModel.getExercisesByUser() + thumbnail.value = Uri.parse(ExerciseActivity.PLACEHOLDER_THUMBNAIL) + dialog.dismiss() + } else { + Toast.makeText( + this, + "You must name your exercise", + Toast.LENGTH_SHORT + ) + .show() + } } cancel.setOnClickListener { @@ -183,6 +193,7 @@ class CustomExercisesActivity : AppCompatActivity() { val distance = dialog.findViewById(R.id.distanceCheckBox) val save = dialog.findViewById