From 35fc8bc97aaf55dc1ae6ba5253a4c5e937f7ccf9 Mon Sep 17 00:00:00 2001 From: Odweta Date: Sat, 17 Feb 2024 20:37:17 +0100 Subject: [PATCH] made v0.9 release, added: show/hide button on sign in (password), made parent accounts work (when a user is a parent, the data that is shown corresponds to the first child in alphabetical order -> maybe this should get fixed if a parent has multiple children on the same school) --- mobile/app/build.gradle.kts | 3 +- .../java/com/odweta/solon/CalWeekFragment.kt | 14 +++++- .../src/main/java/com/odweta/solon/Dialogs.kt | 1 - .../java/com/odweta/solon/MainFragment.kt | 7 +++ .../com/odweta/solon/MarkDetailsFragment.kt | 2 +- .../java/com/odweta/solon/MarksFragment.kt | 2 +- .../odweta/solon/MarksOneSubjectFragment.kt | 2 +- .../java/com/odweta/solon/MenuFragment.kt | 8 ++-- .../src/main/java/com/odweta/solon/Network.kt | 34 ++++++++++---- .../src/main/java/com/odweta/solon/Parsing.kt | 9 ++-- .../java/com/odweta/solon/SignInFragment.kt | 35 ++++++++++++++ .../com/odweta/solon/SignInMainFragment.kt | 28 ++++++++++++ .../src/main/java/com/odweta/solon/Vars.kt | 2 + mobile/app/src/main/res/drawable/hide.png | Bin 0 -> 5001 bytes mobile/app/src/main/res/drawable/show.png | Bin 0 -> 4816 bytes .../app/src/main/res/layout/activity_menu.xml | 12 ++--- .../src/main/res/layout/activity_sign_in.xml | 43 ++++++++++++------ release/solon.apk | Bin 12871814 -> 12874558 bytes 18 files changed, 155 insertions(+), 47 deletions(-) create mode 100644 mobile/app/src/main/res/drawable/hide.png create mode 100644 mobile/app/src/main/res/drawable/show.png diff --git a/mobile/app/build.gradle.kts b/mobile/app/build.gradle.kts index c114785..c1b839b 100644 --- a/mobile/app/build.gradle.kts +++ b/mobile/app/build.gradle.kts @@ -12,7 +12,7 @@ android { minSdk = 28 targetSdk = 34 versionCode = 1 - versionName = "0.8" + versionName = "0.9" } buildTypes { @@ -47,5 +47,4 @@ dependencies { implementation("androidx.viewpager2:viewpager2:1.0.0") implementation("com.github.bumptech.glide:glide:4.16.0") implementation("com.google.android.material:material:1.11.0") - implementation("com.github.bumptech.glide:glide:4.16.0") } \ No newline at end of file diff --git a/mobile/app/src/main/java/com/odweta/solon/CalWeekFragment.kt b/mobile/app/src/main/java/com/odweta/solon/CalWeekFragment.kt index bfa4e2c..0758570 100644 --- a/mobile/app/src/main/java/com/odweta/solon/CalWeekFragment.kt +++ b/mobile/app/src/main/java/com/odweta/solon/CalWeekFragment.kt @@ -27,7 +27,9 @@ import androidx.viewpager2.adapter.FragmentStateAdapter import androidx.viewpager2.widget.ViewPager2 import java.time.LocalDate import java.time.LocalTime +import java.time.MonthDay import kotlin.math.floor +import kotlin.time.Duration.Companion.days class CalWeekFragment : Fragment() { override fun onCreateView( @@ -176,6 +178,14 @@ class DayFragment(private val i: Int) : Fragment() { subjectStroke ) ) + } else if (i == day.subjects.size - 1) { + subjectDrawable.setStroke( + 10, + ContextCompat.getColor( + requireContext(), + subjectStroke + ) + ) } } else if ( nowD == subjD && @@ -221,8 +231,8 @@ class DayFragment(private val i: Int) : Fragment() { } requireView().postInvalidate() - // repeat every 40 seconds - handler.postDelayed(this, 40000L) + // repeat every second + handler.postDelayed(this, 1000L) } }, 0L) } diff --git a/mobile/app/src/main/java/com/odweta/solon/Dialogs.kt b/mobile/app/src/main/java/com/odweta/solon/Dialogs.kt index 4c2d365..b7b3d7d 100644 --- a/mobile/app/src/main/java/com/odweta/solon/Dialogs.kt +++ b/mobile/app/src/main/java/com/odweta/solon/Dialogs.kt @@ -45,7 +45,6 @@ class Dialogs { val okButton = getButton(BUTTON_POSITIVE) okButton?.setTextColor(ContextCompat.getColor(context, R.color.white)) val cancelButton = getButton(BUTTON_NEGATIVE) - Log.d("debug", "$okButton $cancelButton") cancelButton?.setTextColor(ContextCompat.getColor(context, R.color.white)) } } diff --git a/mobile/app/src/main/java/com/odweta/solon/MainFragment.kt b/mobile/app/src/main/java/com/odweta/solon/MainFragment.kt index 9b57d91..01349da 100644 --- a/mobile/app/src/main/java/com/odweta/solon/MainFragment.kt +++ b/mobile/app/src/main/java/com/odweta/solon/MainFragment.kt @@ -1,6 +1,7 @@ package com.odweta.solon import android.os.Bundle +import android.util.Log import android.view.LayoutInflater import android.view.View import android.view.ViewGroup @@ -38,6 +39,12 @@ class MainFragment : Fragment() { private fun setup(view: View) { toolbar = view.findViewById(R.id.toolbar) + role = if (Parsing.userIsParent()) { + " - Rodič" + } else { + " - Student" + } + if ( Util.fileToString(Vars.userDataFilePath) != "" && JSONObject(Util.fileToString(Vars.userDataFilePath)).has("fullName") diff --git a/mobile/app/src/main/java/com/odweta/solon/MarkDetailsFragment.kt b/mobile/app/src/main/java/com/odweta/solon/MarkDetailsFragment.kt index d68eb67..36990ed 100644 --- a/mobile/app/src/main/java/com/odweta/solon/MarkDetailsFragment.kt +++ b/mobile/app/src/main/java/com/odweta/solon/MarkDetailsFragment.kt @@ -157,7 +157,7 @@ class MarkDetailsFragment(private val marks: MutableList, private var idx: val dateDesc = makeTV("Datum:", Typeface.BOLD, Util.getDisplayWidth(requireContext())/3) val dateTV = makeTV(getDate(marks[idx!!].date), Typeface.NORMAL, 22f) val weightDesc = makeTV("Váha:", Typeface.BOLD, Util.getDisplayWidth(requireContext())/3) - val weightTV = makeTV(marks[idx!!].weight, Typeface.NORMAL, 22f) + val weightTV = makeTV((marks[idx!!].weight).replace(".", ","), Typeface.NORMAL, 22f) val subjectRow = makeRow(subjectDesc, subjectTV) val descRow = makeRow(descDesc, descTV) diff --git a/mobile/app/src/main/java/com/odweta/solon/MarksFragment.kt b/mobile/app/src/main/java/com/odweta/solon/MarksFragment.kt index 58c3099..9a0df6c 100644 --- a/mobile/app/src/main/java/com/odweta/solon/MarksFragment.kt +++ b/mobile/app/src/main/java/com/odweta/solon/MarksFragment.kt @@ -178,7 +178,7 @@ class MarksFragment : Fragment() { avgTextView.typeface = customFont val text = if (!marks.contains(Mark().none())) { - Util.avg(marks) + Util.avg(marks).replace(".", ",") } else { "-" } diff --git a/mobile/app/src/main/java/com/odweta/solon/MarksOneSubjectFragment.kt b/mobile/app/src/main/java/com/odweta/solon/MarksOneSubjectFragment.kt index 8c11a86..44bc254 100644 --- a/mobile/app/src/main/java/com/odweta/solon/MarksOneSubjectFragment.kt +++ b/mobile/app/src/main/java/com/odweta/solon/MarksOneSubjectFragment.kt @@ -152,7 +152,7 @@ class MarksOneSubjectFragment(private val marks: MutableList) : DialogFrag subjectDetailsLL.addView(wholeNameTV) val avgTV = TextView(requireContext()) - avgTV.text = "${Util.avg(marks)} " // plus a space for the italic stuff + avgTV.text = "${Util.avg(marks).replace(".", ",")} " // plus a space for the italic stuff avgTV.textSize = 28f avgTV.setTypeface(customFont, Typeface.BOLD_ITALIC) avgTV.textAlignment = View.TEXT_ALIGNMENT_TEXT_END diff --git a/mobile/app/src/main/java/com/odweta/solon/MenuFragment.kt b/mobile/app/src/main/java/com/odweta/solon/MenuFragment.kt index 0355ec1..60e9ede 100644 --- a/mobile/app/src/main/java/com/odweta/solon/MenuFragment.kt +++ b/mobile/app/src/main/java/com/odweta/solon/MenuFragment.kt @@ -24,14 +24,14 @@ class MenuFragment : Fragment() { @SuppressLint("InflateParams") private fun addCallbacks(view: View) { - val settings = view.findViewById