Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: recipes details screen and save favorite recipe state into database #7

Open
wants to merge 11 commits into
base: develop
Choose a base branch
from

Conversation

MoatazBadawy
Copy link
Owner

@MoatazBadawy MoatazBadawy commented Aug 14, 2023

Created recipe details screen, including:

  • Back Icon
  • Favourite Icon to save fav state into the database
  • Recipe Image
  • Recipe Title
  • Recipe Headline
  • Recipe Time
  • Recipe fats, carbos, calories, proteins
  • Recipe Description
  • Recipe Ingredients
260568975-ecb51cca-7042-4bfc-8689-e92e3ea89d9377.mp4

Favorite state
To save the recipe state it as favorite/not favorite. I added a new variable to recipe data classes called "IsFavourite".
Screenshot from 2023-08-14 23-51-00

Then In the Dao class, I created a new query function that saves the favorite state as it comes from ViewModel in the last.
Screenshot from 2023-08-14 23-53-19

Finally in ViewModel, we save the state and change it every time we click on the Image button. I have some problems with that because IDK how to change the state every time I click on the ImageButton because there's no onChange method with it, but after some searching I came up with this approach.
Screenshot from 2023-08-14 23-58-17

This line is Do all that we need
isFavorite = !recipeDetailsUiState.value.recipe.isFavorite,

And here the data binding function that changes Imagebutton based on isFavorite state.
Screenshot from 2023-08-15 00-01-22

@gitguardian
Copy link

gitguardian bot commented Aug 14, 2023

⚠️ GitGuardian has uncovered 4 secrets following the scan of your pull request.

Please consider investigating the findings and remediating the incidents. Failure to do so may lead to compromising the associated services or software components.

🔎 Detected hardcoded secrets in your pull request
GitGuardian id Secret Commit Filename
7657697 Company Email Password 7a962be app/src/main/res/values-night/strings.xml View secret
7657697 Company Email Password 7a962be app/src/main/res/values/strings.xml View secret
7657697 Company Email Password cb44701 app/src/main/res/values-night/strings.xml View secret
7657697 Company Email Password cb44701 app/src/main/res/values/strings.xml View secret
🛠 Guidelines to remediate hardcoded secrets
  1. Understand the implications of revoking this secret by investigating where it is used in your code.
  2. Replace and store your secrets safely. Learn here the best practices.
  3. Revoke and rotate these secrets.
  4. If possible, rewrite git history. Rewriting git history is not a trivial act. You might completely break other contributing developers' workflow and you risk accidentally deleting legitimate data.

To avoid such incidents in the future consider


🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.

Our GitHub checks need improvements? Share your feedbacks!

@MoatazBadawy MoatazBadawy self-assigned this Aug 14, 2023
@MoatazBadawy MoatazBadawy added the enhancement New feature or request label Aug 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant