Fixed yesod-json, yesod-auth

This commit is contained in:
Michael Snoyman 2011-12-29 15:45:36 +02:00
parent f8a95f058e
commit e7c4b0a1cd
5 changed files with 6 additions and 11 deletions

View File

@ -26,7 +26,6 @@ module Yesod.Auth
#include "qq.h" #include "qq.h"
import Control.Monad (when) import Control.Monad (when)
import Control.Monad.Trans.Class (lift)
import Control.Monad.Trans.Maybe import Control.Monad.Trans.Maybe
import Data.Aeson import Data.Aeson
@ -92,7 +91,7 @@ class (Yesod m, PathPiece (AuthId m), RenderMessage m FormMessage) => YesodAuth
loginHandler :: GHandler Auth m RepHtml loginHandler :: GHandler Auth m RepHtml
loginHandler = defaultLayout $ do loginHandler = defaultLayout $ do
setTitleI Msg.LoginTitle setTitleI Msg.LoginTitle
tm <- lift getRouteToMaster tm <- liftWidget getRouteToMaster
mapM_ (flip apLogin tm) authPlugins mapM_ (flip apLogin tm) authPlugins
renderAuthMessage :: m renderAuthMessage :: m

View File

@ -21,7 +21,6 @@ import Yesod.Form
import Yesod.Handler import Yesod.Handler
import Yesod.Widget import Yesod.Widget
import Control.Monad.IO.Class (MonadIO, liftIO) import Control.Monad.IO.Class (MonadIO, liftIO)
import Control.Monad.Trans.Class (lift)
import Data.Text (Text) import Data.Text (Text)
import Control.Monad (liftM, mzero, when) import Control.Monad (liftM, mzero, when)
import Data.Monoid (mappend) import Data.Monoid (mappend)
@ -100,7 +99,7 @@ authFacebook cid secret perms =
redirectText RedirectTemporary logout redirectText RedirectTemporary logout
dispatch _ _ = notFound dispatch _ _ = notFound
login tm = do login tm = do
render <- lift getUrlRender render <- liftWidget getUrlRender
let fb = Facebook.Facebook cid secret $ render $ tm url let fb = Facebook.Facebook cid secret $ render $ tm url
let furl = Facebook.getForwardUrl fb $ perms let furl = Facebook.getForwardUrl fb $ perms
[QQ(whamlet)| [QQ(whamlet)|

View File

@ -20,7 +20,6 @@ import Data.String
import Data.ByteString.Char8 (pack) import Data.ByteString.Char8 (pack)
import Control.Arrow ((***)) import Control.Arrow ((***))
import Control.Monad.IO.Class (liftIO) import Control.Monad.IO.Class (liftIO)
import Control.Monad.Trans.Class (lift)
import Data.Text (Text, unpack) import Data.Text (Text, unpack)
import Data.Text.Encoding (encodeUtf8, decodeUtf8With) import Data.Text.Encoding (encodeUtf8, decodeUtf8With)
import Data.Text.Encoding.Error (lenientDecode) import Data.Text.Encoding.Error (lenientDecode)
@ -66,7 +65,7 @@ authOAuth name ident reqUrl accUrl authUrl key sec = AuthPlugin name dispatch lo
setCreds True creds setCreds True creds
dispatch _ _ = notFound dispatch _ _ = notFound
login tm = do login tm = do
render <- lift getUrlRender render <- liftWidget getUrlRender
let oaUrl = render $ tm $ oauthUrl name let oaUrl = render $ tm $ oauthUrl name
addHtml addHtml
[QQ(shamlet)| <a href=#{oaUrl}>Login with #{name} |] [QQ(shamlet)| <a href=#{oaUrl}>Login with #{name} |]

View File

@ -19,7 +19,6 @@ import Yesod.Widget
import Yesod.Request import Yesod.Request
import Text.Cassius (cassius) import Text.Cassius (cassius)
import Text.Blaze (toHtml) import Text.Blaze (toHtml)
import Control.Monad.Trans.Class (lift)
import Data.Text (Text) import Data.Text (Text)
import qualified Yesod.Auth.Message as Msg import qualified Yesod.Auth.Message as Msg
@ -36,7 +35,7 @@ authOpenIdExtended extensionFields =
complete = PluginR "openid" ["complete"] complete = PluginR "openid" ["complete"]
name = "openid_identifier" name = "openid_identifier"
login tm = do login tm = do
ident <- lift newIdent ident <- liftWidget newIdent
addCassius addCassius
[QQ(cassius)|##{ident} [QQ(cassius)|##{ident}
background: #fff url(http://www.myopenid.com/static/openid-icon-small.gif) no-repeat scroll 0pt 50%; background: #fff url(http://www.myopenid.com/static/openid-icon-small.gif) no-repeat scroll 0pt 50%;

View File

@ -13,7 +13,7 @@ module Yesod.Json
, array , array
) where ) where
import Yesod.Handler (GHandler, waiRequest) import Yesod.Handler (GHandler, waiRequest, liftHandler)
import Yesod.Content import Yesod.Content
( ToContent (toContent), RepHtmlJson (RepHtmlJson), RepHtml (RepHtml) ( ToContent (toContent), RepHtmlJson (RepHtmlJson), RepHtml (RepHtml)
, RepJson (RepJson), Content (ContentBuilder) , RepJson (RepJson), Content (ContentBuilder)
@ -25,7 +25,6 @@ import qualified Data.Aeson.Encode as JE
import Data.Aeson.Encode (fromValue) import Data.Aeson.Encode (fromValue)
import Data.Conduit.Attoparsec (sinkParser) import Data.Conduit.Attoparsec (sinkParser)
import Data.Text (Text) import Data.Text (Text)
import Control.Monad.Trans.Class (lift)
import qualified Data.Vector as V import qualified Data.Vector as V
import Text.Julius (ToJavascript (..)) import Text.Julius (ToJavascript (..))
import Data.Text.Lazy.Builder (fromLazyText) import Data.Text.Lazy.Builder (fromLazyText)
@ -61,7 +60,7 @@ jsonToRepJson = return . RepJson . toContent
parseJsonBody :: GHandler sub master J.Value parseJsonBody :: GHandler sub master J.Value
parseJsonBody = do parseJsonBody = do
req <- waiRequest req <- waiRequest
lift $ requestBody req $$ sinkParser J.json' liftHandler $ requestBody req $$ sinkParser J.json'
instance ToJavascript J.Value where instance ToJavascript J.Value where
toJavascript = fromLazyText . decodeUtf8 . JE.encode toJavascript = fromLazyText . decodeUtf8 . JE.encode