You are on page 1of 2

package com.sameh.foodrecipesapp.ui.

activities

import android.app.Activity
import android.app.ProgressDialog
import android.content.ContentValues
import android.content.Context
import android.content.Intent
import android.net.Uri
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.provider.MediaStore
import android.util.Log
import android.view.Menu
import android.widget.Adapter
import android.widget.AdapterView
import android.widget.ArrayAdapter
import android.widget.AutoCompleteTextView
import android.widget.PopupMenu
import android.widget.Toast
import androidx.activity.result.ActivityResult
import androidx.activity.result.contract.ActivityResultContracts
import androidx.activity.result.ActivityResultCallback
import androidx.core.view.contains
import androidx.recyclerview.widget.LinearLayoutManager
import com.bumptech.glide.Glide
import com.google.android.gms.common.internal.Objects.ToStringHelper
import com.google.android.gms.tasks.Task
import com.google.firebase.auth.FirebaseAuth
import com.google.firebase.database.*
import com.google.firebase.storage.FirebaseStorage
import com.sameh.foodrecipesapp.R
import com.sameh.foodrecipesapp.databinding.ActivityCreateMyRecipeBinding
import com.sameh.foodrecipesapp.model.pojo.MyRecipe
import com.sameh.foodrecipesapp.utils.getCurrentUser

class CreateMyRecipe : AppCompatActivity() {

private lateinit var binding: ActivityCreateMyRecipeBinding


private lateinit var database: FirebaseDatabase
private lateinit var firebaseAuth: FirebaseAuth
private var imageUri:Uri?= null
private lateinit var progressDialog: ProgressDialog
var currentUserId = getCurrentUser()
private var name = ""
private var instruction = ""
private var area = ""
private var selectedCategory = ""

override fun onCreate(savedInstanceState: Bundle?) {


super.onCreate(savedInstanceState)
binding = ActivityCreateMyRecipeBinding.inflate(layoutInflater)
setContentView(binding.root)
database = FirebaseDatabase.getInstance()
val itemsCat = listOf<String>("Meat", "Chicken", "Lamb", "Vegetables",
"Beans", "Dessert")
var autoCompletetxt = binding.autoCompleteTxt
var adapterItems = ArrayAdapter<String>(this, R.layout.list_catgories,
itemsCat)
autoCompletetxt.setAdapter(adapterItems)
autoCompletetxt.onItemClickListener = AdapterView.OnItemClickListener{
adapterView, view, i, l ->
val itemSelected = adapterView.getItemAtPosition(i)
selectedCategory = itemSelected.toString()
Log.d("Selected", selectedCategory)
}

binding.etIng.text
var listIng = binding.recycleViewIngs
var insertIng = binding.insertIngBtn
val ins : MutableList<String> = mutableListOf()

insertIng.setOnClickListener {
ins.add(binding.etIng.text.toString())
listIng.adapter = CreatedIngredientAdapter(ins)
listIng.layoutManager = LinearLayoutManager(this@CreateMyRecipe,
LinearLayoutManager.VERTICAL, false)
binding.etIng.setText(" ")
}

fun addRecipe() {

// create random id reference.push().key!!


val recipeId = database.reference.push().key!!
val ingredients: ArrayList<String>? = null
val myRecipe = MyRecipe(recipeId, "thumb", selectedCategory,
binding.etArea.toString(),
ingredients, binding.etName.toString(),
binding.etInstruction.toString(), currentUserId)

val reference = database.reference.child("recipes").child(recipeId!!)


reference.setValue(myRecipe).addOnCompleteListener {
Toast.makeText(this, "Inserted", Toast.LENGTH_SHORT).show()
} .addOnFailureListener {
err -> Toast.makeText(this, "Nope", Toast.LENGTH_SHORT).show()

}
}

You might also like