diff --git a/app/src/main/java/com/nivesh/production/niveshfd/fd/db/PreferenceManager.kt b/app/src/main/java/com/nivesh/production/niveshfd/fd/db/PreferenceManager.kt index f65057f..010bb76 100644 --- a/app/src/main/java/com/nivesh/production/niveshfd/fd/db/PreferenceManager.kt +++ b/app/src/main/java/com/nivesh/production/niveshfd/fd/db/PreferenceManager.kt @@ -17,6 +17,8 @@ open class PreferenceManager(context: Context) : IPreferenceHelper { const val KEY_CLIENT_CODE = "ClientCode" const val KEY_GET_TOKEN = "GetToken" const val CLIENT_LANGUAGE = "LANGUAGE" + + const val ISFIRST_TIME = "IS FIRST TIME" } @@ -86,6 +88,16 @@ open class PreferenceManager(context: Context) : IPreferenceHelper { } + override fun setIsFirstTime(appName: Boolean) { + preferences[ISFIRST_TIME] = appName + } + + override fun getFirstTime(): Boolean { + return preferences[ISFIRST_TIME] ?: false + } + + + override fun clearPrefs() { preferences.edit().clear().apply() } diff --git a/app/src/main/java/com/nivesh/production/niveshfd/fd/interfaces/IPreferenceHelper.kt b/app/src/main/java/com/nivesh/production/niveshfd/fd/interfaces/IPreferenceHelper.kt index 5a98806..6b4ea1e 100644 --- a/app/src/main/java/com/nivesh/production/niveshfd/fd/interfaces/IPreferenceHelper.kt +++ b/app/src/main/java/com/nivesh/production/niveshfd/fd/interfaces/IPreferenceHelper.kt @@ -26,5 +26,8 @@ interface IPreferenceHelper { fun setLanguage(appName: String) fun getLanguage(): String + fun setIsFirstTime(appName: Boolean) + fun getFirstTime(): Boolean + fun clearPrefs() } \ No newline at end of file diff --git a/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/RegisterActivity.kt b/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/RegisterActivity.kt index dcc8ff6..c4766a2 100644 --- a/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/RegisterActivity.kt +++ b/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/RegisterActivity.kt @@ -7,6 +7,7 @@ import android.util.DisplayMetrics import android.view.Display import androidx.core.hardware.display.DisplayManagerCompat import com.nivesh.production.niveshfd.databinding.ActivityRegisterBinding +import com.nivesh.production.niveshfd.fd.db.PreferenceManager import com.nivesh.production.niveshfd.fd.ui.activity.BaseActivity import com.nivesh.production.niveshfd.fd.util.Common.Companion.showWebViewDialogBottom @@ -34,12 +35,26 @@ class RegisterActivity : BaseActivity() { startActivity(intent) } binding.btnDistributor.setOnClickListener { - intent = Intent(this@RegisterActivity, ViewPagerActivity::class.java) - startActivity(intent) + if (!PreferenceManager(this@RegisterActivity).getFirstTime()){ + intent = Intent(this@RegisterActivity, ViewPagerActivity::class.java) + intent.putExtra("type", 4) + startActivity(intent) + }else{ + intent = Intent(this@RegisterActivity, SignUpActivity::class.java) + intent.putExtra("type", 4) + startActivity(intent) + } } binding.btnReferrer.setOnClickListener { - intent = Intent(this@RegisterActivity, ViewPagerActivity::class.java) - startActivity(intent) + if (!PreferenceManager(this@RegisterActivity).getFirstTime()){ + intent = Intent(this@RegisterActivity, ViewPagerActivity::class.java) + intent.putExtra("type", 3) + startActivity(intent) + }else{ + intent = Intent(this@RegisterActivity, SignUpActivity::class.java) + intent.putExtra("type", 3) + startActivity(intent) + } } binding.imgInfo.setOnClickListener { showWebViewDialogBottom( diff --git a/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/SignUpActivity.kt b/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/SignUpActivity.kt index 533aa1f..9ee5946 100644 --- a/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/SignUpActivity.kt +++ b/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/SignUpActivity.kt @@ -12,6 +12,7 @@ import com.nivesh.production.niveshfd.partnerOnBoarding.ui.fragments1.SignUpFrag class SignUpActivity : BaseActivity() { lateinit var binding: ActivitySignupBinding + var type : Int? = null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) @@ -19,6 +20,8 @@ class SignUpActivity : BaseActivity() { } private fun init() { + type = intent.getIntExtra("type", 0); + binding = ActivitySignupBinding.inflate(layoutInflater) binding.apply { setContentView(this.root) diff --git a/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/ViewPagerActivity.kt b/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/ViewPagerActivity.kt index 67812a8..12bb248 100644 --- a/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/ViewPagerActivity.kt +++ b/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/ViewPagerActivity.kt @@ -5,6 +5,7 @@ import android.os.Bundle import androidx.fragment.app.Fragment import androidx.viewpager.widget.ViewPager import com.nivesh.production.niveshfd.databinding.ActivityViewpagerBinding +import com.nivesh.production.niveshfd.fd.db.PreferenceManager import com.nivesh.production.niveshfd.fd.ui.activity.BaseActivity import com.nivesh.production.niveshfd.partnerOnBoarding.adapters1.DisableAdapter1 import com.nivesh.production.niveshfd.partnerOnBoarding.adapters1.SectionsPagerAdapter1 @@ -19,6 +20,7 @@ class ViewPagerActivity : BaseActivity() { private val stepOnePagerFragment = StepOnePagerFragment() private val stepTwoPagerFragment = StepTwoPagerFragment() private val stepThreePagerFragment = StepThreePagerFragment() + var type : Int? = null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) init() @@ -33,6 +35,10 @@ class ViewPagerActivity : BaseActivity() { } private fun setViewPager() { + + PreferenceManager(this@ViewPagerActivity).setIsFirstTime(true) + type = intent.getIntExtra("type", 0); + fragments = arrayOf( stepOnePagerFragment, stepTwoPagerFragment, @@ -71,6 +77,11 @@ class ViewPagerActivity : BaseActivity() { } }) + + + binding.tvSkip.setOnClickListener{ + stepFourApi() + } } // step 1 response @@ -91,6 +102,7 @@ class ViewPagerActivity : BaseActivity() { // step 4 response fun stepFourApi() { intent = Intent(this@ViewPagerActivity, SignUpActivity::class.java) + intent.putExtra("type", type) startActivity(intent) } diff --git a/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/OTPFragment.kt b/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/OTPFragment.kt index 6eb7d6a..4f07a57 100644 --- a/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/OTPFragment.kt +++ b/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/OTPFragment.kt @@ -2,6 +2,7 @@ package com.nivesh.production.niveshfd.partnerOnBoarding.ui.fragments1 import android.os.Bundle import android.text.Editable +import android.text.InputFilter import android.text.TextWatcher import android.view.KeyEvent import android.view.LayoutInflater @@ -31,6 +32,14 @@ class OTPFragment : BaseFragment() { } private fun init() { + + binding.edtOTP1.filters = arrayOf(InputFilter.LengthFilter(1)) + binding.edtOTP2.filters = arrayOf(InputFilter.LengthFilter(1)) + binding.edtOTP3.filters = arrayOf(InputFilter.LengthFilter(1)) + binding.edtOTP4.filters = arrayOf(InputFilter.LengthFilter(1)) + binding.edtOTP5.filters = arrayOf(InputFilter.LengthFilter(1)) + binding.edtOTP6.filters = arrayOf(InputFilter.LengthFilter(1)) + binding.edtOTP1.addTextChangedListener(GenericTextWatcher(binding.edtOTP1, binding.edtOTP2)) binding.edtOTP2.addTextChangedListener(GenericTextWatcher(binding.edtOTP2, binding.edtOTP3)) binding.edtOTP3.addTextChangedListener(GenericTextWatcher(binding.edtOTP3, binding.edtOTP4)) @@ -54,7 +63,7 @@ class OTPFragment : BaseFragment() { binding.btnSubmit.setOnClickListener { if (validate()) { - addFragment(activity as BaseActivity, R.id.signUpContainer,OTPFragment(),"", true) + replaceFragment(activity as BaseActivity, R.id.signUpContainer,OTPFragment(),"GET STARTED", true) } } } @@ -64,37 +73,37 @@ class OTPFragment : BaseFragment() { Common.commonErrorMethod( binding.edtOTP1, binding.tlOTP1, - getString(R.string.invalidOTP) + "" ) } else if (binding.edtOTP2.text.toString().isEmpty()) { // EditText Common.commonErrorMethod( binding.edtOTP2, binding.tlOTP2, - getString(R.string.invalidOTP) + "" ) } else if (binding.edtOTP3.text.toString().isEmpty()) { // EditText Common.commonErrorMethod( binding.edtOTP3, binding.tlOTP3, - getString(R.string.invalidOTP) + "" ) } else if (binding.edtOTP4.text.toString().isEmpty()) { // EditText Common.commonErrorMethod( binding.edtOTP4, binding.tlOTP4, - getString(R.string.invalidOTP) + "" ) } else if (binding.edtOTP5.text.toString().isEmpty()) { // EditText Common.commonErrorMethod( binding.edtOTP5, binding.tlOTP5, - getString(R.string.invalidOTP) + "" ) } else if (binding.edtOTP6.text.toString().isEmpty()) { // EditText Common.commonErrorMethod( binding.edtOTP6, binding.tlOTP6, - getString(R.string.invalidOTP) + "" ) } else { return true diff --git a/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/SignUpFragment.kt b/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/SignUpFragment.kt index 79ae161..037d684 100644 --- a/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/SignUpFragment.kt +++ b/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/SignUpFragment.kt @@ -2,6 +2,7 @@ package com.nivesh.production.niveshfd.partnerOnBoarding.ui.fragments1 import android.os.Bundle import android.text.Editable +import android.text.InputFilter import android.text.TextWatcher import android.view.LayoutInflater import android.view.View @@ -29,6 +30,7 @@ class SignUpFragment : BaseFragment() { } private fun init() { + binding.edtMobileNumber.filters = arrayOf(InputFilter.LengthFilter(10)) binding.edtMobileNumber.addTextChangedListener(object : TextWatcher { override fun afterTextChanged(s: Editable?) {} override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {} @@ -39,11 +41,11 @@ class SignUpFragment : BaseFragment() { binding.btnSignUp.setOnClickListener { if (validate()) { - addFragment( + replaceFragment( activity as BaseActivity, com.nivesh.production.niveshfd.R.id.signUpContainer, OTPFragment(), - "", + "OTP", true ) } diff --git a/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/StepThreePagerFragment.kt b/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/StepThreePagerFragment.kt index c7c69cf..447f122 100644 --- a/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/StepThreePagerFragment.kt +++ b/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/StepThreePagerFragment.kt @@ -30,9 +30,9 @@ class StepThreePagerFragment : Fragment() { (activity as ViewPagerActivity).stepFourApi() } -// binding.btnNext.setOnClickListener { -// (activity as ViewPagerActivity).stepThreeApi() -// } + binding.btnBack.setOnClickListener { + (activity as ViewPagerActivity).stepTwoApi() + } } } \ No newline at end of file diff --git a/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/StepTwoPagerFragment.kt b/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/StepTwoPagerFragment.kt index a60752e..4691a08 100644 --- a/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/StepTwoPagerFragment.kt +++ b/app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/StepTwoPagerFragment.kt @@ -30,7 +30,7 @@ class StepTwoPagerFragment : Fragment() { (activity as ViewPagerActivity).stepThreeApi() } binding.btnBack.setOnClickListener { - (activity as ViewPagerActivity).stepTwoApi() + (activity as ViewPagerActivity).stepOneApi() } } } \ No newline at end of file diff --git a/app/src/main/res/drawable/default_pager_dot.xml b/app/src/main/res/drawable/default_pager_dot.xml index d8635d1..713ba10 100644 --- a/app/src/main/res/drawable/default_pager_dot.xml +++ b/app/src/main/res/drawable/default_pager_dot.xml @@ -1,19 +1,13 @@ - + - - - + + - - - \ No newline at end of file + + \ No newline at end of file diff --git a/app/src/main/res/drawable/pager_1.png b/app/src/main/res/drawable/pager_1.png new file mode 100644 index 0000000..8b1da12 Binary files /dev/null and b/app/src/main/res/drawable/pager_1.png differ diff --git a/app/src/main/res/drawable/pager_2.png b/app/src/main/res/drawable/pager_2.png new file mode 100644 index 0000000..9987985 Binary files /dev/null and b/app/src/main/res/drawable/pager_2.png differ diff --git a/app/src/main/res/drawable/pager_3.png b/app/src/main/res/drawable/pager_3.png new file mode 100644 index 0000000..e736d49 Binary files /dev/null and b/app/src/main/res/drawable/pager_3.png differ diff --git a/app/src/main/res/drawable/selected_pager_dot.xml b/app/src/main/res/drawable/selected_pager_dot.xml index 29af010..22ac7a6 100644 --- a/app/src/main/res/drawable/selected_pager_dot.xml +++ b/app/src/main/res/drawable/selected_pager_dot.xml @@ -4,7 +4,7 @@ diff --git a/app/src/main/res/drawable/svg_indicator_bg.xml b/app/src/main/res/drawable/svg_indicator_bg.xml new file mode 100644 index 0000000..4bd629e --- /dev/null +++ b/app/src/main/res/drawable/svg_indicator_bg.xml @@ -0,0 +1,12 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_viewpager.xml b/app/src/main/res/layout/activity_viewpager.xml index 0a81029..babf141 100644 --- a/app/src/main/res/layout/activity_viewpager.xml +++ b/app/src/main/res/layout/activity_viewpager.xml @@ -14,15 +14,28 @@ + android:layout_alignParentBottom="true" /> + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_otp.xml b/app/src/main/res/layout/fragment_otp.xml index 362b40b..b059591 100644 --- a/app/src/main/res/layout/fragment_otp.xml +++ b/app/src/main/res/layout/fragment_otp.xml @@ -4,14 +4,15 @@ xmlns:tool="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" + android:id="@+id/containerOTP" android:orientation="vertical"> @@ -43,6 +44,7 @@ android:id="@+id/txtChangeNumber" android:layout_width="wrap_content" android:layout_height="wrap_content" + android:layout_marginEnd="@dimen/margin_20" android:layout_marginStart="@dimen/margin_10" android:layout_marginTop="@dimen/margin_5" android:gravity="end" @@ -62,140 +64,166 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/txtChangeNumber" /> - + tool:ignore="TextContrastCheck,SpeakableTextPresentCheck" /> + tool:ignore="TextContrastCheck,SpeakableTextPresentCheck" /> + tool:ignore="TextContrastCheck,SpeakableTextPresentCheck" /> + tool:ignore="TextContrastCheck,SpeakableTextPresentCheck" /> + tool:ignore="TextContrastCheck,SpeakableTextPresentCheck" /> + tool:ignore="TextContrastCheck,SpeakableTextPresentCheck,TouchTargetSizeCheck" /> - + - - -