From 6e7afb7ae49eff07f9403e006dbe102e402a0441 Mon Sep 17 00:00:00 2001 From: TAMARA JERINIC Date: Sun, 27 Nov 2022 23:39:08 +0100 Subject: Izmenjen izgled activity_add_post i activity_capture_post. --- .../.idea/deploymentTargetDropDown.xml | 17 +++++ .../brzodolokacije/Activities/ActivityAddPost.kt | 29 ++++++-- .../Activities/ActivityCapturePost.kt | 34 ++++++--- .../Activities/ActivityUserProfile.kt | 36 ++++++++- .../Fragments/FragmentShowUserPosts.kt | 28 +++++++ .../brzodolokacije/Services/RetrofitHelper.kt | 4 +- .../res/drawable/ic_baseline_description_24.xml | 5 ++ .../src/main/res/drawable/ic_baseline_tag_24.xml | 5 ++ .../app/src/main/res/layout/activity_add_post.xml | 78 ++++++++----------- .../src/main/res/layout/activity_capture_post.xml | 87 +++++++++------------- .../src/main/res/layout/activity_user_profile.xml | 10 +-- .../main/res/layout/fragment_show_user_posts.xml | 17 +++++ .../src/main/res/layout/post_item_home_page.xml | 9 +-- .../app/src/main/res/values/styles.xml | 2 +- 14 files changed, 228 insertions(+), 133 deletions(-) create mode 100644 Client/BrzoDoLokacije/.idea/deploymentTargetDropDown.xml create mode 100644 Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentShowUserPosts.kt create mode 100644 Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_description_24.xml create mode 100644 Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_tag_24.xml create mode 100644 Client/BrzoDoLokacije/app/src/main/res/layout/fragment_show_user_posts.xml diff --git a/Client/BrzoDoLokacije/.idea/deploymentTargetDropDown.xml b/Client/BrzoDoLokacije/.idea/deploymentTargetDropDown.xml new file mode 100644 index 0000000..6d9839f --- /dev/null +++ b/Client/BrzoDoLokacije/.idea/deploymentTargetDropDown.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityAddPost.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityAddPost.kt index 2d305a6..995ef4d 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityAddPost.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityAddPost.kt @@ -15,6 +15,7 @@ import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.widget.AppCompatImageView import androidx.core.app.ActivityCompat import androidx.core.content.ContextCompat +import androidx.core.view.isGone import androidx.core.view.isVisible import androidx.core.view.setMargins import com.example.brzodolokacije.Models.Location @@ -57,6 +58,9 @@ class ActivityAddPost : AppCompatActivity() { var longitude:Double=incorectCoord var latitude:Double=incorectCoord var progressDialog:ProgressDialog?=null + private lateinit var addDescription:Button + + //private var paths :ArrayList?=null private var place=0; override fun onCreate(savedInstanceState: Bundle?) { @@ -75,7 +79,7 @@ class ActivityAddPost : AppCompatActivity() { showNextImage=findViewById(R.id.nextImage) as Button showPreviousImage=findViewById(R.id.previousImage) as Button switcher=findViewById(R.id.isActivityAddPostSwitcher) as ImageSwitcher - location=findViewById(R.id.etActivityAddPostLocation) as EditText + //location=findViewById(R.id.etActivityAddPostLocation) as EditText description=findViewById(R.id.etActivityAddPostDescription) as EditText post=findViewById(R.id.btnActivityAddPostPost) as Button addLocation=findViewById(R.id.btnActivityAddPostAddLocation) as Button @@ -83,6 +87,13 @@ class ActivityAddPost : AppCompatActivity() { tagButtonAdd = findViewById(R.id.btnActivityAddPostAddTag) as Button tagLayout = findViewById(R.id.llTags) as LinearLayout + addDescription=findViewById(R.id.tvActivityAddPostDescriptiontext)as Button + + tagText.isGone=true + tagText.isVisible=false + description.isGone=true + description.isVisible=false + progressDialog= ProgressDialog(this) progressDialog!!.setMessage("Molimo sacekajte!!!") progressDialog!!.setCancelable(false) @@ -100,9 +111,15 @@ class ActivityAddPost : AppCompatActivity() { myIntent.putExtra("search",location.text.toString()) startActivityForResult(myIntent,LOCATIONREQCODE) } - + addDescription.setOnClickListener { + description.isGone=false + description.isVisible=true + } //dodavanje i brisanje tagova tagButtonAdd.setOnClickListener { + tagText.isGone=false + tagText.isVisible=true + if(tagList.count()<5) { var tagstr = tagText.text.toString() var newbtn = Button(this) @@ -179,15 +196,15 @@ class ActivityAddPost : AppCompatActivity() { } post.setOnClickListener{ - locationString=location.text.toString().trim() + //locationString=location.text.toString().trim() descriptionString=description.text.toString().trim() //prazan unos? - if(locationString.isEmpty()) { + /* if(locationString.isEmpty()) { location.hint="Unesite naziv lokaciju" location.setHintTextColor(Color.RED) - } + }*/ if(descriptionString.isEmpty()) { - description.hint="Unesite lokaciju" + description.hint="Unesite opis" description.setHintTextColor(Color.RED) } if(longitude!=incorectCoord && latitude!=incorectCoord){ diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityCapturePost.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityCapturePost.kt index b02abad..2321f18 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityCapturePost.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityCapturePost.kt @@ -17,6 +17,7 @@ import androidx.activity.result.contract.ActivityResultContracts import androidx.appcompat.app.AppCompatActivity import androidx.core.app.ActivityCompat import androidx.core.content.ContextCompat +import androidx.core.view.isGone import androidx.core.view.isVisible import androidx.core.view.setMargins import com.example.brzodolokacije.Models.Location @@ -40,7 +41,7 @@ import java.io.InputStream class ActivityCapturePost : AppCompatActivity() { private lateinit var takePhoto: Button - private lateinit var location: EditText + //private lateinit var location: EditText private lateinit var description: EditText private lateinit var locationString: String private lateinit var descriptionString: String @@ -54,6 +55,7 @@ class ActivityCapturePost : AppCompatActivity() { private lateinit var tagButtonAdd:Button private lateinit var tagList: MutableList private var tagidcounter:Int = 0 + private lateinit var addDescription:Button val incorectCoord:Double=1000.0 val LOCATIONREQCODE=123 @@ -68,7 +70,7 @@ class ActivityCapturePost : AppCompatActivity() { tagButtons= mutableListOf() tagidcounter = 0 - location = findViewById(R.id.etActivityCapturePostLocation) as EditText + //location = findViewById(R.id.etActivityCapturePostLocation) as EditText description = findViewById(R.id.etActivityCapturePostDescription) as EditText post = findViewById(R.id.btnActivityCapturePostPost) as Button showImage = findViewById(R.id.ivActivityCapturePostImage) as ImageView @@ -78,14 +80,28 @@ class ActivityCapturePost : AppCompatActivity() { tagButtonAdd = findViewById(R.id.btnActivityAddPostAddTagCap) as Button tagLayout = findViewById(R.id.llTagsCap) as LinearLayout + addDescription=findViewById(R.id.tvActivityCapturePostDescriptiontext)as Button + + progressDialog= ProgressDialog(this) progressDialog!!.setMessage("Molimo sacekajte!!!") progressDialog!!.setCancelable(false) progressDialog!!.setCanceledOnTouchOutside(false) + tagText.isGone=true + tagText.isVisible=false + description.isGone=true + description.isVisible=false + addDescription.setOnClickListener { + description.isGone=false + description.isVisible=true + } //dodavanje i brisanje tagova tagButtonAdd.setOnClickListener { + tagText.isGone=false + tagText.isVisible=true + if(tagList.count()<5) { var tagstr = tagText.text.toString() var newbtn = Button(this) @@ -168,8 +184,8 @@ class ActivityCapturePost : AppCompatActivity() { addLocation.setOnClickListener { val myIntent = Intent(this, MapsActivity::class.java) - if(location.text!=null && !location.text.trim().equals("")) - myIntent.putExtra("search",location.text.toString()) + // if(location.text!=null && !location.text.trim().equals("")) + // myIntent.putExtra("search",location.text.toString()) startActivityForResult(myIntent,LOCATIONREQCODE) } @@ -198,12 +214,12 @@ class ActivityCapturePost : AppCompatActivity() { } post.setOnClickListener { - locationString = location.text.toString().trim() + // locationString = location.text.toString().trim() descriptionString = description.text.toString().trim() //prazan unos? if (locationString.isEmpty()) { - location.hint = "Unesite lokaciju" - location.setHintTextColor(Color.RED) + // location.hint = "Unesite lokaciju" + // location.setHintTextColor(Color.RED) }else if (descriptionString.isEmpty()) { description.hint = "Unesite opis" @@ -224,8 +240,8 @@ class ActivityCapturePost : AppCompatActivity() { longitude=bundle!!.getDouble("longitude",incorectCoord) latitude=bundle!!.getDouble("latitude",incorectCoord) var locName=bundle!!.getString("name") - if(location.text.toString().trim().equals("") && locName!=null && !locName.toString().trim().equals("")) - location.setText(locName, TextView.BufferType.EDITABLE) + //if(location.text.toString().trim().equals("") && locName!=null && !locName.toString().trim().equals("")) + // location.setText(locName, TextView.BufferType.EDITABLE) } } var f:File?=null diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityUserProfile.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityUserProfile.kt index 50c2b0e..56e9190 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityUserProfile.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityUserProfile.kt @@ -1,10 +1,17 @@ package com.example.brzodolokacije.Activities import android.os.Bundle +import android.widget.Button +import android.widget.FrameLayout +import android.widget.ImageButton import android.widget.ImageView import android.widget.TextView +import androidx.annotation.DrawableRes import androidx.appcompat.app.AppCompatActivity +import androidx.fragment.app.Fragment import com.bumptech.glide.Glide +import com.example.brzodolokacije.Fragments.FragmentShowUserPosts +import com.example.brzodolokacije.Models.User import com.example.brzodolokacije.Models.UserReceive import com.example.brzodolokacije.R import com.example.brzodolokacije.Services.RetrofitHelper @@ -16,7 +23,10 @@ class ActivityUserProfile : AppCompatActivity() { private lateinit var followersNumber:TextView private lateinit var followingNumber:TextView private lateinit var profilePicture:ImageView - + private lateinit var followUser: ImageButton + private lateinit var showUserPosts: Button + private lateinit var fragmentContainer: FrameLayout + private lateinit var myObject:UserReceive override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_user_profile) @@ -26,16 +36,20 @@ class ActivityUserProfile : AppCompatActivity() { followersNumber=findViewById(R.id.tvActivityUserProfileFollowersNo) followingNumber=findViewById(R.id.tvActivityUserProfileFollowNo) profilePicture=findViewById(R.id.tvActivityProfileProfilePicture) + followUser=findViewById(R.id.ibActivityUserProfileFollow) + showUserPosts=findViewById(R.id.btnActivityUserProfileShowPosts) + fragmentContainer=findViewById(R.id.flActivityProfileFragmentContainer) + val jsonMyObject: String val extras = intent.extras if (extras != null) { jsonMyObject = extras.getString("user")!! - val myObject: UserReceive = Gson().fromJson(jsonMyObject, UserReceive::class.java) + myObject= Gson().fromJson(jsonMyObject, UserReceive::class.java) name.text=myObject.name postsNumber.text=myObject.postNumber.toString() - followersNumber.text="0" - followingNumber.text="0" + followersNumber.text=myObject.followers.toString() + followingNumber.text=myObject.following.toString() if(myObject.pfp!=null) { Glide.with(this) @@ -45,5 +59,19 @@ class ActivityUserProfile : AppCompatActivity() { } } + followUser.setOnClickListener{ + + } + + showUserPosts.setOnClickListener { + val bundle = Bundle() + bundle.putString("user", Gson().toJson(myObject)) + val fragment = Fragment() + fragment.arguments = bundle + getSupportFragmentManager().beginTransaction() + .replace(R.id.flActivityProfileFragmentContainer,FragmentShowUserPosts()).commit() + + } } + } \ No newline at end of file diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentShowUserPosts.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentShowUserPosts.kt new file mode 100644 index 0000000..6afd619 --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentShowUserPosts.kt @@ -0,0 +1,28 @@ +package com.example.brzodolokacije.Fragments + +import android.content.Intent.getIntent +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import androidx.fragment.app.Fragment +import com.example.brzodolokacije.Models.UserReceive +import com.google.gson.Gson + + +class FragmentShowUserPosts : Fragment() { + + + override fun onCreateView( + inflater: LayoutInflater, container: ViewGroup?, + savedInstanceState: Bundle? + ): View? { + // Inflate the layout for this fragment + var view=inflater.inflate(com.example.brzodolokacije.R.layout.fragment_show_user_posts, container, false) + + return view + } + + + +} \ No newline at end of file diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Services/RetrofitHelper.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Services/RetrofitHelper.kt index 43c2109..88685e4 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Services/RetrofitHelper.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Services/RetrofitHelper.kt @@ -7,8 +7,8 @@ import retrofit2.converter.gson.GsonConverterFactory object RetrofitHelper { - val baseUrl="http://10.0.2.2:5279" - //val baseUrl="http://147.91.204.115:10082" + //val baseUrl="http://10.0.2.2:5279" + val baseUrl="http://147.91.204.115:10082" private var retrofit_noauth: IBackendApi? = null private var retrofit_auth: IBackendApi? = null diff --git a/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_description_24.xml b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_description_24.xml new file mode 100644 index 0000000..6c09587 --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_description_24.xml @@ -0,0 +1,5 @@ + + + diff --git a/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_tag_24.xml b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_tag_24.xml new file mode 100644 index 0000000..608a7a3 --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_tag_24.xml @@ -0,0 +1,5 @@ + + + diff --git a/Client/BrzoDoLokacije/app/src/main/res/layout/activity_add_post.xml b/Client/BrzoDoLokacije/app/src/main/res/layout/activity_add_post.xml index fbe2230..96ac3ff 100644 --- a/Client/BrzoDoLokacije/app/src/main/res/layout/activity_add_post.xml +++ b/Client/BrzoDoLokacije/app/src/main/res/layout/activity_add_post.xml @@ -46,66 +46,47 @@ tools:ignore="SpeakableTextPresentCheck" />