11package com.seok.gitfordeveloper.views
22
3- import android.annotation.SuppressLint
43import android.graphics.Color
54import androidx.appcompat.app.AppCompatActivity
65import android.os.Bundle
7- import android.util.Log
86import android.view.Gravity
97import android.widget.LinearLayout
108import android.widget.TextView
@@ -16,15 +14,10 @@ import com.google.android.gms.ads.MobileAds
1614import com.seok.gitfordeveloper.BuildConfig
1715import com.seok.gitfordeveloper.R
1816import com.seok.gitfordeveloper.database.Commits
19- import com.seok.gitfordeveloper.retrofit.service.UserService
20- import com.seok.gitfordeveloper.utils.AuthUserInfo
21- import com.seok.gitfordeveloper.utils.AuthUserToken
22- import com.seok.gitfordeveloper.utils.GithubCrawler
23- import com.seok.gitfordeveloper.utils.ValidationCheck
17+ import com.seok.gitfordeveloper.utils.*
2418import com.seok.gitfordeveloper.viewmodel.MainViewModel
2519import kotlinx.android.synthetic.main.activity_main.*
2620import org.jetbrains.anko.*
27- import org.jsoup.Jsoup
2821
2922class MainActivity : AppCompatActivity () {
3023
@@ -33,6 +26,7 @@ class MainActivity : AppCompatActivity() {
3326 private lateinit var viewModel: MainViewModel
3427 private lateinit var githubCrawler: GithubCrawler
3528 private lateinit var validationCheck: ValidationCheck
29+ private lateinit var progressbarDialog: ProgressbarDialog
3630
3731 override fun onCreate (savedInstanceState : Bundle ? ) {
3832 super .onCreate(savedInstanceState)
@@ -43,6 +37,7 @@ class MainActivity : AppCompatActivity() {
4337 }
4438
4539 private fun init () {
40+ progressbarDialog = ProgressbarDialog (this )
4641 viewModel = ViewModelProviders .of(this ).get(MainViewModel ::class .java)
4742 authUserToken = AuthUserToken (application)
4843 authUserInfo = AuthUserInfo (application)
@@ -53,25 +48,24 @@ class MainActivity : AppCompatActivity() {
5348 val adRequest = AdRequest .Builder ().build()
5449 adView.loadAd(adRequest)
5550 }
56-
5751 private fun initViewModelFun () {
5852 viewModel.commits.observe(this , Observer { body ->
5953 setCommitUI(body)
6054 })
6155 viewModel.existCommit.observe(this , Observer { flag ->
6256 if (flag) {
63- viewModel.getCommits(authUserInfo.getUserEmail (getString(R .string.user_email )))
57+ viewModel.getCommits(authUserInfo.getUserUrl (getString(R .string.user_url )))
6458 }
6559 })
6660 viewModel.getAllCommitsComplete.observe(this , Observer { flag ->
6761 if (flag) {
6862 scroll_contribute.smoothScrollTo(contribute.width, contribute.height)
6963 }
64+ progressbarDialog.finish()
7065 })
7166 }
72-
73- @SuppressLint(" SetTextI18n" )
7467 private fun setCommitUI (body : List <Commits >) {
68+ val maxCommit = findMaxCommit(body)
7569 runOnUiThread {
7670 contribute.removeAllViews()
7771 contribute.columnCount = 53
@@ -86,24 +80,35 @@ class MainActivity : AppCompatActivity() {
8680 layout.gravity = Gravity .CENTER
8781 layout.addView(txt)
8882 layout.backgroundColor = Color .parseColor(commit.fill)
83+ if (commit.dataCount == maxCommit.dataCount){
84+ layout.background = getDrawable(R .drawable.rect_background)
85+ tv_max_commit.text= getString(R .string.max_contribution) + " " + commit.dataCount
86+ }
8987 contribute.addView(layout)
9088 }
91- tv_today_commit.text =
92- getString(R .string.today_commit) + " " + body[body.size - 1 ].dataCount
89+ tv_today_commit.text = getString(R .string.today_contribution) + " " + body[body.size - 1 ].dataCount
9390 viewModel.completeGetCommits()
9491 }
9592 }
96-
93+ private fun findMaxCommit (commits : List <Commits >):Commits {
94+ var commit = commits[0 ]
95+ for (c in commits) {
96+ if (commit.dataCount < c.dataCount){
97+ commit = c
98+ }
99+ }
100+ return commit
101+ }
97102 private fun checkForUserInfo () {
103+ progressbarDialog.start()
98104 val user = authUserInfo.getUser(
99105 getString(R .string.user_id),
100- getString(R .string.user_email ),
106+ getString(R .string.user_url ),
101107 getString(R .string.user_image)
102108 )
103-
104109 if (user) {
105110 tv_user_id.text = authUserInfo.getUserId(getString(R .string.user_id))
106- tv_github_url.text = authUserInfo.getUserEmail (getString(R .string.user_email ))
111+ tv_github_url.text = authUserInfo.getUserUrl (getString(R .string.user_url ))
107112 Glide .with (this ).load(authUserInfo.getUserImage(getString(R .string.user_image)))
108113 .into(user_img_profile)
109114 viewModel.checkCommit()
@@ -112,10 +117,10 @@ class MainActivity : AppCompatActivity() {
112117 viewModel.githubUserApi(authUserToken.getToken(BuildConfig .PREFERENCES_TOKEN_KEY ))
113118 .observe(this , Observer { body ->
114119 authUserInfo.setKeyValue(getString(R .string.user_id), body.login)
115- authUserInfo.setKeyValue(getString(R .string.user_email ), body.html_url)
120+ authUserInfo.setKeyValue(getString(R .string.user_url ), body.html_url)
116121 authUserInfo.setKeyValue(getString(R .string.user_image), body.avatar_url)
117122 tv_user_id.text = authUserInfo.getUserId(getString(R .string.user_id))
118- tv_github_url.text = authUserInfo.getUserEmail (getString(R .string.user_email ))
123+ tv_github_url.text = authUserInfo.getUserUrl (getString(R .string.user_url ))
119124 Glide .with (this ).load(authUserInfo.getUserImage(getString(R .string.user_image)))
120125 .into(user_img_profile)
121126 viewModel.checkCommit()
0 commit comments