From 090cbf9c19001908239d2f1e49933e1ffcf830e4 Mon Sep 17 00:00:00 2001 From: Thibault Duplessis Date: Thu, 11 Jan 2018 21:36:01 -0500 Subject: [PATCH] streamer page tweaks --- app/views/streamer/StreamerSvg.scala | 9 ++++++++- app/views/streamer/header.scala.html | 6 ++++++ app/views/streamer/show.scala.html | 5 +++-- modules/user/src/main/User.scala | 9 +++++---- public/stylesheets/streamer.show.css | 14 +++++++++++--- 5 files changed, 33 insertions(+), 10 deletions(-) diff --git a/app/views/streamer/StreamerSvg.scala b/app/views/streamer/StreamerSvg.scala index cfffc9bd5a..d00f0509da 100644 --- a/app/views/streamer/StreamerSvg.scala +++ b/app/views/streamer/StreamerSvg.scala @@ -12,7 +12,14 @@ object StreamerSvg { val youTube = Html(""" - + + +""") + + val lichess = Html(""" + + + """) } diff --git a/app/views/streamer/header.scala.html b/app/views/streamer/header.scala.html index f90df6a2b2..ff3c4ff583 100644 --- a/app/views/streamer/header.scala.html +++ b/app/views/streamer/header.scala.html @@ -19,6 +19,12 @@ @youTube.minUrl } + @if(following.isDefined) { + + @StreamerSvg.lichess + lichess.org/@@/@s.user.username + + }
diff --git a/app/views/streamer/show.scala.html b/app/views/streamer/show.scala.html index d88ebeef9f..beeab17ade 100644 --- a/app/views/streamer/show.scala.html +++ b/app/views/streamer/show.scala.html @@ -40,7 +40,8 @@ @moreJs = { @embedJs { $('button.follow').click(function() { -$(this).toggleClass('active'); +var klass = 'active'; +$(this).toggleClass(klass); $.ajax({ url: '/rel/' + ($(this).hasClass('active') ? 'follow/' : 'unfollow/') + $(this).data('user'), method:'post' @@ -89,7 +90,7 @@ case _ => { @header(s, following.some)
@richText(s.streamer.description.fold("")(_.value))
- @s.user.best8Perfs.map { pt => + @s.user.best6Perfs.map { pt => @showPerfRating(s.user, pt) } diff --git a/modules/user/src/main/User.scala b/modules/user/src/main/User.scala index 0d73946af7..f9a33b2f1e 100644 --- a/modules/user/src/main/User.scala +++ b/modules/user/src/main/User.scala @@ -84,16 +84,17 @@ case class User( def lightCount = User.LightCount(light, count.game) - private def best4Of(perfTypes: List[PerfType]) = + private def bestOf(perfTypes: List[PerfType], nb: Int) = perfTypes.sortBy { pt => -(perfs(pt).nb * PerfType.totalTimeRoughEstimation.get(pt).fold(0)(_.centis)) - } take 4 + } take nb private val firstRow: List[PerfType] = List(PerfType.Bullet, PerfType.Blitz, PerfType.Rapid, PerfType.Classical, PerfType.Correspondence) private val secondRow: List[PerfType] = List(PerfType.UltraBullet, PerfType.Crazyhouse, PerfType.Chess960, PerfType.KingOfTheHill, PerfType.ThreeCheck, PerfType.Antichess, PerfType.Atomic, PerfType.Horde, PerfType.RacingKings) - def best8Perfs: List[PerfType] = - best4Of(firstRow) ::: best4Of(secondRow) + def best8Perfs: List[PerfType] = bestOf(firstRow, 4) ::: bestOf(secondRow, 4) + + def best6Perfs: List[PerfType] = bestOf(firstRow ::: secondRow, 6) def hasEstablishedRating(pt: PerfType) = perfs(pt).established diff --git a/public/stylesheets/streamer.show.css b/public/stylesheets/streamer.show.css index e27ffe1f73..41a542a4cb 100644 --- a/public/stylesheets/streamer.show.css +++ b/public/stylesheets/streamer.show.css @@ -59,6 +59,9 @@ div.content_box.streamer h1 { height: 1.4em; margin-right: 0.4em; } +.streamer a.service:hover svg path { + fill: #3893E8!important; +} .livestream { margin-bottom: 0px; line-height: 0; @@ -77,14 +80,15 @@ div.content_box.streamer h1 { letter-spacing: 10px; } .streamer .description { - padding: 2.5em; + padding: 2.5em 50px 2.5em 65px; font-size: 1.4em; } +.streamer .services a:hover, .streamer .description a { - color: #3893E8; + color: #3893E8; } .streamer .ratings { - padding: 2em; + padding: 2em 50px 2em 58px; font-size: 1.6em; background: rgba(128,128,128,0.3); background: rgba(220,50,47,0.2); @@ -93,6 +97,10 @@ div.content_box.streamer h1 { justify-content: space-between; margin-bottom: 1em; } +.streamer .ratings span::before { + font-size: 1.6em; + margin-right: 0.1em; +} body.dark .streamer .service svg path { fill: #aaa; }