Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
shunchaki
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Shohboz Qoraboev
shunchaki
Commits
a38cff28
Commit
a38cff28
authored
Dec 27, 2021
by
shohboz
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[UPD]
MUS-350
Feature, updated navigate to offline from button to dialog
parent
1116ccfd
Changes
12
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
117 additions
and
74 deletions
+117
-74
build.gradle
app/build.gradle
+4
-0
BillingFragment.kt
app/src/main/java/com/mobiuz/app/dev/BillingFragment.kt
+0
-6
ServerModule.kt
app/src/main/java/com/mobiuz/app/dev/di/ServerModule.kt
+23
-19
AuthActivity.kt
app/src/main/java/com/mobiuz/app/dev/ui/auth/AuthActivity.kt
+6
-0
CheckPhoneFragment.kt
...va/com/mobiuz/app/dev/ui/auth/check/CheckPhoneFragment.kt
+8
-5
LoginFragment.kt
...in/java/com/mobiuz/app/dev/ui/auth/login/LoginFragment.kt
+5
-1
RegisterFragment.kt
...a/com/mobiuz/app/dev/ui/auth/register/RegisterFragment.kt
+8
-4
CONSTANTS.kt
app/src/main/java/com/mobiuz/app/dev/ui/global/CONSTANTS.kt
+10
-10
HomeFragment.kt
app/src/main/java/com/mobiuz/app/dev/ui/home/HomeFragment.kt
+10
-4
ChangePasswordFragment.kt
...uz/app/dev/ui/settings/security/ChangePasswordFragment.kt
+27
-23
StringExtension.kt
...va/com/mobiuz/app/dev/utils/extensions/StringExtension.kt
+15
-1
layout_offline_bottom_sheet.xml
app/src/main/res/layout/layout_offline_bottom_sheet.xml
+1
-1
No files found.
app/build.gradle
View file @
a38cff28
...
...
@@ -41,6 +41,10 @@ android {
buildFeatures
{
viewBinding
true
}
lintOptions
{
checkReleaseBuilds
false
}
}
repositories
{
...
...
app/src/main/java/com/mobiuz/app/dev/BillingFragment.kt
View file @
a38cff28
...
...
@@ -38,12 +38,6 @@ class BillingFragment : BaseFragment(R.layout.fragment_billing) {
navController
.
navigateUp
()
}
AGRBilling
.
hasCards
().
subscribe
({
showMessage
(
"Has Cards"
)
},
{
showMessage
(
"No Card"
)
}).
dispose
()
savedCards
.
setOnClickListener
{
getPhoneNumber
(
object
:
LoadPhoneNumber
{
override
fun
invoke
(
phoneNumber
:
String
)
{
...
...
app/src/main/java/com/mobiuz/app/dev/di/ServerModule.kt
View file @
a38cff28
package
com.mobiuz.app.dev.di
import
android.content.Context
import
android.content.Intent
import
com.mobiuz.app.dev.model.SharedPref
import
com.mobiuz.app.dev.network.api.ApiService
import
com.mobiuz.app.dev.ui.global.CONSTANTS
import
com.mobiuz.app.dev.utils.NetworkUtil
import
com.mobiuz.app.dev.utils.Utils
import
com.readystatesoftware.chuck.ChuckInterceptor
import
dagger.Module
...
...
@@ -39,7 +41,8 @@ class ServerModule {
@Provides
@Singleton
fun
getClient
(
@ApplicationContext
context
:
Context
,
sharedPref
:
SharedPref
):
OkHttpClient
=
OkHttpClient
.
Builder
()
fun
getClient
(
@ApplicationContext
context
:
Context
,
sharedPref
:
SharedPref
):
OkHttpClient
{
return
OkHttpClient
.
Builder
()
.
connectTimeout
(
60
,
java
.
util
.
concurrent
.
TimeUnit
.
SECONDS
)
.
readTimeout
(
60
,
java
.
util
.
concurrent
.
TimeUnit
.
SECONDS
)
.
addInterceptor
(
...
...
@@ -58,6 +61,7 @@ class ServerModule {
chain
.
proceed
(
builder
.
build
())
})
.
build
()
}
}
\ No newline at end of file
app/src/main/java/com/mobiuz/app/dev/ui/auth/AuthActivity.kt
View file @
a38cff28
...
...
@@ -87,6 +87,11 @@ class AuthActivity : AppCompatActivity() {
receiver
=
object
:
BroadcastReceiver
(){
override
fun
onReceive
(
context
:
Context
?,
intent
:
Intent
?)
{
if
(
intent
?.
action
==
CONSTANTS
.
MY_CONNECTIVITY_CHANGE
){
showOfflineBottomSheetDialog
()
}
if
(
intent
?.
action
==
CONSTANTS
.
CONNECTIVITY_CHANGE
){
type
=
NetworkUtil
.
getConnectivityStatus
(
this
@AuthActivity
)
if
((
type
==
0
)
&&
(
navController
.
currentDestination
?.
id
!=
R
.
id
.
pinFragment
)
...
...
@@ -97,6 +102,7 @@ class AuthActivity : AppCompatActivity() {
}
intentFilter
.
addAction
(
CONSTANTS
.
CONNECTIVITY_CHANGE
)
intentFilter
.
addAction
(
CONSTANTS
.
MY_CONNECTIVITY_CHANGE
)
registerReceiver
(
receiver
,
intentFilter
)
}
...
...
app/src/main/java/com/mobiuz/app/dev/ui/auth/check/CheckPhoneFragment.kt
View file @
a38cff28
package
com.mobiuz.app.dev.ui.auth.check
import
android.content.Intent
import
android.os.Bundle
import
android.telephony.PhoneNumberFormattingTextWatcher
import
android.text.Editable
...
...
@@ -20,11 +21,9 @@ import com.mobiuz.app.dev.ui.base.BaseFragment
import
com.mobiuz.app.dev.ui.global.ButtonClick
import
com.mobiuz.app.dev.ui.global.CONSTANTS
import
com.mobiuz.app.dev.ui.global.TextWatcherWrapper
import
com.mobiuz.app.dev.utils.NetworkUtil
import
com.mobiuz.app.dev.utils.Utils
import
com.mobiuz.app.dev.utils.extensions.checkChangedPosition
import
com.mobiuz.app.dev.utils.extensions.customLog
import
com.mobiuz.app.dev.utils.extensions.maskedTextMobi
import
com.mobiuz.app.dev.utils.extensions.showCustomDialog
import
com.mobiuz.app.dev.utils.extensions.*
import
com.mobiuz.app.dev.utils.hideKeyboard
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.flow.collect
...
...
@@ -95,7 +94,11 @@ class CheckPhoneFragment : BaseFragment(R.layout.fragment_check_phone) {
phone
.
length
<
13
->
{
inputPhone
.
startAnimation
(
AnimationUtils
.
loadAnimation
(
requireContext
(),
R
.
anim
.
shake
))
}
else
->
viewModel
.
checkPhone
(
UserAuth
(
phone
.
replace
(
"+"
,
""
)))
else
->{
if
(
checkInternet
()){
viewModel
.
checkPhone
(
UserAuth
(
phone
.
replace
(
"+"
,
""
)))
}
}
}
}
...
...
app/src/main/java/com/mobiuz/app/dev/ui/auth/login/LoginFragment.kt
View file @
a38cff28
...
...
@@ -24,6 +24,7 @@ import com.mobiuz.app.dev.ui.global.ButtonClick
import
com.mobiuz.app.dev.ui.global.CONSTANTS
import
com.mobiuz.app.dev.ui.global.TextWatcherWrapper
import
com.mobiuz.app.dev.utils.Utils
import
com.mobiuz.app.dev.utils.extensions.checkInternet
import
com.mobiuz.app.dev.utils.extensions.makeLinks
import
com.mobiuz.app.dev.utils.extensions.showCustomDialog
import
com.mobiuz.app.dev.utils.hideKeyboard
...
...
@@ -99,8 +100,11 @@ class LoginFragment : BaseFragment(R.layout.fragment_login) {
)
}
else
->
{
if
(
checkInternet
()){
viewModel
.
login
(
UserAuth
(
phone
.
filter
{
it
.
isDigit
()
},
password
))
}
}
}
}
...
...
app/src/main/java/com/mobiuz/app/dev/ui/auth/register/RegisterFragment.kt
View file @
a38cff28
...
...
@@ -21,6 +21,7 @@ import com.mobiuz.app.dev.ui.global.ButtonClick
import
com.mobiuz.app.dev.ui.global.CONSTANTS
import
com.mobiuz.app.dev.ui.global.TextWatcherWrapper
import
com.mobiuz.app.dev.utils.Utils
import
com.mobiuz.app.dev.utils.extensions.checkInternet
import
com.mobiuz.app.dev.utils.extensions.getColorCompat
import
com.mobiuz.app.dev.utils.extensions.makeLinks
import
com.mobiuz.app.dev.utils.extensions.showCustomDialog
...
...
@@ -135,6 +136,7 @@ class RegisterFragment : BaseFragment(R.layout.fragment_register) {
password
=
inputPassword
.
text
.
toString
().
trim
()
confirmPassword
=
inputConfirm
.
text
.
toString
().
trim
()
if
(
password
==
confirmPassword
){
if
(
checkInternet
()){
if
(
type
==
CONSTANTS
.
TYPE_FORGET
)
{
viewModel
.
resetPassword
(
UserAuth
(
phone
.
filter
{
it
.
isDigit
()
},
password
,
code
))
}
else
{
...
...
@@ -143,6 +145,8 @@ class RegisterFragment : BaseFragment(R.layout.fragment_register) {
}
}
}
})
...
...
app/src/main/java/com/mobiuz/app/dev/ui/global/CONSTANTS.kt
View file @
a38cff28
...
...
@@ -2,7 +2,7 @@ package com.mobiuz.app.dev.ui.global
object
CONSTANTS
{
const
val
BASE_URL
=
"http
://10.160.45.60
/api/v1/"
const
val
BASE_URL
=
"http
s://mobileapp.mobi.uz
/api/v1/"
//languages
const
val
RU
=
"ru"
...
...
@@ -16,17 +16,17 @@ object CONSTANTS {
const
val
TERMS_OF_USE
=
"Terms of Use"
const
val
PRIVACY_POLICY
=
"Privacy Policy"
const
val
LICENSE_UZ
=
"http
://10.160.45.60
/uploads/licenses/license_uz.html"
const
val
LICENSE_RU
=
"http
://10.160.45.60
/uploads/licenses/license_ru.html"
const
val
LICENSE_EN
=
"http
://10.160.45.60
/uploads/licenses/license_en.html"
const
val
LICENSE_UZ
=
"http
s://mobileapp.mobi.uz
/uploads/licenses/license_uz.html"
const
val
LICENSE_RU
=
"http
s://mobileapp.mobi.uz
/uploads/licenses/license_ru.html"
const
val
LICENSE_EN
=
"http
s://mobileapp.mobi.uz
/uploads/licenses/license_en.html"
const
val
PRIVACY_POLICY_UZ
=
"http
://10.160.45.60
/uploads/privacy/privacy_policy_uz.html"
const
val
PRIVACY_POLICY_RU
=
"http
://10.160.45.60
/uploads/privacy/privacy_policy_ru.html"
const
val
PRIVACY_POLICY_EN
=
"http
://10.160.45.60
/uploads/privacy/privacy_policy_en.html"
const
val
PRIVACY_POLICY_UZ
=
"http
s://mobileapp.mobi.uz
/uploads/privacy/privacy_policy_uz.html"
const
val
PRIVACY_POLICY_RU
=
"http
s://mobileapp.mobi.uz
/uploads/privacy/privacy_policy_ru.html"
const
val
PRIVACY_POLICY_EN
=
"http
s://mobileapp.mobi.uz
/uploads/privacy/privacy_policy_en.html"
const
val
PAYSYS_LICENSE_UZ
=
"http
://10.160.45.60
/uploads/paysys/license_uz.html"
const
val
PAYSYS_LICENSE_RU
=
"http
://10.160.45.60
/uploads/paysys/license_ru.html"
const
val
PAYSYS_LICENSE_EN
=
"http
://10.160.45.60
/uploads/paysys/license_en.html"
const
val
PAYSYS_LICENSE_UZ
=
"http
s://mobileapp.mobi.uz
/uploads/paysys/license_uz.html"
const
val
PAYSYS_LICENSE_RU
=
"http
s://mobileapp.mobi.uz
/uploads/paysys/license_ru.html"
const
val
PAYSYS_LICENSE_EN
=
"http
s://mobileapp.mobi.uz
/uploads/paysys/license_en.html"
const
val
PHONE1
=
"0890"
const
val
PHONE2
=
"+998 97 130 09 09"
...
...
app/src/main/java/com/mobiuz/app/dev/ui/home/HomeFragment.kt
View file @
a38cff28
...
...
@@ -65,7 +65,7 @@ class HomeFragment : BaseFragment(R.layout.fragment_home) {
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
_bn
=
FragmentHomeBinding
.
bind
(
view
)
isFirstProgressing
=
true
requireActivity
().
window
.
decorView
.
systemUiVisibility
=
View
.
VISIBLE
setUpUI
()
collects
()
...
...
@@ -101,9 +101,12 @@ class HomeFragment : BaseFragment(R.layout.fragment_home) {
btnAddSum
.
setOnClickListener
{
pref
.
isShowPin
=
false
if
(
checkInternet
()){
navController
.
navigate
(
R
.
id
.
billingFragment
)
}
}
val
number
=
pref
.
userPhone
.
customMasketHome
().
replace
(
"-"
,
" "
)
txtMyNumber
.
text
=
number
toolbarMyNumber
.
text
=
number
...
...
@@ -117,8 +120,11 @@ class HomeFragment : BaseFragment(R.layout.fragment_home) {
lastUpdateTime
=
System
.
currentTimeMillis
()
}
if
(
fromStart
&&
overScrolledDistance
>
140.52632
&&
(
lastUpdateTime
<
System
.
currentTimeMillis
()
-
2000
))
{
vibrate
(
requireContext
())
if
(
checkInternet
()){
viewModel
.
mainIndex
()
vibrate
(
requireContext
())
}
lastUpdateTime
=
System
.
currentTimeMillis
()
}
...
...
app/src/main/java/com/mobiuz/app/dev/ui/settings/security/ChangePasswordFragment.kt
View file @
a38cff28
...
...
@@ -22,6 +22,7 @@ import com.mobiuz.app.dev.ui.global.ButtonClick
import
com.mobiuz.app.dev.ui.global.CONSTANTS
import
com.mobiuz.app.dev.ui.global.TextWatcherWrapper
import
com.mobiuz.app.dev.utils.Utils
import
com.mobiuz.app.dev.utils.extensions.checkInternet
import
com.mobiuz.app.dev.utils.extensions.getColorCompat
import
com.mobiuz.app.dev.utils.extensions.showCustomDialog
import
com.mobiuz.app.dev.utils.extensions.showMessage
...
...
@@ -136,6 +137,7 @@ class ChangePasswordFragment : BaseFragment(R.layout.fragment_change_password) {
}
else
->
{
bn
.
btnLogin
.
hideKeyboard
()
if
(
checkInternet
()){
when
(
type
)
{
CONSTANTS
.
CURRENT_PASSWORD
->
{
oldPassword
=
password
...
...
@@ -166,6 +168,8 @@ class ChangePasswordFragment : BaseFragment(R.layout.fragment_change_password) {
}
}
}
}
}
}
...
...
app/src/main/java/com/mobiuz/app/dev/utils/extensions/StringExtension.kt
View file @
a38cff28
...
...
@@ -2,6 +2,7 @@ package com.mobiuz.app.dev.utils.extensions
import
android.app.Activity
import
android.content.Context
import
android.content.Intent
import
android.graphics.drawable.Drawable
import
android.os.Vibrator
import
android.text.*
...
...
@@ -23,11 +24,13 @@ import com.google.gson.JsonSyntaxException
import
com.mobiuz.app.R
import
com.mobiuz.app.dev.model.SharedPref
import
com.mobiuz.app.dev.model.Translate
import
com.mobiuz.app.dev.model.UserAuth
import
com.mobiuz.app.dev.network.model.Errors
import
com.mobiuz.app.dev.ui.global.CONSTANTS
import
com.mobiuz.app.dev.ui.global.ExitDialog
import
com.mobiuz.app.dev.ui.global.OfflineBottomSheet
import
com.mobiuz.app.dev.ui.global.SenderDialog
import
com.mobiuz.app.dev.utils.NetworkUtil
import
retrofit2.HttpException
import
java.io.IOException
import
java.net.ConnectException
...
...
@@ -58,7 +61,8 @@ fun String.getDateTime(): String? {
}
fun
FragmentActivity
.
showOfflineBottomSheetDialog
(){
OfflineBottomSheet
().
show
(
supportFragmentManager
,
CONSTANTS
.
FULL_SCREEN_DIALOG
)
val
fragment
=
supportFragmentManager
.
findFragmentByTag
(
CONSTANTS
.
FULL_SCREEN_DIALOG
)
if
(
fragment
==
null
)
OfflineBottomSheet
().
show
(
supportFragmentManager
,
CONSTANTS
.
FULL_SCREEN_DIALOG
)
}
fun
Activity
.
showMessage
(
message
:
String
)
{
Toast
.
makeText
(
this
,
message
,
Toast
.
LENGTH_SHORT
).
show
()
...
...
@@ -189,6 +193,16 @@ fun FragmentActivity.showCustomDialog(string: String, status: Boolean, block: ()
dialog
.
show
(
supportFragmentManager
,
"supportFragmentManager"
)
}
fun
Fragment
.
checkInternet
():
Boolean
{
val
type
=
NetworkUtil
.
getConnectivityStatus
(
context
)
return
if
(
type
==
0
){
requireActivity
().
sendBroadcast
(
Intent
(
CONSTANTS
.
MY_CONNECTIVITY_CHANGE
))
false
}
else
{
true
}
}
typealias
SingleBlock
<
T
>
=
(
T
)
->
Unit
typealias
MultiBlock
<
T
,
K
>
=
(
T
,
K
)
->
Unit
typealias
ThreeBlock
<
T
,
K
,
M
>
=
(
T
,
K
,
M
)
->
Unit
...
...
app/src/main/res/layout/layout_offline_bottom_sheet.xml
View file @
a38cff28
...
...
@@ -46,7 +46,7 @@
android:background=
"@drawable/edit_text_bgn"
android:layout_marginHorizontal=
"24dp"
android:layout_marginBottom=
"@dimen/_16sdp"
android:paddingVertical=
"1
2
dp"
android:paddingVertical=
"1
6
dp"
android:text=
"@string/close_process"
android:textSize=
"14sp"
/>
</LinearLayout>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment