Commit 4708f57e authored by Seatel's avatar Seatel

hide yes member.

parent ab53d5c7
package com.seatel.mobilehall.ui.home.adapter
import android.os.Handler
import android.os.Looper
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.ImageView
import androidx.core.view.size
import androidx.recyclerview.widget.RecyclerView
import androidx.viewpager2.widget.ViewPager2
import coil.load
import com.bumptech.glide.Glide
import com.seatel.mobilehall.R
import com.seatel.mobilehall.databinding.ItemBinding
import com.seatel.mobilehall.databinding.ItemHomeBannerBinding
import com.seatel.mobilehall.ui.home.model.BannersModel
import com.seatel.mobilehall.ui.login.activity.TermsAndConditionsActivity
......@@ -24,14 +17,14 @@ class ImageSliderAdapter(
private val newList: List<BannersModel> =
listOf(banners.last()) + banners + listOf(banners.first())
class SliderVH(val binding: ItemBinding) : RecyclerView.ViewHolder(binding.root)
class SliderVH(val binding: ItemHomeBannerBinding) : RecyclerView.ViewHolder(binding.root)
lateinit var binding: ItemBinding
lateinit var binding: ItemHomeBannerBinding
override fun onCreateViewHolder(
parent: ViewGroup,
viewType: Int
): ImageSliderAdapter.SliderVH {
val binding = ItemBinding.inflate(LayoutInflater.from(parent.context), parent, false)
val binding = ItemHomeBannerBinding.inflate(LayoutInflater.from(parent.context), parent, false)
return SliderVH(binding)
}
......
......@@ -486,11 +486,14 @@ class HomeFragment : BaseFragment(), View.OnClickListener, BannersInteractor.Vie
gotoPlayStore(packageName = "com.nacd.stopdrug")
}
)
if (bannersList.isNotEmpty()){
viewpager2.adapter = imageSliderAdapter
viewpager2.currentItem = 1
setupAutoScroll(bannersList.size + 2)
startAutoScroll()
}
binding.viewpager2.setMarginsInDp(top = 6)
}
}
}
......@@ -715,4 +718,24 @@ class HomeFragment : BaseFragment(), View.OnClickListener, BannersInteractor.Vie
}
private fun View.setMarginsInDp(
left: Int = 0,
top: Int = 0,
right: Int = 0,
bottom: Int = 0
) {
val scale = context.resources.displayMetrics.density
val params = layoutParams as? ViewGroup.MarginLayoutParams
?: ViewGroup.MarginLayoutParams(layoutParams)
params.setMargins(
(left * scale + 0.5f).toInt(),
(top * scale + 0.5f).toInt(),
(right * scale + 0.5f).toInt(),
(bottom * scale + 0.5f).toInt()
)
layoutParams = params
}
}
......@@ -57,7 +57,7 @@ class MainActivity : AppCompatActivity() {
// Hide text for the "yes member" item
val yesMemberMenuItem = navView.menu.findItem(R.id.navigation_yes_member)
//val yesMemberMenuItem = navView.menu.findItem(R.id.navigation_yes_member)
val drawable = if (yesMember) {
......@@ -68,32 +68,32 @@ class MainActivity : AppCompatActivity() {
// Apply color tint to the drawable
// drawable?.setTint(ContextCompat.getColor(this, R.color.colorPrimary))
yesMemberMenuItem.icon = drawable
navView.findViewById<View>(yesMemberMenuItem.itemId)?.let { itemView ->
itemView.findViewById<View>(com.google.android.material.R.id.text)?.visibility =
View.GONE
itemView.findViewById<View>(com.google.android.material.R.id.navigation_bar_item_large_label_view)?.visibility =
View.GONE
// Customize the icon size if needed
val iconView =
itemView.findViewById<View>(com.google.android.material.R.id.navigation_bar_item_icon_view)
val iconViewParams: FrameLayout.LayoutParams =
iconView.layoutParams as FrameLayout.LayoutParams
iconViewParams.width = TypedValue.applyDimension(
TypedValue.COMPLEX_UNIT_DIP, 40F, resources.displayMetrics
).toInt()
iconViewParams.height = TypedValue.applyDimension(
TypedValue.COMPLEX_UNIT_DIP, 40F, resources.displayMetrics
).toInt()
iconView.layoutParams = iconViewParams
}
// yesMemberMenuItem.icon = drawable
// navView.findViewById<View>(yesMemberMenuItem.itemId)?.let { itemView ->
//
// itemView.findViewById<View>(com.google.android.material.R.id.text)?.visibility =
// View.GONE
// itemView.findViewById<View>(com.google.android.material.R.id.navigation_bar_item_large_label_view)?.visibility =
// View.GONE
//
//
// // Customize the icon size if needed
// val iconView =
// itemView.findViewById<View>(com.google.android.material.R.id.navigation_bar_item_icon_view)
//
//
// val iconViewParams: FrameLayout.LayoutParams =
// iconView.layoutParams as FrameLayout.LayoutParams
// iconViewParams.width = TypedValue.applyDimension(
// TypedValue.COMPLEX_UNIT_DIP, 40F, resources.displayMetrics
// ).toInt()
// iconViewParams.height = TypedValue.applyDimension(
// TypedValue.COMPLEX_UNIT_DIP, 40F, resources.displayMetrics
// ).toInt()
// iconView.layoutParams = iconViewParams
// }
}
......
......@@ -80,16 +80,22 @@ class ServicesFragment : BaseFragment(), AppProductsInteractor.View,
}
private fun initPresenter() {
AppProductsPresenter(requireContext(), this).onGetAppProducts(getPhoneLogin())
//AppProductsPresenter(requireContext(), this).onGetAppProducts(getPhoneLogin())
context?.let {
AppProductsPresenter(it, this).onGetAppProducts(getPhoneLogin())
}
}
private fun init() {
if(isAdded){
binding.apply {
btnPricePlan.setOnClickListener(this@ServicesFragment)
btnPackage.setOnClickListener(this@ServicesFragment)
buttonSwitchPlan.setOnClickListener(this@ServicesFragment)
}
}
}
private fun setupAdapter(list: ArrayList<AppProductsResponseModel>) {
handleItemSelection(list[0])
......@@ -107,11 +113,15 @@ class ServicesFragment : BaseFragment(), AppProductsInteractor.View,
if (plan.code == "rik-reay") {
RikReayPresenter(requireContext(), this).RikReay()
} else {
ProductServiceDetailPrsenter(requireActivity(), this).onProServiceDetail(
activity.let {
if (it != null) {
ProductServiceDetailPrsenter(it, this).onProServiceDetail(
plan.code!!,
getPhoneLogin()
)
}
}
}
}
......@@ -151,6 +161,7 @@ class ServicesFragment : BaseFragment(), AppProductsInteractor.View,
when (valuePackSectionModel.type) {
Constant.LoyKob -> {
if (isAdded) {
binding.mRecyclerDetail.adapter =
LoyKobsAdapter(
requireContext(),
......@@ -159,6 +170,7 @@ class ServicesFragment : BaseFragment(), AppProductsInteractor.View,
valuePackSectionModel
)
}
}
Constant.OnePlan -> {
binding.mRecyclerDetail.adapter =
......
......@@ -14,7 +14,9 @@ import android.graphics.drawable.BitmapDrawable
import android.os.Bundle
import android.util.Log
import android.widget.Toast
import androidx.annotation.OptIn
import androidx.camera.core.CameraSelector
import androidx.camera.core.ExperimentalGetImage
import androidx.camera.core.ImageAnalysis
import androidx.camera.core.ImageProxy
import androidx.camera.core.Preview
......@@ -104,6 +106,7 @@ class OutLetScanQrActivity : BaseActivity<ActivityOutletScanQrBinding>(),
}
@OptIn(ExperimentalGetImage::class)
private fun scanBarcode(imageProxy: ImageProxy, scanner: BarcodeScanner) {
if (isScanned) {
imageProxy.close()
......
......@@ -5,7 +5,6 @@ import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.Toast
import androidx.core.content.ContextCompat
import androidx.core.view.ViewCompat
import androidx.recyclerview.widget.GridLayoutManager
......@@ -89,7 +88,6 @@ class YesMemberFragment : BaseFragment(), MainTopPartnerInteractor.View {
LinearLayoutManager(context, LinearLayoutManager.HORIZONTAL, false)
adapter = YesMemberAdapter(requireContext(), topPartnerList)
binding.recyclerPartner.adapter = adapter
Toast.makeText(context, "amount of the top partner is ${topPartnerList.size}", Toast.LENGTH_SHORT).show()
if (topPartnerList.isNotEmpty()) binding.tvPartner.visibility = View.VISIBLE else binding.tvPartner.visibility = View.GONE
}
......@@ -137,11 +135,12 @@ class YesMemberFragment : BaseFragment(), MainTopPartnerInteractor.View {
CoinActivity.launch(requireContext(), imgCoin!!, coinEarn!!, coinDescription!!)
}
if (mainModel.coinHidden) binding.frameYesCoins.visibility = View.GONE else binding.frameYesCoins.visibility = View.VISIBLE
if (mainModel.partnerHidden){
if (mainModel.coinHidden) binding.frameYesCoins.visibility =
View.GONE else binding.frameYesCoins.visibility = View.VISIBLE
if (mainModel.partnerHidden) {
binding.frameYesPartner.visibility = View.GONE
binding.qrCodeContainer.visibility = View.GONE
} else{
} else {
binding.frameYesPartner.visibility = View.VISIBLE
binding.qrCodeContainer.visibility = View.VISIBLE
}
......
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<View
android:id="@+id/statusBarBackground"
android:layout_width="match_parent"
android:layout_height="24dp"
android:background="@color/colorPrimaryDark"
tools:ignore="MissingConstraints" />
<androidx.appcompat.widget.Toolbar
android:id="@+id/mToolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/colorPrimaryDark"
app:layout_constraintTop_toBottomOf="@+id/statusBarBackground">
<ImageView
android:id="@+id/iv_back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_left_back" />
<ImageView
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_gravity="center"
android:src="@drawable/ic_yes_partner" />
</androidx.appcompat.widget.Toolbar>
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/content_view"
android:layout_width="match_parent"
android:layout_height="300dp"
android:background="@color/colorLightGray"
app:layout_constraintTop_toBottomOf="@+id/mToolbar"> <!-- 🔥 Set background color -->
<!-- Full Screen Camera Preview (Hidden Behind Overlay) -->
<androidx.camera.view.PreviewView
android:id="@+id/scan_qr"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toTopOf="parent" />
android:layout_height="match_parent" />
<!-- Transparent Frame for Camera (200x200) -->
<View
android:id="@+id/frame_overlay"
android:layout_width="200dp"
android:layout_height="200dp"
android:background="@drawable/bg_button_stroke_transparent"
android:layout_width="match_parent"
android:layout_height="250dp"
android:layout_marginHorizontal="13dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<!-- Overlay (Gray Background) -->
<View
android:id="@+id/overlay"
android:layout_width="match_parent"
......@@ -72,29 +29,56 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/bg_toolbar_scan"
android:paddingTop="24dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<ImageView
android:id="@+id/ivBack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dp"
app:srcCompat="@drawable/ic_close_x" />
<com.seatel.mobilehall.util.customview.CustomTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:text="@string/scan_id"
android:textColor="@android:color/white"
android:textSize="18sp" />
</RelativeLayout>
<com.seatel.mobilehall.util.customview.CustomTextView
android:id="@+id/tv_scan_out_qr"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_2x_size"
android:layout_marginTop="@dimen/margin_3x_size"
android:gravity="center_horizontal"
android:text="Scan Outlet QR code"
android:textColor="@color/white"
android:textSize="@dimen/large_text_size"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/content_view" />
app:layout_constraintTop_toBottomOf="@+id/frame_overlay" />
<com.seatel.mobilehall.util.customview.CustomTextView
android:id="@+id/tv_or"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_5x_size"
android:layout_marginTop="@dimen/margin_2x_size"
android:gravity="center_horizontal"
android:textStyle="bold"
android:text="OR"
android:textColor="@color/white"
android:textSize="@dimen/large_text_size"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
......@@ -112,9 +96,11 @@
android:text="Type outlet code"
android:textColor="@color/colorPrimary"
android:textSize="@dimen/small_text_size"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_or" />
</androidx.constraintlayout.widget.ConstraintLayout>
......@@ -211,7 +211,7 @@
<View
android:id="@+id/view3"
android:layout_width="match_parent"
android:layout_height="100dp"
android:layout_height="105dp"
android:background="@drawable/header_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
......@@ -221,8 +221,7 @@
android:layout_width="match_parent"
android:id="@+id/viewpager_banner"
android:background="@color/browser_actions_bg_grey"
android:layout_height="0dp"
android:paddingTop="5dp"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_1x_size"
android:layout_marginEnd="@dimen/margin_1x_size"
app:layout_constraintBottom_toBottomOf="@id/viewpager2"
......@@ -232,7 +231,7 @@
/>
<androidx.viewpager2.widget.ViewPager2
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_height="112dp"
android:layout_marginStart="@dimen/margin_1x_size"
android:layout_marginEnd="@dimen/margin_1x_size"
app:layout_constraintBottom_toBottomOf="parent"
......@@ -241,6 +240,7 @@
app:layout_constraintTop_toTopOf="parent"
android:id="@+id/viewpager2"/>
</androidx.constraintlayout.widget.ConstraintLayout>
......
......@@ -14,10 +14,10 @@
app:layout_constraintTop_toTopOf="parent">
<ImageView
android:visibility="gone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_left_back" />
android:src="@drawable/ic_left_back"
android:visibility="gone" />
<ImageView
android:layout_width="40dp"
......@@ -81,9 +81,9 @@
android:fadingEdge="horizontal"
android:focusable="true"
android:focusableInTouchMode="true"
android:singleLine="true"
android:marqueeRepeatLimit="marquee_forever"
android:maxLines="1"
android:singleLine="true"
android:text="Top up 5 USD each month to hhhhhhbecome a yes member."
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/top_up"
......@@ -119,12 +119,13 @@
android:layout_width="match_parent"
android:layout_height="150dp"
android:background="@drawable/bg_yes_member"
android:backgroundTint="@android:color/darker_gray"
android:backgroundTint="@color/color_53535369"
android:gravity="center_vertical"
android:visibility="gone"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
app:layout_constraintTop_toTopOf="parent"
tools:visibility="visible">
<androidx.constraintlayout.widget.ConstraintLayout
......@@ -195,13 +196,13 @@
android:layout_width="match_parent"
android:layout_height="150dp"
android:layout_marginTop="@dimen/margin_2x_size"
android:visibility="gone"
tools:visibility="visible"
android:background="@drawable/bg_yes_member"
android:backgroundTint="@android:color/darker_gray"
android:backgroundTint="@color/color_53535369"
android:gravity="center_vertical"
android:visibility="gone"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
tools:visibility="visible"
app:layout_constraintTop_toBottomOf="@+id/frame_yes_coins">
<androidx.constraintlayout.widget.ConstraintLayout
......@@ -215,7 +216,7 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<ImageView
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/iv_partner_banner"
android:layout_width="100dp"
android:layout_height="50dp"
......@@ -278,11 +279,11 @@
android:text="Top yes Partner"
android:textColor="@color/colorPrimary"
android:textSize="@dimen/extra_large_text_size"
android:visibility="gone"
tools:visibility="visible"
android:textStyle="bold"
android:visibility="gone"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/constraintLayout2" />
app:layout_constraintTop_toBottomOf="@+id/constraintLayout2"
tools:visibility="visible" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recyclerPartner"
......@@ -304,7 +305,8 @@
android:textStyle="bold"
android:visibility="gone"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/recyclerPartner" />
app:layout_constraintTop_toBottomOf="@+id/recyclerPartner"
tools:visibility="visible" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/RecyclerPartnerCategory"
......@@ -323,13 +325,14 @@
android:id="@+id/qrCodeContainer"
android:layout_width="80dp"
android:layout_height="35dp"
android:visibility="gone"
android:layout_marginEnd="@dimen/margin_2x_size"
android:layout_marginBottom="@dimen/margin_2x_size"
android:background="@drawable/rounded_corner"
android:backgroundTint="@color/colorGray"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent">
app:layout_constraintEnd_toEndOf="parent"
tools:visibility="visible">
<com.seatel.mobilehall.util.customview.CustomTextView
......@@ -345,7 +348,7 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@+id/iv_qrcode" />
<ImageView
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/iv_qrcode"
android:layout_width="0dp"
android:layout_height="wrap_content"
......
......@@ -12,10 +12,10 @@
android:icon="@drawable/packages_selector"
android:title="@string/nav_package" />
<item
android:id="@+id/navigation_yes_member"
android:icon="@drawable/yes_member_selector"
android:title="" />
<!-- <item-->
<!-- android:id="@+id/navigation_yes_member"-->
<!-- android:icon="@drawable/yes_member_selector"-->
<!-- android:title="" />-->
<item
android:id="@+id/navigation_usage"
......
......@@ -27,9 +27,9 @@
android:name="com.seatel.mobilehall.ui.profile.fragment.ProfilesFragment"
android:label="@string/nav_profile"
tools:layout="@layout/fragment_profile" />
<fragment
android:id="@+id/navigation_yes_member"
android:name="com.seatel.mobilehall.ui.yes_member.fragment.YesMemberFragment"
android:label="fragment_yes_member"
tools:layout="@layout/fragment_yes_member" />
<!-- <fragment-->
<!-- android:id="@+id/navigation_yes_member"-->
<!-- android:name="com.seatel.mobilehall.ui.yes_member.fragment.YesMemberFragment"-->
<!-- android:label="fragment_yes_member"-->
<!-- tools:layout="@layout/fragment_yes_member" />-->
</navigation>
\ No newline at end of file
......@@ -44,6 +44,7 @@
<color name="color_claim_gray">#BFBFBF</color>
<color name="button_behind">#FACCE8</color>
<color name="color_light_gray">#F7F7F8</color>
<color name="color_53535369">#53535369</color>
</resources>
\ No newline at end of file
......@@ -22,4 +22,4 @@ kotlin.code.style=official
# resources declared in the library itself and none from the library's dependencies,
# thereby reducing the size of the R class for that library
android.nonTransitiveRClass=true
android.defaults.buildfeatures.buildconfig=true
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment