user = user.id,
clientAddresses = listOf(originAddress),
userAgent = userAgent,
- expiration = Instant.now().plus(1, ChronoUnit.HOURS)
+ expiration = newExpiration()
).also {
UserSession.put(it)
}
user = user.id,
clientAddresses = if (user.logIpAddresses) listOf(call.request.origin.remoteHost) else emptyList(),
userAgent = userAgent,
- expiration = Instant.now().plus(1, ChronoUnit.HOURS)
+ expiration = newExpiration()
)
coroutineScope {
session.userAgent == userAgent && session.expiration > Instant.now()
}
+fun newExpiration(): Instant = Instant.now().plus(2, ChronoUnit.HOURS)
+
suspend fun UserSession.renewed(clientAddress: String) = copy(
- expiration = Instant.now().plus(2, ChronoUnit.HOURS),
+ expiration = newExpiration(),
clientAddresses = if (User.get(user)?.logIpAddresses != true)
emptyList()
else if (clientAddresses.lastOrNull() != clientAddress)