InputProfilThirdFiveActivity.kt 11.9 KB
package com.example.vip

import android.content.Context
import android.content.Intent
import android.content.SharedPreferences
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import android.view.View.VISIBLE
import android.widget.Button
import android.widget.TextView
import android.widget.Toast
import androidx.appcompat.app.AlertDialog
import com.google.android.gms.tasks.OnCompleteListener
import com.google.firebase.auth.FirebaseAuth
import com.google.firebase.database.FirebaseDatabase
import com.google.firebase.iid.FirebaseInstanceId
import com.google.firebase.messaging.FirebaseMessaging
import kotlinx.android.synthetic.main.activity_input_profil_third_five.*
import kotlinx.android.synthetic.main.activity_input_profil_third_four.nextButton
import kotlinx.android.synthetic.main.activity_input_profil_third_four.previousButton
import kotlinx.android.synthetic.main.activity_input_profil_third_four.skipButton
import kotlinx.android.synthetic.main.activity_input_profil_third_four.toolbar
import kotlinx.android.synthetic.main.dialog_example.*

class InputProfilThirdFiveActivity : AppCompatActivity() {

    private val firebaseAuth = FirebaseAuth.getInstance()
    val user_db = FirebaseDatabase.getInstance("https://wello-topic.firebaseio.com/").reference
    private fun sendToken(){
        FirebaseInstanceId.getInstance().instanceId
            .addOnCompleteListener(OnCompleteListener { task ->
                if (!task.isSuccessful) {
                    //Log.w(TAG, "getInstanceId failed", task.exception)
                    return@OnCompleteListener
                }

                // Get new Instance ID token
                tkn = task.result!!.token

                // Log and toast
                val msg = getString(R.string.msg_token_fmt, tkn)
                //Log.d(TAG, msg)
                Toast.makeText(baseContext, msg, Toast.LENGTH_SHORT).show()
            })
    }

