Skip to content

Instantly share code, notes, and snippets.

View manuelernesto's full-sized avatar
🟣

Manuel Ernesto manuelernesto

🟣
View GitHub Profile
mDatabase = FirebaseDatabase.getInstance()
mPersonTable = mDatabase.getReference("Person")
btn_subscribe.setOnClickListener {
progressBarStyle.visibility = ProgressBar.VISIBLE
val valueEventListener = object : ValueEventListener {
override fun onCancelled(databaseError: DatabaseError) {}
override fun onDataChange(dataSnapshot: DataSnapshot) {
progressBarStyle.visibility = ProgressBar.INVISIBLE
implementation 'com.google.firebase:firebase-firestore:17.1.5'
class PersonFirestoredapter(private val context: Context,
private val people: List<Person>) :
RecyclerView.Adapter<PersonFirestoredapter.Holder>() {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): Holder {
val layoutInflater = LayoutInflater.from(context)
val view = layoutInflater.inflate(R.layout.layout_list_subscribers,
parent, false)
return Holder(view, people, context)
}
var mPeople: ArrayList<Person> = ArrayList()
var mAdapter: PersonFirestoredapter = PersonFirestoredapter(this, mPeople)
var mRecyclerView: RecyclerView = findViewById(R.id.rv)
mRecyclerView.setHasFixedSize(true)
mRecyclerView.layoutManager = LinearLayoutManager(this)
var db: FirebaseFirestore = FirebaseFirestore.getInstance()
db.collection("Person").get().addOnSuccessListener { query ->
if (!query.isEmpty) {
val list = query.documents
for (d in list) {
val person: Person? = d.toObject(Person::class.java)
if (person != null) {
person.id = d.id
mPeople.add(person)
class Holder(
itemView: View,
val people: List<Person>,
val context: Context) : RecyclerView.ViewHolder(itemView),
View.OnClickListener {
val name: TextView = itemView.findViewById(R.id.list_name)
val email: TextView = itemView.findViewById(R.id.list_email)
val phone: TextView = itemView.findViewById(R.id.list_phone)
db.collection("Person").document(personExtra.id!!).delete().addOnSuccessListener {
"Person was deleted.".toast(this@UpdateFirestoreActivity)
finish()
}.addOnFailureListener { exception ->
"Error: ${exception.message}".toast(this@UpdateFirestoreActivity)
}
var db: FirebaseFirestore = FirebaseFirestore.getInstance()
var personExtra = intent.getSerializableExtra("Person") as Person
etName_firestore_update.text.append(personExtra.name)
etEmail_firestore_update.text.append(personExtra.email)
etPhone_firestore_update.text.append(personExtra.phone)
db.collection("Person").document(personExtra.id!!)
.update("name",etName_firestore_update.text)
.addOnSuccessListener {
"Updated Successful.".toast(this@UpdateFirestoreActivity)
finish()
startActivity(Intent(this, FirestoreListActivity::class.java))
progressBarStyle.visibility = ProgressBar.INVISIBLE
}.addOnFailureListener { exception ->