From b38a375181b94315bc80da5eb5895b817f756927 Mon Sep 17 00:00:00 2001 From: Thibault Duplessis Date: Fri, 17 Jul 2015 17:09:18 +0200 Subject: [PATCH] better usage of cookies for prefs --- app/controllers/Pref.scala | 11 ++++++----- app/views/base/layout.scala.html | 4 ++-- modules/api/src/main/Context.scala | 9 ++++++--- modules/pref/src/main/Pref.scala | 2 +- 4 files changed, 15 insertions(+), 11 deletions(-) diff --git a/app/controllers/Pref.scala b/app/controllers/Pref.scala index 86bf17749b..0cf666e29d 100644 --- a/app/controllers/Pref.scala +++ b/app/controllers/Pref.scala @@ -42,7 +42,7 @@ object Pref extends LilaController { implicit val req = ctx.body (setters get name) ?? { case (form, fn) => FormResult(form) { v => - fn(v, ctx) map { Ok(()) withCookies _ } + fn(v, ctx) map { cookies => Ok(()).withCookies(cookies: _*) } } } } @@ -62,8 +62,9 @@ object Pref extends LilaController { "bgImg" -> (forms.bgImg -> save("bgImg") _), "is3d" -> (forms.is3d -> save("is3d") _)) - private def save(name: String)(value: String, ctx: Context): Fu[Cookie] = - ctx.me ?? { - api.setPrefString(_, name, value, notifyChange = false) - } inject LilaCookie.session(name, value)(ctx.req) + private def save(name: String)(value: String, ctx: Context): Fu[List[Cookie]] = + ctx.me match { + case Some(me) => api.setPrefString(me, name, value, notifyChange = false) inject Nil + case None => fuccess(List(LilaCookie.session(name, value)(ctx.req))) + } } diff --git a/app/views/base/layout.scala.html b/app/views/base/layout.scala.html index bdadaaa3f5..769b4f7fb2 100644 --- a/app/views/base/layout.scala.html +++ b/app/views/base/layout.scala.html @@ -38,8 +38,8 @@ withLangAnnotations: Boolean = true)(body: Html)(implicit ctx: Context) @openGraph.map(_.html) @if(withLangAnnotations){@langAnnotations} - @if(ctx.pref.transp) { - + @ctx.transpBgImg.map { img => + }