    private fun writeNewUser(Topic : String) {
        user_db.child(Topic).setValue(1)/// .setValue(user)
    }

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_input_profil_third_five)

        val prof: SharedPreferences =getSharedPreferences("profdata", Context.MODE_PRIVATE)
        val editor: SharedPreferences.Editor=prof.edit()

        // 1. 툴바 사용 설정
        setSupportActionBar(toolbar)

        //pushing code start
        intent.extras?.let {
            for (key in it.keySet()) {
                val value = intent.extras?.get(key)
                //Log.d(TAG, "Key: $key Value: $value")
            }
        }
        //pushing code end

        questionButton.setOnClickListener {
            val builder = AlertDialog.Builder(this)
            val dialogView = layoutInflater.inflate(R.layout.dialog_example, null)
            //val dialogText = dialogView.findViewById<EditText>(R.id.dialogEt)
            //val dialogRatingBar = dialogView.findViewById<RatingBar>(R.id.dialogRb)
            dialogView.findViewById<TextView>(R.id.dialogTitle).text="용어설명"
            dialogView.findViewById<TextView>(R.id.dialogContent1).text="- 희귀 난치성, 중증질환이란?"
            dialogView.findViewById<TextView>(R.id.dialogContent2).visibility= VISIBLE
            dialogView.findViewById<TextView>(R.id.dialogContent2).text="암, 심장병, 뇌질환, 희귀난치성\n질환 등 중증질환"
            dialogView.findViewById<TextView>(R.id.dialogContent3).visibility= VISIBLE
            dialogView.findViewById<TextView>(R.id.dialogContent3).text="- 중증질환 외 질병이란?"
            dialogView.findViewById<TextView>(R.id.dialogContent4).visibility= VISIBLE
            dialogView.findViewById<TextView>(R.id.dialogContent4).text="만성질환자, 당뇨, 고혈압, 결핵,\n선천성대사이상, 치매(파킨슨) 등"
            //dialogView.findViewById<TextView>(R.id.dialogContent5).visibility= VISIBLE
            //dialogView.findViewById<TextView>(R.id.dialogContent5).text=""
            //dialogView.findViewById<TextView>(R.id.dialogContent6).visibility= VISIBLE
            //dialogView.findViewById<TextView>(R.id.dialogContent6).text=""

            builder.setView(dialogView)
                .setPositiveButton("이해했어요 :)") { dialogInterface, i ->
                    //mainTv.text = dialogText.text.toString()
                    //mainRb.rating = dialogRatingBar.rating
                    /* 확인일 때 main의 View의 값에 dialog View에 있는 값을 적용 */

                }
                /*
             .setNegativeButton("취소") { dialogInterface, i ->
                 /* 취소일 때 아무 액션이 없으므로 빈칸 */
             }
             */
                .show()


        }


        skipButton.setOnClickListener {
            sendToken()
            val user=firebaseAuth?.currentUser!!.uid
            Log.d("test:", user.toString())

            val cat_1=listOf("c1_1","c1_2","c1_3")
            val cat_2=listOf("c2_1","c2_2","c2_3","c2_4","c2_5","c2_6","c2_7")
            val cat_3=listOf("c3_1","c3_2","c3_3")
            val cat_4=listOf("c4_1","c4_2","c4_3","c4_4","c4_5","c4_6","c4_7","c4_8","c4_9","c4_10","c4_11")
            val cat_5=listOf("c5_1","c5_2","c5_3","c5_4","c5_5","c5_6","c5_7","c5_8","c5_9")
            val cat_6=listOf("c6_1","c6_2","c6_3","c6_4","c6_5","c6_6","c6_7")
            val cat_7=listOf("c7_1","c7_2","c7_3")
            val cat_8=listOf("c8_1","c8_2","c8_3","c8_4","c8_5","c8_6","c8_7","c8_8","c8_9","c8_10","c8_11","c8_12","c8_13","c8_14","c8_15","c8_16","c8_17")
            val cat_9=listOf("c9_1","c9_2","c9_3","c9_4","c9_5","c9_6","c9_7","c9_8","c9_9","c9_10","c9_11","c9_12","c9_13","c9_14","c9_15","c9_16","c9_17","c9_18","c9_19")
            val cat_10=listOf("c10_1","c10_2","c10_3","c10_4","c10_5","c10_6","c10_7","c10_8","c10_9","c10_10","c10_11","c10_12","c10_13","c10_14","c10_15","c10_16","c10_17","c10_18")
            val cat_11=listOf("c11_1","c11_2","c11_3","c11_4","c11_5","c11_6","c11_7","c11_8","c11_9","c11_10","c11_11","c11_12","c11_13","c11_14","c11_15","c11_16","c11_17","c11_18")
            val cat_12=listOf("c12_1","c12_100","c12_101","c12_102","c12_103","c12_104","c12_105","c12_106","c12_107","c12_108","c12_109","c12_110","c12_111","c12_112","c12_113","c12_114","c12_115","c12_116","c12_117","c12_118","c12_119","c12_120","c12_121","c12_122","c12_123","c12_124","c12_125","c12_126","c12_127","c12_128","c12_129","c12_130","c12_131","c12_132","c12_133","c12_134","c12_135","c12_136","c12_137","c12_138","c12_139","c12_140","c12_141","c12_142","c12_143","c12_144","c12_145","c12_146","c12_147","c12_148","c12_149","c12_150","c12_151","c12_152","c12_153","c12_154","c12_155","c12_156","c12_157","c12_158","c12_159","c12_160","c12_161","c12_162","c12_163","c12_164","c12_165","c12_166","c12_167","c12_168","c12_169","c12_170","c12_171","c12_172","c12_173","c12_174","c12_175","c12_176","c12_177","c12_178","c12_179","c12_180","c12_181","c12_182","c12_183","c12_184","c12_185","c12_186","c12_187","c12_188","c12_189","c12_190","c12_191","c12_192","c12_193","c12_194","c12_195","c12_196","c12_197","c12_198","c12_199","c12_200","c12_201","c12_202","c12_203","c12_204","c12_205","c12_206","c12_207","c12_208","c12_209","c12_210","c12_211","c12_212","c12_213","c12_214","c12_215","c12_216","c12_217","c12_218","c12_219","c12_220","c12_221","c12_222","c12_223","c12_224","c12_225","c12_226","c12_227","c12_228","c12_229","c12_230","c12_231","c12_232","c12_233","c12_234","c12_235","c12_236","c12_237","c12_238","c12_239","c12_240","c12_241","c12_242","c12_243","c12_244","c12_245","c12_246","c12_247","c12_248","c12_249","c12_250","c12_251","c12_252","c12_253","c12_254","c12_255","c12_256","c12_257","c12_258","c12_259","c12_260","c12_261","c12_262","c12_263","c12_264","c12_265","c12_266","c12_267","c12_268","c12_269","c12_270","c12_271","c12_272","c12_273","c12_274","c12_275","c12_276","c12_277","c12_278","c12_279","c12_280","c12_281","c12_282","c12_283","c12_284","c12_285","c12_286","c12_287","c12_288","c12_289","c12_290","c12_291","c12_292","c12_293","c12_294","c12_295","c12_296","c12_297","c12_298","c12_299","c12_300","c12_301","c12_302","c12_303","c12_304","c12_305","c12_306","c12_307","c12_308","c12_309","c12_310","c12_311","c12_312","c12_313","c12_314","c12_315","c12_316","c12_317","c12_318","c12_319","c12_320","c12_321","c12_322","c12_323","c12_324","c12_325","c12_326","c12_327","c12_328","c12_329","c12_330","c12_331","c12_332","c12_333","c12_334","c12_335","c12_336","c12_337","c12_338","c12_339","c12_340","c12_341","c12_342","c12_343","c12_344","c12_345","c12_346","c12_347","c12_348","c12_349","c12_350")
            val cat_13=listOf("c13_1","c13_2","c13_3")
            val cat_14=listOf("c14_1","c14_2","c14_3")
            val cat_15=listOf("c15_1","c15_2","c15_3")
            val cat_16=listOf("c16_1","c16_2","c16_3","c16_4","c16_5","c16_6","c16_7")

            val cat_list=mutableListOf<String>()
            cat_list.addAll(cat_1)
            cat_list.addAll(cat_2)
            cat_list.addAll(cat_3)
            cat_list.addAll(cat_4)
            cat_list.addAll(cat_5)
            cat_list.addAll(cat_6)
            cat_list.addAll(cat_7)
            cat_list.addAll(cat_8)
            cat_list.addAll(cat_9)
            cat_list.addAll(cat_10)
            cat_list.addAll(cat_11)
            cat_list.addAll(cat_12)
            cat_list.addAll(cat_13)
            cat_list.addAll(cat_14)
            cat_list.addAll(cat_15)
            cat_list.addAll(cat_16)

            var user_topic=""
            for(item in cat_list){if(prof.getInt(item,3)==1){user_topic=user_topic+item}}

            if(prof.getString("existing_topic","none")!=user_topic){
                FirebaseMessaging.getInstance().unsubscribeFromTopic(prof.getString("existing_topic","none").toString())
                FirebaseMessaging.getInstance().subscribeToTopic(user_topic).addOnCompleteListener { task ->
                    if (!task.isSuccessful) { } // 성공
                }
                writeNewUser(user_topic) // db에 쓰기
                editor.putString("existing_topic",user_topic)
                editor.commit()
            }else{

            }
            var intent = Intent(this, SignInActivity::class.java)
            startActivity(intent)
        }


        previousButton.setOnClickListener {
            var intent = Intent(this, InputProfilThirdFourActivity::class.java)
            startActivity(intent)
        }

        nextButton.setOnClickListener {

            if(nothingButton.isChecked){editor.putInt("c8_1",1); editor.commit();editor.putString("third_four","done");editor.commit()}//DB,pref 뻑 주의
            if(imshinButton.isChecked){editor.putInt("c7_2",1); editor.commit();editor.putString("third_four","done");editor.commit()}
            if(nanchiButton.isChecked){editor.putInt("c9_17",1); editor.commit();editor.putString("third_four","done");editor.commit()}
            if(oeButton.isChecked){editor.putInt("c9_18",1); editor.commit();editor.putString("third_four","done");editor.commit()}
            if(yoyaangButton.isChecked){editor.putInt("c9_19",1); editor.commit();editor.putString("third_four","done");editor.commit()}
            if(guitarButton.isChecked){editor.putInt("c8_17",1); editor.commit();editor.putString("third_four","done");editor.commit()}

            var intent = Intent(this, InputProfilFourthOneActivity::class.java)
            startActivity(intent)
        }

        imshinButton.setOnClickListener{nothingButton.isChecked=false}
        nanchiButton.setOnClickListener{nothingButton.isChecked=false}
        oeButton.setOnClickListener{nothingButton.isChecked=false}
        yoyaangButton.setOnClickListener{nothingButton.isChecked=false}
        guitarButton.setOnClickListener{nothingButton.isChecked=false}

        nothingButton.setOnClickListener {
            imshinButton.isChecked=false
            nanchiButton.isChecked=false
            oeButton.isChecked=false
            yoyaangButton.isChecked=false
            guitarButton.isChecked=false
        }
    }
}