diff options
Diffstat (limited to 'Client')
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  | 
