Archived
Added "Last updated" string to FoodFragment and info dialog, simplified "if-else" branch in MiscData.getIcon() to when-statement
This commit is contained in:
@@ -7,13 +7,8 @@ import android.graphics.Color
|
||||
import android.media.RingtoneManager
|
||||
import android.os.AsyncTask
|
||||
import android.os.Build
|
||||
import android.os.Handler
|
||||
import android.os.Looper
|
||||
import android.preference.PreferenceManager
|
||||
import android.view.View
|
||||
import android.view.animation.Animation
|
||||
import android.view.animation.AnimationUtils
|
||||
import android.widget.ProgressBar
|
||||
import android.widget.RemoteViews
|
||||
import androidx.core.app.NotificationCompat
|
||||
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout
|
||||
@@ -45,9 +40,8 @@ class DataFetcher(isplan: Boolean, ismenu: Boolean, isjobservice: Boolean, conte
|
||||
private val prefs = PreferenceManager.getDefaultSharedPreferences(mContext)
|
||||
private val edit = prefs.edit()
|
||||
private lateinit var pullToRefresh: SwipeRefreshLayout
|
||||
private val fadeOut = AnimationUtils.loadAnimation(mContext, R.anim.fade_out)
|
||||
private val handler = Handler(Looper.getMainLooper())
|
||||
var currentTime = ""
|
||||
var currentFoodTime = ""
|
||||
val substUrl = "https://djd4rkn355.github.io/subst_test.html"
|
||||
val foodUrl = "https://djd4rkn355.github.io/food_test.html"
|
||||
|
||||
@@ -60,56 +54,52 @@ class DataFetcher(isplan: Boolean, ismenu: Boolean, isjobservice: Boolean, conte
|
||||
val foodViewModel = FoodViewModel(mApplication)
|
||||
val docFood = Jsoup.connect(foodUrl).get()
|
||||
val foodElements = docFood.select("th")
|
||||
currentFoodTime = docFood.select("h1")[0].text()
|
||||
if (currentFoodTime != prefs.getString("timeFood", "")) {
|
||||
|
||||
var foodInt = 0
|
||||
var priority = 0
|
||||
foodViewModel.deleteAll()
|
||||
while (foodInt in 0 until foodElements.size) {
|
||||
try { // what a mess this is!
|
||||
if (foodElements[foodInt].text().contains("Montag") ||
|
||||
foodElements[foodInt].text().contains("Dienstag") ||
|
||||
foodElements[foodInt].text().contains("Mittwoch") ||
|
||||
foodElements[foodInt].text().contains("Donnerstag") ||
|
||||
foodElements[foodInt].text().contains("Freitag")) {
|
||||
var foodInt = 0
|
||||
var priority = 0
|
||||
foodViewModel.deleteAll()
|
||||
while (foodInt in 0 until foodElements.size) {
|
||||
try { // what a mess this is!
|
||||
with(foodElements[foodInt].text()) {
|
||||
if (contains("Montag") || contains("Dienstag") || contains("Mittwoch") ||
|
||||
contains("Donnerstag") || contains("Freitag")) {
|
||||
val three = foodElements[foodInt + 3].text()
|
||||
val two = foodElements[foodInt + 2].text()
|
||||
if (three.contains("Montag") || three.contains("Dienstag") || three.contains("Mittwoch") ||
|
||||
three.contains("Donnerstag") || three.contains("Freitag") || three.contains("von")) {
|
||||
foodViewModel.insert(Food(foodElements[foodInt].text() + "\n"
|
||||
+ foodElements[foodInt + 1].text() + "\n"
|
||||
+ foodElements[foodInt + 2].text(), priority))
|
||||
foodInt += 2
|
||||
} else if (two.contains("Montag") || two.contains("Dienstag") || two.contains("Mittwoch") ||
|
||||
two.contains("Donnerstag") || two.contains("Freitag") || two.contains("von")) {
|
||||
foodViewModel.insert(Food(foodElements[foodInt].text() + "\n"
|
||||
+ foodElements[foodInt + 1].text(), priority))
|
||||
foodInt += 1
|
||||
}
|
||||
} else {
|
||||
foodViewModel.insert(Food(foodElements[foodInt].text(), priority))
|
||||
}
|
||||
}
|
||||
|
||||
if (foodElements[foodInt + 3].text().contains("Montag") ||
|
||||
foodElements[foodInt + 3].text().contains("Dienstag") ||
|
||||
foodElements[foodInt + 3].text().contains("Mittwoch") ||
|
||||
foodElements[foodInt + 3].text().contains("Donnerstag") ||
|
||||
foodElements[foodInt + 3].text().contains("Freitag") ||
|
||||
foodElements[foodInt + 3].text().contains("von")) {
|
||||
} catch (e: IndexOutOfBoundsException) {
|
||||
try {
|
||||
foodViewModel.insert(Food(foodElements[foodInt].text() + "\n"
|
||||
+ foodElements[foodInt + 1].text() + "\n"
|
||||
+ foodElements[foodInt + 2].text(), priority))
|
||||
foodInt += 2
|
||||
} else if (foodElements[foodInt + 2].text().contains("Montag") ||
|
||||
foodElements[foodInt + 2].text().contains("Dienstag") ||
|
||||
foodElements[foodInt + 2].text().contains("Mittwoch") ||
|
||||
foodElements[foodInt + 2].text().contains("Donnerstag") ||
|
||||
foodElements[foodInt + 2].text().contains("Freitag") ||
|
||||
foodElements[foodInt + 2].text().contains("von")) {
|
||||
break
|
||||
} catch (e1: IndexOutOfBoundsException) {
|
||||
foodViewModel.insert(Food(foodElements[foodInt].text() + "\n"
|
||||
+ foodElements[foodInt + 1].text(), priority))
|
||||
foodInt += 1
|
||||
break
|
||||
}
|
||||
|
||||
} else {
|
||||
foodViewModel.insert(Food(foodElements[foodInt].text(), priority))
|
||||
}
|
||||
} catch (e: IndexOutOfBoundsException) {
|
||||
try {
|
||||
foodViewModel.insert(Food(foodElements[foodInt].text() + "\n"
|
||||
+ foodElements[foodInt + 1].text() + "\n"
|
||||
+ foodElements[foodInt + 2].text(), priority))
|
||||
break
|
||||
} catch (e1: IndexOutOfBoundsException) {
|
||||
foodViewModel.insert(Food(foodElements[foodInt].text() + "\n"
|
||||
+ foodElements[foodInt + 1].text(), priority))
|
||||
break
|
||||
}
|
||||
foodInt++
|
||||
priority++
|
||||
}
|
||||
foodInt++
|
||||
priority++
|
||||
edit.putString("timeFood", currentFoodTime).apply()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -227,12 +217,14 @@ class DataFetcher(isplan: Boolean, ismenu: Boolean, isjobservice: Boolean, conte
|
||||
if (plan || menu) {
|
||||
mView?.let { v: View ->
|
||||
pullToRefresh.isRefreshing = false
|
||||
if (plan) {
|
||||
val snackBarView = v.findViewById<View>(R.id.coordination)
|
||||
val sb = StringBuilder()
|
||||
val lastUpdated = sb.append(mContext.getText(R.string.lastupdatedK)).append(currentTime)
|
||||
Snackbar.make(snackBarView, lastUpdated, Snackbar.LENGTH_LONG).show()
|
||||
val snackBarView = v.findViewById<View>(R.id.coordination)
|
||||
val sb = StringBuilder()
|
||||
val time = when {
|
||||
menu -> currentFoodTime
|
||||
else -> currentTime
|
||||
}
|
||||
val lastUpdated = sb.append(mContext.getText(R.string.lastupdatedK)).append(time)
|
||||
Snackbar.make(snackBarView, lastUpdated, Snackbar.LENGTH_LONG).show()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -253,7 +253,9 @@ class Main : AppCompatActivity(R.layout.app_bar_main) {
|
||||
val dialog = AlertDialog.Builder(context)
|
||||
val dialogView = LayoutInflater.from(context).inflate(R.layout.simple_dialog, null)
|
||||
dialogView.findViewById<TextView>(R.id.textviewtitle).text = getString(R.string.information)
|
||||
dialogView.findViewById<TextView>(R.id.dialogtext).text = prefs.getString("informational", "")
|
||||
val sb = StringBuilder()
|
||||
val dialogText = sb.append(getText(R.string.lastupdatedK)).append((prefs.getString("time", "") ?: "") + "\n\n").append(prefs.getString("informational", ""))
|
||||
dialogView.findViewById<TextView>(R.id.dialogtext).text = dialogText
|
||||
dialog.setView(dialogView).show()
|
||||
}
|
||||
|
||||
|
||||
@@ -5,58 +5,35 @@ object MiscData {
|
||||
fun emoji(unicode: Int): String { return String(Character.toChars(unicode)) }
|
||||
|
||||
fun getIcon(course: String): Int {
|
||||
return if (course.toLowerCase().contains("deu") || course.toLowerCase().contains("dep") || course.toLowerCase().contains("daz")) {
|
||||
R.drawable.ic_german
|
||||
} else if (course.toLowerCase().contains("mat") || course.toLowerCase().contains("map")) {
|
||||
R.drawable.ic_maths
|
||||
} else if (course.toLowerCase().contains("eng") || course.toLowerCase().contains("enp") || course.toLowerCase().contains("ena")) {
|
||||
R.drawable.ic_english
|
||||
} else if (course.toLowerCase().contains("spo") || course.toLowerCase().contains("spp") || course.toLowerCase().contains("spth")) {
|
||||
R.drawable.ic_pe
|
||||
} else if (course.toLowerCase().contains("pol") || course.toLowerCase().contains("pop")) {
|
||||
R.drawable.ic_politics
|
||||
} else if (course.toLowerCase().contains("dar") || course.toLowerCase().contains("dap")) {
|
||||
R.drawable.ic_drama
|
||||
} else if (course.toLowerCase().contains("phy") || course.toLowerCase().contains("php")) {
|
||||
R.drawable.ic_physics
|
||||
} else if (course.toLowerCase().contains("bio") || course.toLowerCase().contains("bip") || course.toLowerCase().contains("nw")) {
|
||||
R.drawable.ic_biology
|
||||
} else if (course.toLowerCase().contains("che") || course.toLowerCase().contains("chp")) {
|
||||
R.drawable.ic_chemistry
|
||||
} else if (course.toLowerCase().contains("phi") || course.toLowerCase().contains("psp")) {
|
||||
R.drawable.ic_philosophy
|
||||
} else if (course.toLowerCase().contains("laa") || course.toLowerCase().contains("laf") || course.toLowerCase().contains("lat")) {
|
||||
R.drawable.ic_latin
|
||||
} else if (course.toLowerCase().contains("spa") || course.toLowerCase().contains("spf")) {
|
||||
R.drawable.ic_spanish
|
||||
} else if (course.toLowerCase().contains("fra") || course.toLowerCase().contains("frf") || course.toLowerCase().contains("frz")) {
|
||||
R.drawable.ic_french
|
||||
} else if (course.toLowerCase().contains("inf")) {
|
||||
R.drawable.ic_compsci
|
||||
} else if (course.toLowerCase().contains("ges")) {
|
||||
R.drawable.ic_history
|
||||
} else if (course.toLowerCase().contains("rel")) {
|
||||
R.drawable.ic_religion
|
||||
} else if (course.toLowerCase().contains("geg") || course.toLowerCase().contains("wuk")) {
|
||||
R.drawable.ic_geography
|
||||
} else if (course.toLowerCase().contains("kun")) {
|
||||
R.drawable.ic_arts
|
||||
} else if (course.toLowerCase().contains("mus")) {
|
||||
R.drawable.ic_music
|
||||
} else if (course.toLowerCase().contains("tue")) {
|
||||
R.drawable.ic_turkish
|
||||
} else if (course.toLowerCase().contains("chi")) {
|
||||
R.drawable.ic_chinese
|
||||
} else if (course.toLowerCase().contains("gll")) {
|
||||
R.drawable.ic_gll
|
||||
} else if (course.toLowerCase().contains("wat")) {
|
||||
R.drawable.ic_wat
|
||||
} else if (course.toLowerCase().contains("för")) {
|
||||
R.drawable.ic_help
|
||||
} else if (course.toLowerCase().contains("wp") || course.toLowerCase().contains("met")) {
|
||||
R.drawable.ic_pencil
|
||||
} else {
|
||||
R.drawable.ic_empty
|
||||
return with (course.toLowerCase()) {
|
||||
when {
|
||||
contains("deu") || contains("dep") || contains("daz") -> R.drawable.ic_german
|
||||
contains("mat") || contains("map") -> R.drawable.ic_maths
|
||||
contains("eng") || contains("enp") || contains("ena") -> R.drawable.ic_english
|
||||
contains("spo") || contains("spp") || contains("spth") -> R.drawable.ic_pe
|
||||
contains("pol") || contains("pop") -> R.drawable.ic_politics
|
||||
contains("dar") || contains("dap") -> R.drawable.ic_drama
|
||||
contains("phy") || contains("php") -> R.drawable.ic_physics
|
||||
contains("bio") || contains("bip") || contains("nw") -> R.drawable.ic_biology
|
||||
contains("che") || contains("chp") -> R.drawable.ic_chemistry
|
||||
contains("phi") || contains("psp") -> R.drawable.ic_philosophy
|
||||
contains("laa") || contains("laf") || contains("lat") -> R.drawable.ic_latin
|
||||
contains("spa") || contains("spf") -> R.drawable.ic_spanish
|
||||
contains("fra") || contains("frf") || contains("frz") -> R.drawable.ic_french
|
||||
contains("inf") -> R.drawable.ic_compsci
|
||||
contains("ges") -> R.drawable.ic_history
|
||||
contains("rel") -> R.drawable.ic_religion
|
||||
contains("geg") || contains("wuk") -> R.drawable.ic_geography
|
||||
contains("kun") -> R.drawable.ic_arts
|
||||
contains("mus") -> R.drawable.ic_music
|
||||
contains("tue") -> R.drawable.ic_turkish
|
||||
contains("chi") -> R.drawable.ic_chinese
|
||||
contains("gll") -> R.drawable.ic_gll
|
||||
contains("wat") -> R.drawable.ic_wat
|
||||
contains("för") -> R.drawable.ic_help
|
||||
contains("wp") || contains("met") -> R.drawable.ic_pencil
|
||||
else -> R.drawable.ic_empty
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -53,7 +53,6 @@ open class PlanFragment : Fragment(R.layout.plan) {
|
||||
else -> 2
|
||||
}
|
||||
}
|
||||
|
||||
layoutManager = GridLayoutManager(mContext, grid)
|
||||
recyclerView.layoutManager = layoutManager
|
||||
}
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
android:id="@+id/toolbar"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="84dp"
|
||||
app:popupTheme="@style/AppThemeLight.PopupOverlay"
|
||||
app:titleTextColor="@color/accent"
|
||||
app:contentInsetStart="0dp"
|
||||
android:elevation="0dp"
|
||||
@@ -29,7 +28,7 @@
|
||||
|
||||
<TextView
|
||||
android:id="@+id/toolbarTxt"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="start"
|
||||
android:fontFamily="@font/manrope_extrabold"
|
||||
@@ -38,8 +37,10 @@
|
||||
android:textSize="24sp"
|
||||
android:singleLine="true"
|
||||
android:layout_marginStart="16dp"
|
||||
android:layout_marginEnd="16dp"
|
||||
android:layout_marginBottom="4dp"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"/>
|
||||
|
||||
<TextView
|
||||
|
||||
@@ -98,12 +98,10 @@
|
||||
android:layout_width="20dp"
|
||||
android:layout_height="0dp"
|
||||
android:layout_marginStart="16dp"
|
||||
android:layout_marginTop="8dp"
|
||||
android:layout_marginBottom="8dp"
|
||||
app:layout_constraintBottom_toTopOf="@+id/room"
|
||||
android:tint="@color/textcolor"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/course"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/group"
|
||||
android:tint="@color/textcolor"/>
|
||||
app:layout_constraintTop_toTopOf="@+id/course" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
|
||||
@@ -113,7 +113,7 @@
|
||||
<item>Wie geht\'s dir, %s?</item>
|
||||
<item>Gut geschlafen, %s?</item>
|
||||
<item>Hey, %s!</item>
|
||||
<item>Hi, %s!</item>
|
||||
<item>Hi %s!</item>
|
||||
<item>Schön dich zu sehen, %s.</item>
|
||||
<item>Wie geht\'s dir so, %s?</item>
|
||||
</string-array>
|
||||
@@ -123,7 +123,7 @@
|
||||
<item>Wie geht\'s dir, %s?</item>
|
||||
<item>Hoffe du hast einen schönen Tag, %s.</item>
|
||||
<item>Hey, %s!</item>
|
||||
<item>Hi, %s!</item>
|
||||
<item>Hi %s!</item>
|
||||
<item>Schön dich zu sehen, %s.</item>
|
||||
<item>Genieß\' deinen Tag, %s.</item>
|
||||
</string-array>
|
||||
@@ -133,7 +133,7 @@
|
||||
<item>Wie geht\'s dir, %s?</item>
|
||||
<item>Genieß\' deinen Abend, %s.</item>
|
||||
<item>Hey, %s!</item>
|
||||
<item>Hi, %s!</item>
|
||||
<item>Hi %s!</item>
|
||||
<item>Schlaf\' gut, %s.</item>
|
||||
<item>Bleib\' nicht zu lang wach, %s!</item>
|
||||
</string-array>
|
||||
|
||||
@@ -127,7 +127,7 @@
|
||||
<item>How are you, %s?</item>
|
||||
<item>Slept well, %s?</item>
|
||||
<item>Hey, %s!</item>
|
||||
<item>Hi, %s!</item>
|
||||
<item>Hi %s!</item>
|
||||
<item>Nice to see you, %s.</item>
|
||||
<item>How\'ve you been, %s?</item>
|
||||
</string-array>
|
||||
@@ -137,7 +137,7 @@
|
||||
<item>How are you, %s?</item>
|
||||
<item>Enjoying your day, %s?</item>
|
||||
<item>Hey, %s!</item>
|
||||
<item>Hi, %s!</item>
|
||||
<item>Hi %s!</item>
|
||||
<item>Nice to see you, %s.</item>
|
||||
<item>Enjoy your day, %s!</item>
|
||||
</string-array>
|
||||
@@ -147,9 +147,8 @@
|
||||
<item>How are you, %s?</item>
|
||||
<item>Enjoying your evening, %s?</item>
|
||||
<item>Hey, %s!</item>
|
||||
<item>Hi, %s!</item>
|
||||
<item>Hi %s!</item>
|
||||
<item>Sleep tight, %s.</item>
|
||||
<item>Stayin\' up late, %s?</item>
|
||||
<item>Staying up late, %s?</item>
|
||||
</string-array>
|
||||
|
||||
</resources>
|
||||
|
||||
Reference in New Issue
Block a user