|
|
@@ -3,17 +3,22 @@ package fr.forum_thalie.tsumugi.planning
|
|
3
|
3
|
import android.content.Context
|
|
4
|
4
|
import androidx.lifecycle.MutableLiveData
|
|
5
|
5
|
import fr.forum_thalie.tsumugi.Async
|
|
|
6
|
+import fr.forum_thalie.tsumugi.R
|
|
6
|
7
|
import fr.forum_thalie.tsumugi.weekdays
|
|
7
|
8
|
import org.json.JSONObject
|
|
8
|
9
|
import java.io.IOException
|
|
9
|
10
|
import java.net.URL
|
|
|
11
|
+import java.util.*
|
|
|
12
|
+import kotlin.collections.ArrayList
|
|
10
|
13
|
|
|
11
|
14
|
class Planning {
|
|
12
|
15
|
|
|
13
|
16
|
val programmes: ArrayList<Programme> = ArrayList()
|
|
14
|
17
|
private var regularProgramme: String? = null
|
|
15
|
18
|
val currentProgramme: MutableLiveData<String> = MutableLiveData()
|
|
16
|
|
- val isProgrammeUpdated: MutableLiveData<Boolean> = MutableLiveData()
|
|
|
19
|
+ val isDataFetched: MutableLiveData<Boolean> = MutableLiveData()
|
|
|
20
|
+
|
|
|
21
|
+ var timeZone: TimeZone = Calendar.getInstance().timeZone
|
|
17
|
22
|
|
|
18
|
23
|
private fun findCurrentProgramme(): String
|
|
19
|
24
|
{
|
|
|
@@ -21,7 +26,7 @@ class Planning {
|
|
21
|
26
|
if (it.isCurrent())
|
|
22
|
27
|
return it.title
|
|
23
|
28
|
}
|
|
24
|
|
- return regularProgramme ?: "none"
|
|
|
29
|
+ return regularProgramme ?: "-"
|
|
25
|
30
|
}
|
|
26
|
31
|
|
|
27
|
32
|
fun checkProgramme()
|
|
|
@@ -81,9 +86,17 @@ class Planning {
|
|
81
|
86
|
programmes.add(Programme(title, periodicity, hourBegin, hourEnd))
|
|
82
|
87
|
}
|
|
83
|
88
|
}
|
|
84
|
|
- if (result.has("regular_programme"))
|
|
85
|
|
- regularProgramme = result.getString("regular_programme")
|
|
86
|
|
- isProgrammeUpdated.value = true
|
|
|
89
|
+ regularProgramme = if (result.has("regular_programme"))
|
|
|
90
|
+ result.getString("regular_programme")
|
|
|
91
|
+ else
|
|
|
92
|
+ context?.getString(R.string.regular_programme)
|
|
|
93
|
+
|
|
|
94
|
+ timeZone = if (result.has("timezone"))
|
|
|
95
|
+ TimeZone.getTimeZone(result.getString("timezone"))
|
|
|
96
|
+ else
|
|
|
97
|
+ Calendar.getInstance().timeZone
|
|
|
98
|
+
|
|
|
99
|
+ isDataFetched.value = true
|
|
87
|
100
|
}
|
|
88
|
101
|
Async(scrape, post)
|
|
89
|
102
|
}
|