aboutsummaryrefslogtreecommitdiff
path: root/Client
diff options
context:
space:
mode:
Diffstat (limited to 'Client')
-rw-r--r--Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ChatActivityConversation.kt1
-rw-r--r--Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Adapters/ChatPreviewsAdapter.kt8
-rw-r--r--Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/chat/DBHelper.kt14
3 files changed, 23 insertions, 0 deletions
diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ChatActivityConversation.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ChatActivityConversation.kt
index 47cd903..19fd836 100644
--- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ChatActivityConversation.kt
+++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ChatActivityConversation.kt
@@ -186,5 +186,6 @@ class ChatActivityConversation : AppCompatActivity() {
}
adapterVar= items?.let { ChatMessagesAdapter(it,this@ChatActivityConversation) }
setRecyclerView(setParams = false)
+ dbConnection?.readContact(userId!!)
}
} \ No newline at end of file
diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Adapters/ChatPreviewsAdapter.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Adapters/ChatPreviewsAdapter.kt
index f875366..6e62180 100644
--- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Adapters/ChatPreviewsAdapter.kt
+++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Adapters/ChatPreviewsAdapter.kt
@@ -1,11 +1,13 @@
package com.example.brzodolokacije.Adapters
import android.content.Intent
+import android.graphics.Typeface
import android.view.LayoutInflater
import android.view.ViewGroup
import android.widget.Toast
import androidx.recyclerview.widget.RecyclerView
import com.bumptech.glide.Glide
+import com.exam.DBHelper
import com.example.brzodolokacije.Activities.ChatActivity
import com.example.brzodolokacije.Activities.ChatActivityConversation
import com.example.brzodolokacije.Interfaces.IBackendApi
@@ -25,6 +27,7 @@ class ChatPreviewsAdapter (val items : MutableList<ChatPreview>,val activity:Cha
private var api: IBackendApi?=null
private var token:String?=null
private lateinit var binding: ChatPreviewBinding
+ private var db:DBHelper=DBHelper.getInstance(activity)
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val inflater = LayoutInflater.from(parent.context)
binding=ChatPreviewBinding.inflate(inflater,parent,false)
@@ -39,6 +42,9 @@ class ChatPreviewsAdapter (val items : MutableList<ChatPreview>,val activity:Cha
val intent: Intent = Intent(activity, ChatActivityConversation::class.java)
intent.putExtra("userId",items[position].userId)
intent.putExtra("username",holder.itemView.tvUsername.text)
+ db.readContact(items[position].userId)
+ items[position].read=true
+ holder.itemView.tvUsername.typeface= Typeface.DEFAULT
activity.startActivity(intent)
}
}
@@ -54,6 +60,8 @@ class ChatPreviewsAdapter (val items : MutableList<ChatPreview>,val activity:Cha
if(response.isSuccessful()){
//zahtev da se posalje poruka
var user=response.body()!!
+ if(!item.read)
+ tvUsername.typeface= Typeface.DEFAULT_BOLD
tvUsername.text=user.username
if(user.pfp!=null) {
Glide.with(activity)
diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/chat/DBHelper.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/chat/DBHelper.kt
index 74e30bd..a3d5a13 100644
--- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/chat/DBHelper.kt
+++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/chat/DBHelper.kt
@@ -105,6 +105,10 @@ class DBHelper :
read+"')"
db?.execSQL(sql)
}
+ else{
+ if(!sent)
+ unreadContact(message.senderId)
+ }
}
}
fun getMessages(userId:String, self:Boolean=false): MutableList<Message>? {
@@ -137,6 +141,7 @@ class DBHelper :
)
Log.d("main",cal.time.toString())
}
+ readContact(userId)
return messagesList
}
return null
@@ -165,4 +170,13 @@ class DBHelper :
sql="DROP TABLE IF EXISTS "+ MESSAGES_TABLE_NAME
db?.execSQL(sql)
}
+
+ fun readContact(userId: String){
+ var sql="UPDATE "+ CONTACTS_TABLE_NAME+" SET read=1 WHERE userId='"+userId+"'"
+ db?.execSQL(sql)
+ }
+ fun unreadContact(userId: String){
+ var sql="UPDATE "+ CONTACTS_TABLE_NAME+" SET read=0 WHERE userId='"+userId+"'"
+ db?.execSQL(sql)
+ }
} \ No newline at end of file