This commit is contained in:
Lars Westermann 2019-06-13 01:30:05 +02:00
parent 0c6f52b0bc
commit 0cb890de07
Signed by: lars.westermann
GPG key ID: 9D417FA5BB9D5E1D
11 changed files with 58 additions and 42 deletions

View file

@ -10,11 +10,16 @@ import de.kif.frontend.views.overview.initPostEdit
import de.kif.frontend.views.overview.initPosts
import de.kif.frontend.views.table.initTableLayout
import de.westermann.kwebview.components.init
import org.w3c.dom.get
import kotlin.browser.document
var timezoneOffset = 0L
fun main() = init {
PushServiceClient()
timezoneOffset = document.body?.dataset?.get("timezone")?.toLongOrNull() ?: 0L
if (document.getElementsByClassName("calendar").length > 0) {
initCalendar()
}

View file

@ -1,6 +1,7 @@
package de.kif.frontend.views
import de.kif.common.formatDate
import de.kif.frontend.timezoneOffset
import de.westermann.kwebview.View
import de.westermann.kwebview.components.InputType
import de.westermann.kwebview.components.InputView
@ -22,7 +23,7 @@ fun initRoomConstraints() {
fun updateDateView(inputGroup: HTMLElement, day: Int) {
val date = referenceDate + (day * 1000 * 60 * 60 * 24)
val dateName = formatDate(date)
val dateName = formatDate(date, timezoneOffset)
inputGroup.dataset["hint"] = dateName
}
@ -69,8 +70,8 @@ fun initRoomConstraints() {
})
for (e in child.children.iterator()) {
if (e.classList.contains("-day-")) {
val input = InputView.wrap(e as HTMLInputElement)
if (e is HTMLInputElement && e.name.contains("-day-")) {
val input = InputView.wrap(e)
updateDateView(child, input.value.toIntOrNull() ?: 0)
input.valueProperty.onChange {

View file

@ -4,6 +4,7 @@ import de.kif.common.formatDate
import de.kif.frontend.launch
import de.kif.frontend.repository.RoomRepository
import de.kif.frontend.repository.WorkGroupRepository
import de.kif.frontend.timezoneOffset
import de.westermann.kobserve.event.EventListener
import de.westermann.kwebview.View
import de.westermann.kwebview.async
@ -41,7 +42,7 @@ fun initWorkGroupConstraints() {
fun updateDateView(inputGroup: HTMLElement, day: Int) {
val date = referenceDate + (day * 1000 * 60 * 60 * 24)
val dateName = formatDate(date)
val dateName = formatDate(date, timezoneOffset)
inputGroup.dataset["hint"] = dateName
}
@ -279,8 +280,8 @@ fun initWorkGroupConstraints() {
})
for (e in child.children.iterator()) {
if (e.classList.contains("-day-")) {
val input = InputView.wrap(e as HTMLInputElement)
if (e is HTMLInputElement && e.name.contains("-day-")) {
val input = InputView.wrap(e)
updateDateView(child, input.value.toIntOrNull() ?: 0)
input.valueProperty.onChange {

View file

@ -1,11 +1,10 @@
package de.kif.frontend.views.board
import com.soywiz.klock.DateFormat
import com.soywiz.klock.DateTimeTz
import com.soywiz.klock.KlockLocale
import com.soywiz.klock.locale.german
import de.kif.common.formatDate
import de.kif.common.formatTime
import de.kif.frontend.launch
import de.kif.frontend.repository.ScheduleRepository
import de.kif.frontend.timezoneOffset
import de.kif.frontend.views.overview.getByClassOrCreate
import de.westermann.kwebview.interval
import de.westermann.kwebview.iterator
@ -26,7 +25,6 @@ fun initBoard() {
val referenceInitTime = dateContainer.dataset["now"]?.toLongOrNull() ?: initTime
val diff = initTime - referenceInitTime
val boardRunning = document.getElementsByClassName("board-running")[0] as HTMLElement
val scheduleList = mutableListOf<BoardSchedule>()
val runningReferenceTime = boardRunning.dataset["reference"]?.toLongOrNull() ?: 0L
@ -58,16 +56,8 @@ fun initBoard() {
interval(1000) {
val now = Date.now().toLong() + diff
val dt = DateTimeTz.fromUnixLocal(now)
timeView.textContent = DateFormat("HH:mm")
.withLocale(KlockLocale.german)
.format(dt)
dateView.textContent = DateFormat("EEEE, d. MMMM y")
.withLocale(KlockLocale.german)
.format(dt)
timeView.textContent = formatTime(now, timezoneOffset)
dateView.textContent = formatDate(now, timezoneOffset)
scheduleList.forEach { it.updateTime(now) }
}

View file

@ -3,6 +3,7 @@ package de.kif.frontend.views.overview
import de.kif.common.formatDateTime
import de.kif.frontend.launch
import de.kif.frontend.repository.PostRepository
import de.kif.frontend.timezoneOffset
import de.westermann.kobserve.event.emit
import de.westermann.kwebview.View
import de.westermann.kwebview.components.Link
@ -45,7 +46,7 @@ class PostView(
}
contentView.innerHTML = PostRepository.htmlByUrl(p.url)
footerView.innerText = formatDateTime(p.createdAt)
footerView.innerText = formatDateTime(p.createdAt, timezoneOffset)
emit(PostChangeEvent(postId))
}