https://github.com/LupusArgentum/TelekomWidget/blob/main/forked-telekom.js
-
-
Save LupusArgentum/27a12aeb2db42cf1a3658f6b10ad9079 to your computer and use it in GitHub Desktop.
const line2 = list.addText(100 - data.usedPercentage + "%")
line2.font = Font.boldSystemFont(36)
// rough calculate remainig percentage of this month
// adjust colors according to what's needed within rest of the month
let availableMonthPercentage = (data.remainingSeconds / (31*86400)) * 100
let bufferPercentage = 5
line2.textColor = Color.green()
if (data.usedPercentage >= ((100 - availableMonthPercentage) - bufferPercentage) && data.usedPercentage >= bufferPercentage) {
line2.textColor = Color.orange()
} else if (data.usedPercentage >= ((100 - availableMonthPercentage) + bufferPercentage) || data.usedPercentage >= 90) {
line2.textColor = Color.red()
}Aus dem else if muss ein if gemacht werden, dann klappt es besser.
So sieht es inzwischen bei mir aus:
Ich habe noch weitere Änderungen vorgenommen:
- Anzeige des verbleibenden statt des verbrauchten Volumens (im Text und in der Prozentangabe)
- Anzeige der Restlaufzeit in Tagen (falls noch Tage vorhanden sind) und Stunden. Ggf. als "< 1 Stunde", wenn nur noch Minuten übrig sind.
- Anzeige der Uhrzeit der letzten erfolgreichen Aktualisierung. Ggf. mit Datum, wenn das nicht am selben Tag war.
Kannst du die geänderten Passagen hier einstellen, damit ich die Restlaufzeit in Tagen sowie die Uhrzeit der letzten ERFOLGREICHEN Aktualisierung ebenfalls einstellen kann? Aber Anzeige des verbrauchten Datenvolumens möchte ich gerne beibehalten.
Und ist der Änderung von JoeGIT42 hilfreich? Muss ich dann zusätzlich das "else if" gegen "if" eintauschen?
Vielen Dank im Voraus! :)
Ich habe noch weitere Änderungen vorgenommen:
- Anzeige des verbleibenden statt des verbrauchten Volumens (im Text und in der Prozentangabe)
- Anzeige der Restlaufzeit in Tagen (falls noch Tage vorhanden sind) und Stunden. Ggf. als "< 1 Stunde", wenn nur noch Minuten übrig sind.
- Anzeige der Uhrzeit der letzten erfolgreichen Aktualisierung. Ggf. mit Datum, wenn das nicht am selben Tag war.
Kannst du die geänderten Passagen hier einstellen, damit ich die Restlaufzeit in Tagen sowie die Uhrzeit der letzten ERFOLGREICHEN Aktualisierung ebenfalls einstellen kann? Aber Anzeige des verbrauchten Datenvolumens möchte ich gerne beibehalten.
Und ist der Änderung von JoeGIT42 hilfreich? Muss ich dann zusätzlich das "else if" gegen "if" eintauschen?Vielen Dank im Voraus! :)
Wenn du mir den Code gibst, schaue ich mal, was davon ich hier einstellen möchte.
Zeile34: if (!data || !data.usedPercentage)
Hier sollte nichtusedPercentage
genutzt werden. Zu Beginn des Abrechnungszeitraums ist das verbrauchte Volumen = 0.
Befindet man sich dann im WLAN, schlägt die Überprüfung zu. Ich habe hier aufinitialVolume
gewechselt.
Die Zeile ist noch aus dem Original-Skript, darüber hatte ich mir bislang keine Gedanken gemacht. Sollte
if (!data)
nicht eigentlich ausreichen?
Zeile34: if (!data || !data.usedPercentage)
Hier sollte nichtusedPercentage
genutzt werden. Zu Beginn des Abrechnungszeitraums ist das verbrauchte Volumen = 0.
Befindet man sich dann im WLAN, schlägt die Überprüfung zu. Ich habe hier aufinitialVolume
gewechselt.Die Zeile ist noch aus dem Original-Skript, darüber hatte ich mir bislang keine Gedanken gemacht. Sollte
if (!data)
nicht eigentlich ausreichen?
Würde ich auch sagen, allerdings weiss ich nicht, was die Zeile darüber zurückgibt, wenn aus der iCloud keine Daten gelesen werden können. Ich würde false
oder null
erwarten. Aber wenn es das nicht, macht die zusätzliche Abfrage eines Wertes Sinn.
Wenn du mir den Code gibst, schaue ich mal, was davon ich hier einstellen möchte.
Den mache ich nachher nochmal etwas schöner.
Als Issue kann ich das hier nicht eintragen, oder? Dann wäre der potentielle merge leichter.
Wenn du mir den Code gibst, schaue ich mal, was davon ich hier einstellen möchte.
Den mache ich nachher nochmal etwas schöner.
Als Issue kann ich das hier nicht eintragen, oder? Dann wäre der potentielle merge leichter.
Ich habe das ganze hier mal als Repo erstellt, da kannst du deinen Issue ggf. eintragen.
Ich habe mich eben selbst daran gewagt deine Änderungen zu programmieren und merke, dass das ganze komplizierter ist als gedacht, daher freue ich mich auf deinen Input :)
Anzeige der Uhrzeit der letzten erfolgreichen (letzter Abruf von datapass.de, nicht mehr letzter Widget-Refresh) Aktualisierung. Ggf. mit Datum, wenn das nicht am selben Tag war.
Das ist mit dem aktuellen Update umgesetzt.
Zeile34: if (!data || !data.usedPercentage)
Hier sollte nicht
usedPercentage
genutzt werden. Zu Beginn des Abrechnungszeitraums ist das verbrauchte Volumen = 0.Befindet man sich dann im WLAN, schlägt die Überprüfung zu. Ich habe hier auf
initialVolume
gewechselt.