Skip to content

Commit

Permalink
soem updates
Browse files Browse the repository at this point in the history
  • Loading branch information
vavali08 committed Feb 11, 2024
1 parent dbf05e9 commit 74878a9
Show file tree
Hide file tree
Showing 6 changed files with 125 additions and 48 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,9 @@ import androidx.fragment.app.FragmentTransaction
import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import com.pennapps.labs.pennmobile.adapters.SublettingListAdapter
import com.pennapps.labs.pennmobile.adapters.PostedSubletsListAdapter
import com.pennapps.labs.pennmobile.api.StudentLife
import com.pennapps.labs.pennmobile.classes.Sublet
import com.pennapps.labs.pennmobile.classes.SublettingModel
import com.pennapps.labs.pennmobile.classes.SublettingViewModel
import com.pennapps.labs.pennmobile.databinding.FragmentSubletterPostedListingsBinding
Expand All @@ -24,8 +25,8 @@ class SubletterPostedListingsFragment(private val dataModel: SublettingViewModel
//recyclerview adapters and layout manager
lateinit var sublettingRecyclerView: RecyclerView
lateinit var newLayoutManager: GridLayoutManager
lateinit var sublettingList: ArrayList<SublettingModel>
lateinit var myAdapter: SublettingListAdapter
lateinit var sublettingList: ArrayList<Sublet>
lateinit var myAdapter: PostedSubletsListAdapter

//api manager
private lateinit var mStudentLife: StudentLife
Expand Down Expand Up @@ -63,34 +64,10 @@ class SubletterPostedListingsFragment(private val dataModel: SublettingViewModel
if (sublettingList.isNotEmpty()) {
binding.postedNoListingsText.visibility = View.GONE;

/*
// Update the ConstraintSet to constrain addlistingbutton below sublettingRecyclerView
val constraintSet = ConstraintSet()
constraintSet.clone(binding.root)
constraintSet.connect(
binding.postedAddListingButton.id,
ConstraintSet.TOP,
binding.listingsRefreshLayout.id,
ConstraintSet.BOTTOM,
16 // You can adjust the margin as needed
)
// Constrain the bottom of sublettingRecyclerView to the top of addlistingbutton
constraintSet.connect(
binding.listingsRefreshLayout.id,
ConstraintSet.BOTTOM,
binding.postedAddListingButton.id,
ConstraintSet.TOP,
16 // You can adjust the margin as needed
)
constraintSet.applyTo(binding.root)
*/

}

myAdapter = SublettingListAdapter(context, sublettingList)
myAdapter = PostedSubletsListAdapter(sublettingList)
sublettingRecyclerView.adapter = myAdapter

}
Expand All @@ -109,9 +86,9 @@ class SubletterPostedListingsFragment(private val dataModel: SublettingViewModel
.commitAllowingStateLoss()
}

private fun setUpData(): ArrayList<SublettingModel> {
private fun setUpData(): ArrayList<Sublet> {

var sublettingList = ArrayList<SublettingModel>()
var sublettingList = ArrayList<Sublet>()

val sublettingImages = intArrayOf(
R.drawable.dining_gourmet_grocer,
Expand All @@ -137,14 +114,6 @@ class SubletterPostedListingsFragment(private val dataModel: SublettingViewModel
400
)

val sublettingNegotiablePrices = arrayOf(
true,
false,
true,
true,
false
)

val sublettingBedrooms = arrayOf(
2,
3,
Expand All @@ -162,9 +131,9 @@ class SubletterPostedListingsFragment(private val dataModel: SublettingViewModel
)

for (i in sublettingImages.indices)
sublettingList.add(SublettingModel(sublettingImages[i], sublettingNames[i],
sublettingPrices[i], sublettingNegotiablePrices[i], sublettingBedrooms[i],
sublettingBathrooms[i], 2, 2))
sublettingList.add(Sublet(title = sublettingNames[i],
minPrice = sublettingPrices[i], beds = sublettingBedrooms[i],
baths = sublettingBathrooms[i]))

return sublettingList

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
package com.pennapps.labs.pennmobile.adapters

import android.content.Context
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.ImageView
import android.widget.TextView
import androidx.fragment.app.FragmentTransaction
import androidx.recyclerview.widget.RecyclerView
import com.pennapps.labs.pennmobile.MainActivity
import com.pennapps.labs.pennmobile.R
import com.pennapps.labs.pennmobile.SublesseeDetailsFragment
import com.pennapps.labs.pennmobile.classes.Sublet
import com.pennapps.labs.pennmobile.classes.SublettingModel

class PostedSubletsListAdapter(var sublettingList: ArrayList<Sublet>):
RecyclerView.Adapter<PostedSubletsListAdapter.SublettingCardViewHolder>() {

private lateinit var mContext: Context
private lateinit var mActivity: MainActivity

class SublettingCardViewHolder(itemView: View): RecyclerView.ViewHolder(itemView) {

var listingImage = itemView.findViewById<ImageView>(R.id.subletting_cardview_image)
var listingTitle = itemView.findViewById<TextView>(R.id.subletting_cardview_title)
var listingPrice = itemView.findViewById<TextView>(R.id.subletting_cardview_price)
var listingRooms = itemView.findViewById<TextView>(R.id.subletting_cardview_rooms)
var listingDates = itemView.findViewById<TextView>(R.id.subletting_cardview_dates)

/* init {
itemView.setOnClickListener {
mActivity.supportFragmentManager.beginTransaction()
.replace(itemView.id, SubletteeFragment())
.addToBackStack(null)
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
.commit()
}
} */

}

override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): SublettingCardViewHolder {
val newView = LayoutInflater.from(parent.context).inflate(R.layout.subletting_cardview, parent, false)
mContext = parent.context
mActivity = mContext as MainActivity
return SublettingCardViewHolder(newView)
}

override fun onBindViewHolder(holder: SublettingCardViewHolder, position: Int) {

var mSublettingCard: Sublet = sublettingList[position]
//holder.listingImage.setImageResource(mSublettingCard.listingImage!!)
holder.listingTitle.text = mSublettingCard.title

//price, adding negotiable if price is negotiable
var price = "$" + mSublettingCard.minPrice.toString()
/*
if (mSublettingCard.isNegotiable == true) {
price += " (negotiable)"
}
*/
holder.listingPrice.text = price

val rooms = mSublettingCard.beds.toString() + " bd | " +
mSublettingCard.baths.toString() + " ba"
holder.listingRooms.text = rooms

holder.itemView.setOnClickListener {
mActivity.supportFragmentManager.beginTransaction()
.replace(R.id.content_frame, SublesseeDetailsFragment())
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
.addToBackStack(null)
.commit()
}
}

override fun getItemCount(): Int {
return sublettingList.size
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -216,4 +216,9 @@ void createSublet(
@Body Sublet sublet,
Callback<Sublet> callback);

@Headers({"Content-Type: application/json"})
@GET("/sublet/properties/")
Observable<List<Sublet>> getPostedSublets(
@Header("Authorization") String bearerToken);

}
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,17 @@ package com.pennapps.labs.pennmobile.classes

import android.app.Activity
import android.util.Log
import android.view.View
import android.widget.Toast
import androidx.preference.PreferenceManager
import com.pennapps.labs.pennmobile.MainActivity
import com.pennapps.labs.pennmobile.R
import com.pennapps.labs.pennmobile.adapters.GsrReservationsAdapter
import com.pennapps.labs.pennmobile.api.OAuth2NetworkManager
import com.pennapps.labs.pennmobile.api.StudentLife
import retrofit.ResponseCallback
import com.pennapps.labs.pennmobile.classes.Sublet
import kotlinx.android.synthetic.main.loading_panel.loadingPanel
import retrofit.RetrofitError
import retrofit.client.Response
import retrofit.Callback
Expand Down Expand Up @@ -44,6 +47,22 @@ class SublettingViewModel (private val activity: Activity, private val studentLi
}

})


studentLife.getPostedSublets(bearerToken).subscribe({ sublets ->
mActivity.runOnUiThread {
//return sublets

}
}, { throwable ->
mActivity.runOnUiThread {
Log.e(
"Posted Sublet Fragment",
"Could not load Posted Sublets",
throwable
)
}
})
}


Expand Down
2 changes: 1 addition & 1 deletion PennMobile/src/main/res/layout/fragment_gsr.xml
Original file line number Diff line number Diff line change
Expand Up @@ -214,7 +214,7 @@
<androidx.swiperefreshlayout.widget.SwipeRefreshLayout
android:id="@+id/gsr_refresh_layout"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="1.0"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,15 @@
android:layout_width="match_parent"
android:layout_height="match_parent">


<ImageView
android:id="@+id/posted_house_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintTop_toBottomOf="@id/posted_add_listing_button"
app:srcCompat="@drawable/subletting_house" />

<TextView
Expand All @@ -37,7 +38,7 @@
android:radius="30sp"
android:text="@string/add_listing"
android:textColor="@color/white"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />

Expand All @@ -48,17 +49,18 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="1.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toTopOf="@id/posted_add_listing_button"
app:layout_constraintTop_toBottomOf="@id/posted_add_listing_button"
app:layout_constraintVertical_bias="1.0">


<androidx.recyclerview.widget.RecyclerView
android:id="@+id/posted_sublets_list"
android:layout_width="match_parent"
android:layout_height="0dp"
android:scrollbars="none"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
app:layout_constraintTop_toBottomOf="parent"/>


</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

0 comments on commit 74878a9

Please sign in to comment.