diff --git a/src/Yesod/Auth/Facebook/ClientSide.hs b/src/Yesod/Auth/Facebook/ClientSide.hs
--- a/src/Yesod/Auth/Facebook/ClientSide.hs
+++ b/src/Yesod/Auth/Facebook/ClientSide.hs
@@ -39,7 +39,7 @@
 import Data.Text (Text)
 import System.Locale (defaultTimeLocale)
 import Text.Hamlet (hamlet)
-import Text.Julius (JavascriptUrl, julius)
+import Text.Julius (JavascriptUrl, julius, rawJS)
 import Yesod.Auth
 import Yesod.Content
 import Yesod.Core
@@ -48,7 +48,6 @@
 import qualified Data.Aeson.Types as A
 import qualified Data.Text as T
 import qualified Data.Text.Encoding as TE
-import qualified Data.Text.Lazy.Encoding as TLE
 import qualified Data.Time as TI
 import qualified Data.Time.Clock.POSIX as TI
 import qualified Facebook as FB
@@ -87,7 +86,7 @@
     lift $ (,,) <$> getFbLanguage
                 <*> getFbInitOpts
                 <*> maybeAuthId
-  let loggedIn = maybe ("false" :: Text) (const "true") muid
+  let loggedIn = maybe False (const True) muid
       loginRoute  = toMaster $ fbcsR ["login"]
       logoutRoute = toMaster $ LogoutR
       fbInitOpts  = A.object $ map (uncurry (A..=)) fbInitOptsList
@@ -100,20 +99,20 @@
        var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
        if (d.getElementById(id)) {return;}
        js = d.createElement('script'); js.id = id; js.async = true;
-       js.src = "//connect.facebook.net/#{lang}/all.js";
+       js.src = "//connect.facebook.net/#{rawJS lang}/all.js";
        ref.parentNode.insertBefore(js, ref);
      }(document));
 
     // Init the SDK upon load
     window.fbAsyncInit = function() {
-      FB.init(#{TLE.decodeUtf8 $ A.encode fbInitOpts});
+      FB.init(#{A.toJSON fbInitOpts});
       ^{fbAsyncInitJs}
 
       // Subscribe to statusChange event.
       FB.Event.subscribe("auth.statusChange", function (response) {
         if (response) {
           // If the user is logged in on our site or not.
-          var loggedIn = #{loggedIn};
+          var loggedIn = #{A.toJSON loggedIn};
 
           if (response.status === 'connected') {
             // Facebook says the user is logged in.
diff --git a/yesod-auth-fb.cabal b/yesod-auth-fb.cabal
--- a/yesod-auth-fb.cabal
+++ b/yesod-auth-fb.cabal
@@ -1,5 +1,5 @@
 Name:                yesod-auth-fb
-Version:             1.3.1
+Version:             1.3.2
 Synopsis:            Authentication backend for Yesod using Facebook.
 Homepage:            https://github.com/meteficha/yesod-auth-fb
 License:             BSD3
@@ -45,7 +45,7 @@
                  , yesod-core   == 1.1.*
                  , yesod-auth   == 1.1.*
                  , hamlet
-                 , shakespeare-js
+                 , shakespeare-js >= 1.0.2
                  , wai
                  , http-conduit
                  , text         >= 0.7     && < 0.12
