2013-03-25 18:49:42 -06:00
|
|
|
package lila.app
|
2013-04-10 18:38:38 -06:00
|
|
|
package actor
|
2013-03-25 18:49:42 -06:00
|
|
|
|
|
|
|
import akka.actor._
|
2014-06-01 15:22:17 -06:00
|
|
|
import play.twirl.api.Html
|
2013-06-07 08:04:31 -06:00
|
|
|
|
2017-01-15 05:26:08 -07:00
|
|
|
import lila.game.Pov
|
2014-02-17 02:12:19 -07:00
|
|
|
import views.{ html => V }
|
2013-03-25 18:49:42 -06:00
|
|
|
|
2013-03-26 04:36:31 -06:00
|
|
|
private[app] final class Renderer extends Actor {
|
2013-03-25 18:49:42 -06:00
|
|
|
|
|
|
|
def receive = {
|
2013-03-25 23:05:05 -06:00
|
|
|
|
2014-05-03 10:11:24 -06:00
|
|
|
case lila.tv.actorApi.RenderFeaturedJs(game) =>
|
2015-08-25 06:23:49 -06:00
|
|
|
sender ! V.game.featuredJs(Pov first game)
|
2013-03-25 23:05:05 -06:00
|
|
|
|
2014-02-17 02:12:19 -07:00
|
|
|
case lila.tournament.actorApi.TournamentTable(tours) =>
|
2014-06-29 13:13:15 -06:00
|
|
|
sender ! spaceless(V.tournament.enterable(tours))
|
2014-03-15 14:19:36 -06:00
|
|
|
|
2015-04-06 07:13:57 -06:00
|
|
|
case lila.simul.actorApi.SimulTable(simuls) =>
|
|
|
|
sender ! spaceless(V.simul.allCreated(simuls))
|
|
|
|
|
2014-03-15 14:19:36 -06:00
|
|
|
case lila.puzzle.RenderDaily(puzzle, fen, lastMove) =>
|
2014-06-29 13:13:15 -06:00
|
|
|
sender ! spaceless(V.puzzle.daily(puzzle, fen, lastMove))
|
2014-05-06 16:27:48 -06:00
|
|
|
|
|
|
|
case lila.tv.StreamsOnAir(streams) => sender ! V.tv.streamsOnAir(streams)
|
2013-03-25 18:49:42 -06:00
|
|
|
}
|
2014-06-29 13:13:15 -06:00
|
|
|
|
|
|
|
private val spaceRegex = """\s{2,}""".r
|
|
|
|
private def spaceless(html: Html) = Html {
|
|
|
|
spaceRegex.replaceAllIn(html.body.replace("\\n", " "), " ")
|
|
|
|
}
|
2013-03-25 18:49:42 -06:00
|
|
|
}
|