diff --git a/app/src/main/java/org/mosad/seil0/projectlaogai/fragments/MensaFragment.kt b/app/src/main/java/org/mosad/seil0/projectlaogai/fragments/MensaFragment.kt
index 7b0149e..4c3f64b 100644
--- a/app/src/main/java/org/mosad/seil0/projectlaogai/fragments/MensaFragment.kt
+++ b/app/src/main/java/org/mosad/seil0/projectlaogai/fragments/MensaFragment.kt
@@ -22,15 +22,11 @@
package org.mosad.seil0.projectlaogai.fragments
-import android.os.Build
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
-import android.widget.ScrollView
import androidx.fragment.app.Fragment
-import com.afollestad.materialdialogs.MaterialDialog
-import com.google.android.material.floatingactionbutton.FloatingActionButton
import kotlinx.android.synthetic.main.fragment_mensa.*
import org.jetbrains.anko.doAsync
import org.jetbrains.anko.uiThread
@@ -47,21 +43,16 @@ import org.mosad.seil0.projectlaogai.uicomponents.MealLinearLayout
/**
* The mensa controller class
* contains all needed parts to display and the mensa detail screen
+ * TODO investigate reading the mensa card value via nfc in a background task, show value if card detected
*/
class MensaFragment : Fragment() {
- private lateinit var btnCardValue: FloatingActionButton
- private lateinit var scrollViewMensa: ScrollView
-
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
val view: View = inflater.inflate(R.layout.fragment_mensa, container, false)
- btnCardValue = view.findViewById(R.id.btnCardValue)
- scrollViewMensa = view.findViewById(R.id.scrollView_Mensa)
-
// init actions
- initActions()
+ refreshAction()
// add the current week (week starts on sunday)
val dayCurrent = if(NotRetardedCalendar().getDayOfWeekIndex() == 6) 0 else NotRetardedCalendar().getDayOfWeekIndex()
@@ -75,32 +66,6 @@ class MensaFragment : Fragment() {
return view
}
- private fun initActions() {
- refreshAction() // must be async
-
- btnCardValue.setOnClickListener {
- MaterialDialog(context!!)
- .title(text = "Mensa-Karte")
- .message(text = "das aktuelle Guthaben beträgt\n\n13,70€")
- .show()
- }
-
- // TODO only works with android m(23) or higher
- // hide the btnCardValue if the user is scrolling down
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
- scrollViewMensa.setOnScrollChangeListener(object: View.OnScrollChangeListener {
- override fun onScrollChange(v: View?, scrollX: Int, scrollY: Int, oldScrollX: Int, oldScrollY: Int) {
- if (scrollY > oldScrollY) {
- btnCardValue.hide()
- } else {
- btnCardValue.show()
- }
- }
- })
- }
-
- }
-
/**
* add all menus from dayStart to Friday for a given week
* @param menusWeek menu of type MensaWeek you want to add
diff --git a/app/src/main/java/org/mosad/seil0/projectlaogai/fragments/TimeTableFragment.kt b/app/src/main/java/org/mosad/seil0/projectlaogai/fragments/TimeTableFragment.kt
index e841244..5fdd17b 100644
--- a/app/src/main/java/org/mosad/seil0/projectlaogai/fragments/TimeTableFragment.kt
+++ b/app/src/main/java/org/mosad/seil0/projectlaogai/fragments/TimeTableFragment.kt
@@ -22,12 +22,15 @@
package org.mosad.seil0.projectlaogai.fragments
+import android.os.Build
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
+import android.widget.ScrollView
import androidx.fragment.app.Fragment
import com.afollestad.materialdialogs.MaterialDialog
+import com.google.android.material.floatingactionbutton.FloatingActionButton
import kotlinx.android.synthetic.main.fragment_timetable.*
import org.jetbrains.anko.doAsync
import org.jetbrains.anko.uiThread
@@ -50,13 +53,17 @@ import java.util.*
class TimeTableFragment : Fragment() {
private val formatter = SimpleDateFormat("E dd.MM", Locale.getDefault())
+ private lateinit var scrollViewTimetable: ScrollView
+ private lateinit var faBtnAddLesson: FloatingActionButton
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
val view: View = inflater.inflate(R.layout.fragment_timetable, container, false)
+ scrollViewTimetable = view.findViewById(R.id.scrollView_Timetable)
+ faBtnAddLesson = view.findViewById(R.id.faBtnAddLesson)
// init actions
- refreshAction()
+ initActions()
if (timetables[0].days.isNotEmpty() && timetables[1].days.isNotEmpty()) {
addInitWeeks()
@@ -70,6 +77,38 @@ class TimeTableFragment : Fragment() {
return view
}
+ /**
+ * initialize the actions
+ */
+ private fun initActions() = doAsync {
+
+ uiThread {
+ refreshLayout_Timetable.setOnRefreshListener {
+ updateTimetableScreen()
+ }
+
+ faBtnAddLesson.setOnClickListener {
+ MaterialDialog(context!!)
+ .title(text = "Vorlesung hinzufügen")
+ .message(text = "wähle einen Studiengang aus:\n\nWähle eine Vorlesung aus: \n\n Diese Funktion ist noch nicht verfügbar")
+ .show()
+ }
+
+ // TODO only works with android m(23) or higher
+ // hide the btnCardValue if the user is scrolling down
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
+ scrollViewTimetable.setOnScrollChangeListener { v, scrollX, scrollY, oldScrollX, oldScrollY ->
+ if (scrollY > oldScrollY) {
+ faBtnAddLesson.hide()
+ } else {
+ faBtnAddLesson.show()
+ }
+ }
+ }
+ }
+
+ }
+
/**
* add the current and next weeks lessons
*/
@@ -124,19 +163,6 @@ class TimeTableFragment : Fragment() {
}
}
- /**
- * initialize the refresh action
- */
- private fun refreshAction() = doAsync {
- uiThread {
- // set the refresh listener
- refreshLayout_Timetable.setOnRefreshListener {
- updateTimetableScreen()
- }
-
- }
- }
-
private fun updateTimetableScreen() = doAsync {
// update the cache
TCoRAPIController.getTimetable(cCourse.courseName, 0, context!!).get() // blocking since we want the new data
diff --git a/app/src/main/res/layout/fragment_mensa.xml b/app/src/main/res/layout/fragment_mensa.xml
index b49b038..b972be0 100644
--- a/app/src/main/res/layout/fragment_mensa.xml
+++ b/app/src/main/res/layout/fragment_mensa.xml
@@ -23,13 +23,5 @@
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_timetable.xml b/app/src/main/res/layout/fragment_timetable.xml
index 86982a6..ea2f788 100644
--- a/app/src/main/res/layout/fragment_timetable.xml
+++ b/app/src/main/res/layout/fragment_timetable.xml
@@ -1,6 +1,6 @@
@@ -12,7 +12,7 @@
+ android:layout_height="match_parent" android:id="@+id/scrollView_Timetable">
+
\ No newline at end of file
diff --git a/fastlane/metadata/android/de/full_description.txt b/fastlane/metadata/android/de/full_description.txt
index e5910f8..f1f25c7 100644
--- a/fastlane/metadata/android/de/full_description.txt
+++ b/fastlane/metadata/android/de/full_description.txt
@@ -1,4 +1,4 @@
-ProjectLaogai ist eine App um den Vorlesungsplan und den Mensa Speiseplan der Hochschule Offenburg anzuzeigen.
+ProjectLaogai ist eine App um den Vorlesungsplan und den Mensa-Speiseplan der Hochschule Offenburg anzuzeigen.
Features:
* schaue was es diese und nächste Woche in der Mensa zu Essen gibt