Skip to content

Commit

Permalink
Merge pull request #449 from team-mohaeng/develop
Browse files Browse the repository at this point in the history
Release 1.0.0v
  • Loading branch information
jooyae authored Dec 12, 2021
2 parents 237bb16 + 7617dfc commit e6919c9
Show file tree
Hide file tree
Showing 32 changed files with 147 additions and 128 deletions.
8 changes: 3 additions & 5 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ android {
applicationId "org.journey.android"
minSdkVersion 23
targetSdkVersion 31
versionCode 4
versionCode 7
versionName "1.0"

testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
Expand Down
4 changes: 2 additions & 2 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
<meta-data
android:name="com.google.firebase.messaging.default_notification_color"
android:resource="@android:color/holo_orange_light" />
<!-- Set color used with incoming notification messages (알림 채널 메타 데이터 추가) -->
<meta-data
android:name="com.google.firebase.messaging.default_notification_channel_id"
android:value="@string/default_notification_channel_id" />
Expand All @@ -33,9 +34,8 @@
<action android:name="com.google.firebase.MESSAGING_EVENT"/>
</intent-filter>
</service>

<activity
android:name="org.journey.android.splash.frame.EntryActivity"
android:name="org.journey.android.EntryActivity"
android:exported="true">
</activity>
<activity
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
package org.journey.android.splash.frame
package org.journey.android

import android.content.pm.PackageManager
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Base64
import android.util.Log
import androidx.appcompat.app.AppCompatActivity
import androidx.navigation.NavController
import androidx.navigation.fragment.NavHostFragment
import com.kakao.sdk.common.util.Utility
import dagger.hilt.android.AndroidEntryPoint
import org.journey.android.R
import org.journey.android.databinding.ActivityEntryBinding
import org.journey.android.util.TedRxKeyboardObserver
import java.security.MessageDigest
Expand Down Expand Up @@ -52,4 +51,5 @@ class EntryActivity : AppCompatActivity() {
Log.e("name not found", e.toString())
}
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import android.view.View
import android.view.ViewGroup
import android.widget.Button
import android.widget.ImageButton
import android.widget.TextView
import android.widget.Toast
import androidx.core.content.ContextCompat
import androidx.fragment.app.Fragment
Expand Down Expand Up @@ -129,30 +130,65 @@ class CommunityDetailFragment : Fragment() {
val reportBtn = view.findViewById<Button>(R.id.button_dialog_report)

reportBtn.setOnClickListener {
val call: Call<Unit> = FeedRequestToServer.writeService
.reportDiary(
feedDetail.get("id") as Int,
"application/json",
viewModel.getJWT()
)
call.enqueue(object : Callback<Unit> {
override fun onResponse(call: Call<Unit>, response: Response<Unit>) {
if (response.isSuccessful) {
Toast.makeText(requireContext(), "신고했습니다.", Toast.LENGTH_SHORT).show()
reportDialog?.dismiss()
} else {
if(response.code() == 404 || response.code() == 401){
Toast.makeText(requireContext(), response.message(), Toast.LENGTH_SHORT).show()
reportDialog?.dismiss()

val reportCheckDialog = activity?.let { it1 -> Dialog(it1) }
val reportCheckDialogInflater: LayoutInflater = LayoutInflater.from(activity)
val mView: View =
reportCheckDialogInflater.inflate(R.layout.dialog_detail_delete, null)
val reportBtn: Button = mView.findViewById(R.id.button_dialog_delete)
val closeBtn: Button = mView.findViewById(R.id.button_dialog_close)
val window = reportCheckDialog?.window
window?.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT))

val reportTitle: TextView = mView.findViewById(R.id.textview_dialog_delete)
val reportContent: TextView = mView.findViewById(R.id. textview_delete_content)
reportTitle.text = "신고하기"
reportContent.text = "10회 이상 신고될 경우 \n게시물이 삭제되고 계정이 차단 조치돼"
reportBtn.text = "신고"


if (reportCheckDialog != null) {
reportCheckDialog.setContentView(mView)
reportCheckDialog.create()
reportCheckDialog.show()
}
closeBtn.setOnClickListener {
if (reportCheckDialog != null) {
reportCheckDialog.dismiss()
reportCheckDialog.cancel()
}
}
reportBtn.setOnClickListener {
val call: Call<Unit> = FeedRequestToServer.writeService
.reportDiary(
feedDetail.get("id") as Int,
"application/json",
viewModel.getJWT()
)
call.enqueue(object : Callback<Unit> {
override fun onResponse(call: Call<Unit>, response: Response<Unit>) {
if (response.isSuccessful) {
Toast.makeText(requireContext(), "신고했습니다.", Toast.LENGTH_SHORT)
.show()
reportDialog?.dismiss()
} else {
if (response.code() == 404 || response.code() == 401) {
Toast.makeText(
requireContext(),
"이미 신고한 게시물입니다.",
Toast.LENGTH_SHORT
).show()
}
}
// Toast.makeText(requireContext(), response.toString(), Toast.LENGTH_SHORT).show()
reportCheckDialog?.dismiss()
}
}

override fun onFailure(call: Call<Unit>, t: Throwable) {
Log.d("Report Diary NT Error", "Report Error!")
}
})
reportDialog?.dismiss()
override fun onFailure(call: Call<Unit>, t: Throwable) {
Log.d("Report Diary NT Error", "Report Error!")
}
})
}
}

reportDialog?.setContentView(view)
Expand Down
6 changes: 3 additions & 3 deletions app/src/main/java/org/journey/android/di/NetworkModule.kt
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,9 @@ object NetworkModule {
@UnAuthOkHttp
fun provideAuthOkHttpClientBuilder(): OkHttpClient {
return OkHttpClient.Builder()
.connectTimeout(30, TimeUnit.SECONDS)
.writeTimeout(30, TimeUnit.SECONDS)
.readTimeout(30, TimeUnit.SECONDS)
.connectTimeout(60, TimeUnit.SECONDS)
.writeTimeout(60, TimeUnit.SECONDS)
.readTimeout(60, TimeUnit.SECONDS)
.addInterceptor(loggingInterceptor)
.build()
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ class EditNickNameFragment : Fragment() {
super.onViewCreated(view, savedInstanceState)
binding.viewModel = viewModel
binding.lifecycleOwner = viewLifecycleOwner
binding.edittextEditNickname.hint = viewModel.getNickName()
setButtonVisible()
popBackStack()
changeNickName()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,11 @@ import org.journey.android.main.dto.ResponseHomeDTO
import org.journey.android.mypage.data.dto.response.ResponseCheckMyPageDTO
import org.journey.android.mypage.data.dto.response.ResponseCompleteCourseDTO
import org.journey.android.pushalarm.data.response.ResponsePushAlarmDTO
import org.journey.android.signup.data.request.RequestBlockUserDTO
import org.journey.android.signup.data.request.RequestChangeNickNameDTO
import org.journey.android.signup.data.request.RequestSignupDTO
import org.journey.android.signup.data.request.RequestSocialSignUpDTO
import org.journey.android.signup.data.response.ResponseBlockUserDTO
import org.journey.android.signup.data.response.ResponseChangeNickNameDTO
import org.journey.android.signup.data.response.ResponseSignupDTO
import org.journey.android.signup.data.response.ResponseSocialSignUpDTO
Expand Down Expand Up @@ -124,4 +126,7 @@ interface RetrofitInterface {
@Part image: MultipartBody.Part?
): Single<ResponsePostCommunityDTO>

@POST("/api/block")
fun blockUser(@Body requestBlockUserDTO: RequestBlockUserDTO) : Single<ResponseBlockUserDTO>

}
Original file line number Diff line number Diff line change
@@ -1,19 +1,27 @@
package org.journey.android.onboarding

import android.content.Intent
import android.os.Bundle
import android.util.Log
import androidx.appcompat.app.AppCompatActivity
import androidx.navigation.NavController
import androidx.navigation.fragment.NavHostFragment
import com.kakao.sdk.common.util.Utility
import dagger.hilt.android.AndroidEntryPoint
import io.reactivex.rxjava3.disposables.CompositeDisposable
import org.journey.android.EntryActivity
import org.journey.android.R
import org.journey.android.databinding.ActivityOnboardingBinding
import org.journey.android.frame.MainActivity
import org.journey.android.preference.UserPreferenceManager
import javax.inject.Inject

@AndroidEntryPoint
class OnboardingActivity : AppCompatActivity() {
private lateinit var binding : ActivityOnboardingBinding
private lateinit var navController: NavController
@Inject lateinit var userPreferenceManager: UserPreferenceManager
private val disposable = CompositeDisposable()

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
Expand All @@ -28,6 +36,27 @@ class OnboardingActivity : AppCompatActivity() {
val navHostFragment =
supportFragmentManager.findFragmentById(R.id.navigation_host_fragment) as NavHostFragment
navController = navHostFragment.navController

}

private fun handleFlow() {
val isAlreadyLogin = userPreferenceManager.fetchIsAlreadyLogIn()
Log.e("isAlready", "$isAlreadyLogin")
when {
isAlreadyLogin -> {
startActivity(Intent(this, MainActivity::class.java))
finish()
}
else -> {
startActivity(Intent(this, OnboardingActivity::class.java))
finish()
}
}
}

override fun onDestroy() {
super.onDestroy()
disposable.clear()
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,14 @@ import dagger.hilt.android.AndroidEntryPoint
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
import io.reactivex.rxjava3.core.Observable
import io.reactivex.rxjava3.schedulers.Schedulers
import org.journey.android.EntryActivity
import org.journey.android.R
import org.journey.android.databinding.FragmentOnboardingFirstBinding
import org.journey.android.splash.frame.EntryActivity
import org.journey.android.frame.MainActivity
import org.journey.android.onboarding.viewmodel.OnboardingViewModel
import org.journey.android.preference.UserPreferenceManager
import org.journey.android.util.AutoClearedValue
import org.journey.android.util.Extensions.applyVisibilityAnimation
import java.util.*
import java.util.concurrent.TimeUnit
import javax.inject.Inject

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import androidx.fragment.app.Fragment
import dagger.hilt.android.AndroidEntryPoint
import org.journey.android.R
import org.journey.android.databinding.FragmentOnboardingSixthBinding
import org.journey.android.splash.frame.EntryActivity
import org.journey.android.EntryActivity
import org.journey.android.util.AutoClearedValue

@AndroidEntryPoint
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package org.journey.android.preference


class UserPreferenceManager(private val sharedPreferencesManager: SharedPreferencesManager) {
fun saveUserFcmDeviceToken(token: String?) = sharedPreferencesManager.putSharedPref(FCM_DEVICE_TOKEN, token)
fun fetchUserFcmDeviceToken(): String = sharedPreferencesManager.getSharedPrefs(FCM_DEVICE_TOKEN, "")
Expand All @@ -26,7 +25,6 @@ class UserPreferenceManager(private val sharedPreferencesManager: SharedPreferen
fun saveIsAlreadyLogIn(isAlreadyLogIn: Boolean) = sharedPreferencesManager.putSharedPref(IS_ALREADY_LOGIN, isAlreadyLogIn)
fun fetchIsAlreadyLogIn(): Boolean = sharedPreferencesManager.getSharedPrefs(IS_ALREADY_LOGIN, false)


fun saveCheckEmail(checkEmail: String) { sharedPreferencesManager.putSharedPref(CHECK_EMAIL, checkEmail) }
fun fetchCheckEmail(): String { return sharedPreferencesManager.getSharedPrefs(CHECK_EMAIL, "") }

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package org.journey.android.signup.data.request

data class RequestBlockUserDTO(
val nickname : String
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package org.journey.android.signup.data.response

data class ResponseBlockUserDTO(
val status : Int,
val message : String
)
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import androidx.fragment.app.viewModels
import androidx.navigation.fragment.findNavController
import dagger.hilt.android.AndroidEntryPoint
import org.journey.android.databinding.FragmentSetNickNameBinding
import org.journey.android.frame.MainActivity
import org.journey.android.EntryActivity
import org.journey.android.preference.UserPreferenceManager
import org.journey.android.signup.viewmodel.NickNameViewModel
import org.journey.android.util.AutoClearedValue
Expand Down Expand Up @@ -47,27 +47,29 @@ class SetNickNameFragment : Fragment() {
}
private fun initMain() {
binding.buttonSetNickname.setOnClickListener {
viewModel.setNickName()
if(userPreferenceManager.fetchUserSnsType().isNullOrEmpty()){
viewModel.signUpEmail()
viewModel.signUpSuccess.observe(viewLifecycleOwner) { successed ->
viewModel.saveEmailSignUpInformation()
userPreferenceManager.saveUserSnsType("")
viewModel.emailSignUpSuccess.observe(viewLifecycleOwner) { successed ->
if(successed) {
val intent = Intent(context, MainActivity::class.java)
val intent = Intent(context, EntryActivity::class.java)
startActivity(intent)
}
}
} else{
viewModel.setNickName()
}
}
// userPreferenceManager.saveUserSnsType("")
userPreferenceManager.saveUserEmail(viewModel.getEmail())
userPreferenceManager.saveUserPassword(viewModel.getCheckPassword())
userPreferenceManager.saveUserSnsType("")
}
private fun checkNickName(){
viewModel.nickname.observe(viewLifecycleOwner){
viewModel.checkNickNameAvailable()
}
}

private fun setButtonVisible(){
binding.edittextSetNickname.addTextChangedListener(object : TextWatcher {
override fun beforeTextChanged(p0: CharSequence?, p1: Int, p2: Int, p3: Int) {
Expand All @@ -80,6 +82,4 @@ class SetNickNameFragment : Fragment() {
override fun afterTextChanged(p0: Editable?) {}
})
}


}
Loading

0 comments on commit e6919c9

Please sign in to comment.