From 53dd3a9e2eee27a69c349b7f2e1c295f19fdb114 Mon Sep 17 00:00:00 2001 From: Jelena Petrovic Date: Sun, 30 Oct 2022 16:19:05 +0100 Subject: dodate osnove fragmenta za prikay liste objekta koji radi sa hardkodovanim objektima #11 --- .../brzodolokacije/Adapters/SampleAdapter.kt | 29 +++++++++ .../brzodolokacije/Fragments/FragmentHome.kt | 73 ++++++++++++---------- .../example/brzodolokacije/Models/ListItemModel.kt | 6 ++ .../app/src/main/res/layout/fragment_home.xml | 10 +-- .../app/src/main/res/layout/list_item.xml | 24 +++++++ 5 files changed, 104 insertions(+), 38 deletions(-) create mode 100644 Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Adapters/SampleAdapter.kt create mode 100644 Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Models/ListItemModel.kt create mode 100644 Client/BrzoDoLokacije/app/src/main/res/layout/list_item.xml (limited to 'Client') diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Adapters/SampleAdapter.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Adapters/SampleAdapter.kt new file mode 100644 index 0000000..12f019f --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Adapters/SampleAdapter.kt @@ -0,0 +1,29 @@ +package com.example.brzodolokacije.Adapters + +import android.view.LayoutInflater +import android.view.ViewGroup +import androidx.recyclerview.widget.RecyclerView +import com.example.brzodolokacije.Models.ListItemModel +import com.example.brzodolokacije.databinding.ListItemBinding + +class SampleAdapter (val items : MutableList) + : RecyclerView.Adapter(){ + private lateinit var binding: ListItemBinding + override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder { + val inflater = LayoutInflater.from(parent.context) + binding=ListItemBinding.inflate(inflater,parent,false) + return ViewHolder(binding) + } + override fun onBindViewHolder(holder: ViewHolder, position: Int) { + holder.bind(items[position]) + } + override fun getItemCount() = items.size + inner class ViewHolder(itemView : ListItemBinding) : RecyclerView.ViewHolder(itemView.root){ + fun bind(item : ListItemModel){ + binding.apply { + tvId.text=item.id.toString() + tvName.text=item.name + } + } + } +} \ No newline at end of file diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentHome.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentHome.kt index 397e1cf..b460fd4 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentHome.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentHome.kt @@ -1,16 +1,18 @@ package com.example.brzodolokacije.Fragments import android.os.Bundle +import android.util.Log import androidx.fragment.app.Fragment import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.widget.Button +import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.RecyclerView +import com.example.brzodolokacije.Adapters.SampleAdapter +import com.example.brzodolokacije.Models.ListItemModel import com.example.brzodolokacije.R - -// TODO: Rename parameter arguments, choose names that match -// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER -private const val ARG_PARAM1 = "param1" -private const val ARG_PARAM2 = "param2" +import com.example.brzodolokacije.databinding.FragmentHomeBinding /** * A simple [Fragment] subclass. @@ -18,43 +20,46 @@ private const val ARG_PARAM2 = "param2" * create an instance of this fragment. */ class FragmentHome : Fragment() { - // TODO: Rename and change types of parameters - private var param1: String? = null - private var param2: String? = null + + private lateinit var binding: FragmentHomeBinding + private var nameList : MutableList = mutableListOf() + private var layoutManagerVar: RecyclerView.LayoutManager? = null + private var adapterVar: RecyclerView.Adapter? = null + private var recyclerView:RecyclerView?=null + + override fun onViewCreated(itemView: View, savedInstanceState: Bundle?) { + super.onViewCreated(itemView, savedInstanceState) + Log.d("Main","blabla") + + } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - arguments?.let { - param1 = it.getString(ARG_PARAM1) - param2 = it.getString(ARG_PARAM2) - } + //load data for the list + loadData() + adapterVar=SampleAdapter(nameList) + layoutManagerVar=LinearLayoutManager(activity) } + override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle? ): View? { - // Inflate the layout for this fragment - return inflater.inflate(R.layout.fragment_home, container, false) + val rootView = inflater?.inflate(R.layout.fragment_home, container, false) + recyclerView = rootView?.findViewById(R.id.rvMain) + // rest of my stuff + recyclerView?.setHasFixedSize(true) + recyclerView?.layoutManager = layoutManagerVar + recyclerView?.adapter = adapterVar + return rootView } - - companion object { - /** - * Use this factory method to create a new instance of - * this fragment using the provided parameters. - * - * @param param1 Parameter 1. - * @param param2 Parameter 2. - * @return A new instance of fragment FragmentHome. - */ - // TODO: Rename and change types and number of parameters - @JvmStatic - fun newInstance(param1: String, param2: String) = - FragmentHome().apply { - arguments = Bundle().apply { - putString(ARG_PARAM1, param1) - putString(ARG_PARAM2, param2) - } - } + fun loadData(){ + nameList.add(ListItemModel(1,"Sample 1")) + nameList.add(ListItemModel(2,"Sample 2")) + nameList.add(ListItemModel(3,"Sample 3")) + nameList.add(ListItemModel(4,"Sample 4")) + nameList.add(ListItemModel(5,"Sample 5")) + nameList.add(ListItemModel(6,"Sample 6")) } -} \ No newline at end of file +} diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Models/ListItemModel.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Models/ListItemModel.kt new file mode 100644 index 0000000..48e519e --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Models/ListItemModel.kt @@ -0,0 +1,6 @@ +package com.example.brzodolokacije.Models + +data class ListItemModel ( + val id:Int , + val name: String + ) \ No newline at end of file diff --git a/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_home.xml b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_home.xml index 2395f65..f735bec 100644 --- a/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_home.xml +++ b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_home.xml @@ -1,14 +1,16 @@ - - + android:layout_width="match_parent" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintStart_toStartOf="parent"/> \ No newline at end of file diff --git a/Client/BrzoDoLokacije/app/src/main/res/layout/list_item.xml b/Client/BrzoDoLokacije/app/src/main/res/layout/list_item.xml new file mode 100644 index 0000000..fe53ac5 --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/main/res/layout/list_item.xml @@ -0,0 +1,24 @@ + + + + + \ No newline at end of file -- cgit v1.2.3 From 67b51b69ba37c328d7deedbf118503854c8963da Mon Sep 17 00:00:00 2001 From: Ognjen Cirkovic Date: Sun, 30 Oct 2022 16:47:17 +0100 Subject: Dodat navigacioni meni i povezan sa fragmentima. --- .../debug/res/drawable-anydpi/ic_nav_addpost.xml | 11 +++++ .../debug/res/drawable-anydpi/ic_nav_browse.xml | 11 +++++ .../src/debug/res/drawable-anydpi/ic_nav_home.xml | 11 +++++ .../debug/res/drawable-anydpi/ic_nav_profile.xml | 11 +++++ .../src/debug/res/drawable-hdpi/ic_nav_addpost.png | Bin 0 -> 538 bytes .../src/debug/res/drawable-hdpi/ic_nav_browse.png | Bin 0 -> 552 bytes .../src/debug/res/drawable-hdpi/ic_nav_home.png | Bin 0 -> 265 bytes .../src/debug/res/drawable-hdpi/ic_nav_profile.png | Bin 0 -> 312 bytes .../src/debug/res/drawable-mdpi/ic_nav_addpost.png | Bin 0 -> 306 bytes .../src/debug/res/drawable-mdpi/ic_nav_browse.png | Bin 0 -> 350 bytes .../src/debug/res/drawable-mdpi/ic_nav_home.png | Bin 0 -> 239 bytes .../src/debug/res/drawable-mdpi/ic_nav_profile.png | Bin 0 -> 234 bytes .../debug/res/drawable-xhdpi/ic_nav_addpost.png | Bin 0 -> 725 bytes .../src/debug/res/drawable-xhdpi/ic_nav_browse.png | Bin 0 -> 774 bytes .../src/debug/res/drawable-xhdpi/ic_nav_home.png | Bin 0 -> 402 bytes .../debug/res/drawable-xhdpi/ic_nav_profile.png | Bin 0 -> 385 bytes .../debug/res/drawable-xxhdpi/ic_nav_addpost.png | Bin 0 -> 1142 bytes .../debug/res/drawable-xxhdpi/ic_nav_browse.png | Bin 0 -> 1239 bytes .../src/debug/res/drawable-xxhdpi/ic_nav_home.png | Bin 0 -> 617 bytes .../debug/res/drawable-xxhdpi/ic_nav_profile.png | Bin 0 -> 559 bytes .../app/src/main/AndroidManifest.xml | 10 ++++- .../Activities/NavigationActivity.kt | 46 +++++++++++++++++++++ .../brzodolokacije/Fragments/FragmentAddPost.kt | 2 +- .../brzodolokacije/Fragments/FragmentBrowse.kt | 2 +- .../brzodolokacije/Fragments/FragmentHome.kt | 2 +- .../brzodolokacije/Fragments/FragmentProfile.kt | 2 +- .../src/main/res/layout/activity_navigation.xml | 28 +++++++++++++ .../app/src/main/res/menu/bottom_nav_menu.xml | 19 +++++++++ 28 files changed, 149 insertions(+), 6 deletions(-) create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-anydpi/ic_nav_addpost.xml create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-anydpi/ic_nav_browse.xml create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-anydpi/ic_nav_home.xml create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-anydpi/ic_nav_profile.xml create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-hdpi/ic_nav_addpost.png create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-hdpi/ic_nav_browse.png create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-hdpi/ic_nav_home.png create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-hdpi/ic_nav_profile.png create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-mdpi/ic_nav_addpost.png create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-mdpi/ic_nav_browse.png create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-mdpi/ic_nav_home.png create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-mdpi/ic_nav_profile.png create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-xhdpi/ic_nav_addpost.png create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-xhdpi/ic_nav_browse.png create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-xhdpi/ic_nav_home.png create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-xhdpi/ic_nav_profile.png create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-xxhdpi/ic_nav_addpost.png create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-xxhdpi/ic_nav_browse.png create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-xxhdpi/ic_nav_home.png create mode 100644 Client/BrzoDoLokacije/app/src/debug/res/drawable-xxhdpi/ic_nav_profile.png create mode 100644 Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/NavigationActivity.kt create mode 100644 Client/BrzoDoLokacije/app/src/main/res/layout/activity_navigation.xml create mode 100644 Client/BrzoDoLokacije/app/src/main/res/menu/bottom_nav_menu.xml (limited to 'Client') diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-anydpi/ic_nav_addpost.xml b/Client/BrzoDoLokacije/app/src/debug/res/drawable-anydpi/ic_nav_addpost.xml new file mode 100644 index 0000000..768552f --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/debug/res/drawable-anydpi/ic_nav_addpost.xml @@ -0,0 +1,11 @@ + + + diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-anydpi/ic_nav_browse.xml b/Client/BrzoDoLokacije/app/src/debug/res/drawable-anydpi/ic_nav_browse.xml new file mode 100644 index 0000000..8beebb7 --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/debug/res/drawable-anydpi/ic_nav_browse.xml @@ -0,0 +1,11 @@ + + + diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-anydpi/ic_nav_home.xml b/Client/BrzoDoLokacije/app/src/debug/res/drawable-anydpi/ic_nav_home.xml new file mode 100644 index 0000000..cd6cfd6 --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/debug/res/drawable-anydpi/ic_nav_home.xml @@ -0,0 +1,11 @@ + + + diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-anydpi/ic_nav_profile.xml b/Client/BrzoDoLokacije/app/src/debug/res/drawable-anydpi/ic_nav_profile.xml new file mode 100644 index 0000000..198e013 --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/debug/res/drawable-anydpi/ic_nav_profile.xml @@ -0,0 +1,11 @@ + + + diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-hdpi/ic_nav_addpost.png b/Client/BrzoDoLokacije/app/src/debug/res/drawable-hdpi/ic_nav_addpost.png new file mode 100644 index 0000000..5a45901 Binary files /dev/null and b/Client/BrzoDoLokacije/app/src/debug/res/drawable-hdpi/ic_nav_addpost.png differ diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-hdpi/ic_nav_browse.png b/Client/BrzoDoLokacije/app/src/debug/res/drawable-hdpi/ic_nav_browse.png new file mode 100644 index 0000000..79684b3 Binary files /dev/null and b/Client/BrzoDoLokacije/app/src/debug/res/drawable-hdpi/ic_nav_browse.png differ diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-hdpi/ic_nav_home.png b/Client/BrzoDoLokacije/app/src/debug/res/drawable-hdpi/ic_nav_home.png new file mode 100644 index 0000000..c6da75f Binary files /dev/null and b/Client/BrzoDoLokacije/app/src/debug/res/drawable-hdpi/ic_nav_home.png differ diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-hdpi/ic_nav_profile.png b/Client/BrzoDoLokacije/app/src/debug/res/drawable-hdpi/ic_nav_profile.png new file mode 100644 index 0000000..d065a96 Binary files /dev/null and b/Client/BrzoDoLokacije/app/src/debug/res/drawable-hdpi/ic_nav_profile.png differ diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-mdpi/ic_nav_addpost.png b/Client/BrzoDoLokacije/app/src/debug/res/drawable-mdpi/ic_nav_addpost.png new file mode 100644 index 0000000..6ab5495 Binary files /dev/null and b/Client/BrzoDoLokacije/app/src/debug/res/drawable-mdpi/ic_nav_addpost.png differ diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-mdpi/ic_nav_browse.png b/Client/BrzoDoLokacije/app/src/debug/res/drawable-mdpi/ic_nav_browse.png new file mode 100644 index 0000000..4356671 Binary files /dev/null and b/Client/BrzoDoLokacije/app/src/debug/res/drawable-mdpi/ic_nav_browse.png differ diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-mdpi/ic_nav_home.png b/Client/BrzoDoLokacije/app/src/debug/res/drawable-mdpi/ic_nav_home.png new file mode 100644 index 0000000..cb1f92f Binary files /dev/null and b/Client/BrzoDoLokacije/app/src/debug/res/drawable-mdpi/ic_nav_home.png differ diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-mdpi/ic_nav_profile.png b/Client/BrzoDoLokacije/app/src/debug/res/drawable-mdpi/ic_nav_profile.png new file mode 100644 index 0000000..9de92dc Binary files /dev/null and b/Client/BrzoDoLokacije/app/src/debug/res/drawable-mdpi/ic_nav_profile.png differ diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-xhdpi/ic_nav_addpost.png b/Client/BrzoDoLokacije/app/src/debug/res/drawable-xhdpi/ic_nav_addpost.png new file mode 100644 index 0000000..d58180b Binary files /dev/null and b/Client/BrzoDoLokacije/app/src/debug/res/drawable-xhdpi/ic_nav_addpost.png differ diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-xhdpi/ic_nav_browse.png b/Client/BrzoDoLokacije/app/src/debug/res/drawable-xhdpi/ic_nav_browse.png new file mode 100644 index 0000000..26b1bf3 Binary files /dev/null and b/Client/BrzoDoLokacije/app/src/debug/res/drawable-xhdpi/ic_nav_browse.png differ diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-xhdpi/ic_nav_home.png b/Client/BrzoDoLokacije/app/src/debug/res/drawable-xhdpi/ic_nav_home.png new file mode 100644 index 0000000..f6c17d5 Binary files /dev/null and b/Client/BrzoDoLokacije/app/src/debug/res/drawable-xhdpi/ic_nav_home.png differ diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-xhdpi/ic_nav_profile.png b/Client/BrzoDoLokacije/app/src/debug/res/drawable-xhdpi/ic_nav_profile.png new file mode 100644 index 0000000..8c2ff94 Binary files /dev/null and b/Client/BrzoDoLokacije/app/src/debug/res/drawable-xhdpi/ic_nav_profile.png differ diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-xxhdpi/ic_nav_addpost.png b/Client/BrzoDoLokacije/app/src/debug/res/drawable-xxhdpi/ic_nav_addpost.png new file mode 100644 index 0000000..573a645 Binary files /dev/null and b/Client/BrzoDoLokacije/app/src/debug/res/drawable-xxhdpi/ic_nav_addpost.png differ diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-xxhdpi/ic_nav_browse.png b/Client/BrzoDoLokacije/app/src/debug/res/drawable-xxhdpi/ic_nav_browse.png new file mode 100644 index 0000000..90f6390 Binary files /dev/null and b/Client/BrzoDoLokacije/app/src/debug/res/drawable-xxhdpi/ic_nav_browse.png differ diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-xxhdpi/ic_nav_home.png b/Client/BrzoDoLokacije/app/src/debug/res/drawable-xxhdpi/ic_nav_home.png new file mode 100644 index 0000000..40d14fb Binary files /dev/null and b/Client/BrzoDoLokacije/app/src/debug/res/drawable-xxhdpi/ic_nav_home.png differ diff --git a/Client/BrzoDoLokacije/app/src/debug/res/drawable-xxhdpi/ic_nav_profile.png b/Client/BrzoDoLokacije/app/src/debug/res/drawable-xxhdpi/ic_nav_profile.png new file mode 100644 index 0000000..99793cc Binary files /dev/null and b/Client/BrzoDoLokacije/app/src/debug/res/drawable-xxhdpi/ic_nav_profile.png differ diff --git a/Client/BrzoDoLokacije/app/src/main/AndroidManifest.xml b/Client/BrzoDoLokacije/app/src/main/AndroidManifest.xml index e0a5a2b..93463e8 100644 --- a/Client/BrzoDoLokacije/app/src/main/AndroidManifest.xml +++ b/Client/BrzoDoLokacije/app/src/main/AndroidManifest.xml @@ -16,8 +16,14 @@ android:usesCleartextTraffic="true" tools:targetApi="31"> + android:name=".NavigationActivity" + android:exported="false"> + + + + diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/NavigationActivity.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/NavigationActivity.kt new file mode 100644 index 0000000..0933460 --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/NavigationActivity.kt @@ -0,0 +1,46 @@ +package com.example.brzodolokacije.Activities + +import androidx.appcompat.app.AppCompatActivity +import android.os.Bundle +import android.view.View +import android.widget.Button +import androidx.fragment.app.Fragment +import com.example.brzodolokacije.Fragments.FragmentAddPost +import com.example.brzodolokacije.Fragments.FragmentBrowse +import com.example.brzodolokacije.Fragments.FragmentHome +import com.example.brzodolokacije.Fragments.FragmentProfile +import com.example.brzodolokacije.R +import com.google.android.material.bottomnavigation.BottomNavigationView + +class NavigationActivity : AppCompatActivity() { + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + setContentView(R.layout.activity_navigation) + + val homeFragment=FragmentHome() + val browseFragment=FragmentBrowse() + val addPostFragment=FragmentAddPost() + val profileFragment=FragmentProfile() + val bottomNav=findViewById(R.id.bottomNavigationView) as BottomNavigationView + setCurrentFragment(homeFragment) + bottomNav.setOnNavigationItemSelectedListener { + when(it.itemId){ + R.id.navHome->setCurrentFragment(homeFragment) + R.id.navAddPost->setCurrentFragment(addPostFragment) + R.id.navBrowse->setCurrentFragment(browseFragment) + R.id.navProfile->setCurrentFragment(profileFragment) + + } + true + } + + + } + private fun setCurrentFragment(fragment: Fragment)= + supportFragmentManager.beginTransaction().apply { + replace(R.id.flNavigationFragment,fragment) + commit() + } + + +} \ No newline at end of file diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentAddPost.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentAddPost.kt index dff3948..855cffc 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentAddPost.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentAddPost.kt @@ -17,7 +17,7 @@ private const val ARG_PARAM2 = "param2" * Use the [FragmentAddPost.newInstance] factory method to * create an instance of this fragment. */ -class FragmentAddPost : Fragment() { +class FragmentAddPost : Fragment(R.layout.fragment_add_post) { // TODO: Rename and change types of parameters private var param1: String? = null private var param2: String? = null diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentBrowse.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentBrowse.kt index 7ac572f..1bd98a0 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentBrowse.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentBrowse.kt @@ -17,7 +17,7 @@ private const val ARG_PARAM2 = "param2" * Use the [FragmentBrowse.newInstance] factory method to * create an instance of this fragment. */ -class FragmentBrowse : Fragment() { +class FragmentBrowse : Fragment(R.layout.fragment_browse) { // TODO: Rename and change types of parameters private var param1: String? = null private var param2: String? = null diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentHome.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentHome.kt index 397e1cf..9544cd6 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentHome.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentHome.kt @@ -17,7 +17,7 @@ private const val ARG_PARAM2 = "param2" * Use the [FragmentHome.newInstance] factory method to * create an instance of this fragment. */ -class FragmentHome : Fragment() { +class FragmentHome : Fragment(R.layout.fragment_home) { // TODO: Rename and change types of parameters private var param1: String? = null private var param2: String? = null diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentProfile.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentProfile.kt index 87c9d56..a63bc3c 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentProfile.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentProfile.kt @@ -17,7 +17,7 @@ private const val ARG_PARAM2 = "param2" * Use the [FragmentProfile.newInstance] factory method to * create an instance of this fragment. */ -class FragmentProfile : Fragment() { +class FragmentProfile : Fragment(R.layout.fragment_profile) { // TODO: Rename and change types of parameters private var param1: String? = null private var param2: String? = null diff --git a/Client/BrzoDoLokacije/app/src/main/res/layout/activity_navigation.xml b/Client/BrzoDoLokacije/app/src/main/res/layout/activity_navigation.xml new file mode 100644 index 0000000..afe1bbf --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/main/res/layout/activity_navigation.xml @@ -0,0 +1,28 @@ + + + + + + + \ No newline at end of file diff --git a/Client/BrzoDoLokacije/app/src/main/res/menu/bottom_nav_menu.xml b/Client/BrzoDoLokacije/app/src/main/res/menu/bottom_nav_menu.xml new file mode 100644 index 0000000..da6577e --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/main/res/menu/bottom_nav_menu.xml @@ -0,0 +1,19 @@ + + + + + + + \ No newline at end of file -- cgit v1.2.3 From daa647685b77452cdf92784dfb9f9403fa3986eb Mon Sep 17 00:00:00 2001 From: Ognjen Cirkovic Date: Sun, 30 Oct 2022 16:56:38 +0100 Subject: Na uspesnom log in-u korisnik menja stranicu. Ispravljene metode za upit ka bazi na back end-u. --- Backend/Api/Api/Services/UserService.cs | 14 +++++++------- .../com/example/brzodolokacije/Fragments/FragmentLogin.kt | 5 +++++ 2 files changed, 12 insertions(+), 7 deletions(-) (limited to 'Client') diff --git a/Backend/Api/Api/Services/UserService.cs b/Backend/Api/Api/Services/UserService.cs index 7c00c05..8e10a15 100644 --- a/Backend/Api/Api/Services/UserService.cs +++ b/Backend/Api/Api/Services/UserService.cs @@ -38,12 +38,12 @@ namespace Api.Services public async Task getUserByEmail(string email) { - return await _users.Find(x => x.email == email).SingleAsync(); + return await _users.Find(x => x.email == email).SingleOrDefaultAsync(); } public async Task getUserByUsername(string username) { - return await _users.Find(x => x.username == username).SingleAsync(); + return await _users.Find(x => x.username == username).SingleOrDefaultAsync(); } public async Task> getUsers() @@ -53,7 +53,7 @@ namespace Api.Services public async Task getUserById(string id) { - return await _users.Find(user => user._id == id).SingleAsync(); + return await _users.Find(user => user._id == id).SingleOrDefaultAsync(); } @@ -62,7 +62,7 @@ namespace Api.Services /* vraca broj izmenjenih korisnika * ovako je odradjeno da bi radilo i kada se posalje potpuno novi objekat User-a bez generisanog _id polja */ - User foundUser = await _users.Find(x => x.email == user.email).SingleAsync(); + User foundUser = await _users.Find(x => x.email == user.email).SingleOrDefaultAsync(); if (foundUser!=null && user._id==null) { user._id = foundUser._id; @@ -131,7 +131,7 @@ namespace Api.Services public async Task VerifyUser(string _id) { - User user = await _users.FindAsync(x => x._id==_id).Result.FirstAsync(); + User user = await _users.FindAsync(x => x._id==_id).Result.FirstOrDefaultAsync(); if(user != null) { user.verified = true; @@ -153,7 +153,7 @@ namespace Api.Services public async Task Login(Login login) { - User user = await _users.FindAsync(x => x.email == login.email).Result.FirstAsync(); // add && x.verified == true after implementing + User user = await _users.FindAsync(x => x.email == login.email).Result.FirstOrDefaultAsync(); // add && x.verified == true after implementing if(user != null && checkPassword(login.password, user.password)) { return _jwtService.GenToken(user); @@ -166,7 +166,7 @@ namespace Api.Services if (_httpContext.HttpContext.User.FindFirstValue("id") != null) { id = _httpContext.HttpContext.User.FindFirstValue("id").ToString(); - var _id = await _users.FindAsync(x => x._id == id).Result.FirstAsync(); + var _id = await _users.FindAsync(x => x._id == id).Result.FirstOrDefaultAsync(); if (_id == null) id = null; } diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentLogin.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentLogin.kt index 3bc62bd..478a08b 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentLogin.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentLogin.kt @@ -1,5 +1,6 @@ package com.example.brzodolokacije.Fragments +import android.content.Intent import android.graphics.Color import android.os.Bundle import androidx.fragment.app.Fragment @@ -10,6 +11,8 @@ import android.widget.Button import android.widget.EditText import android.widget.TextView import android.widget.Toast +import com.example.brzodolokacije.Activities.ActivityLoginRegister +import com.example.brzodolokacije.Activities.NavigationActivity import com.example.brzodolokacije.Interfaces.IAuthApi import com.example.brzodolokacije.Models.Auth.Login import com.example.brzodolokacije.R @@ -74,6 +77,8 @@ class FragmentLogin : Fragment() { ).show(); //TODO(navigate to main page) SharedPreferencesHelper.addValue("jwt",token,activity!!) + val intent= Intent(activity!!, NavigationActivity::class.java) + startActivity(intent) }else{ if(response.errorBody()!=null) Toast.makeText(activity, response.errorBody()!!.string(), Toast.LENGTH_LONG).show(); -- cgit v1.2.3 From 913e9e8269bf595ba06d69114ec8e6a69caf32f9 Mon Sep 17 00:00:00 2001 From: Ognjen Cirkovic Date: Sun, 30 Oct 2022 16:59:40 +0100 Subject: Text na fragmentu prikazuje ime trenuton fragmenta. --- Client/BrzoDoLokacije/app/src/main/res/layout/fragment_add_post.xml | 2 +- Client/BrzoDoLokacije/app/src/main/res/layout/fragment_browse.xml | 2 +- Client/BrzoDoLokacije/app/src/main/res/layout/fragment_home.xml | 2 +- Client/BrzoDoLokacije/app/src/main/res/layout/fragment_profile.xml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) (limited to 'Client') diff --git a/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_add_post.xml b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_add_post.xml index 573032e..9bed54c 100644 --- a/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_add_post.xml +++ b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_add_post.xml @@ -9,6 +9,6 @@ + android:text="Post Add" /> \ No newline at end of file diff --git a/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_browse.xml b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_browse.xml index 666acb9..3287683 100644 --- a/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_browse.xml +++ b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_browse.xml @@ -9,6 +9,6 @@ + android:text="Browse" /> \ No newline at end of file diff --git a/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_home.xml b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_home.xml index 2395f65..ee5503f 100644 --- a/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_home.xml +++ b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_home.xml @@ -9,6 +9,6 @@ + android:text="Home" /> \ No newline at end of file diff --git a/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_profile.xml b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_profile.xml index 6a5ff4a..5fb3efe 100644 --- a/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_profile.xml +++ b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_profile.xml @@ -9,6 +9,6 @@ + android:text="Profile" /> \ No newline at end of file -- cgit v1.2.3