{-# LANGUAGE QuasiQuotes #-} {-# LANGUAGE CPP #-} module Yesod.Helpers.Auth.Rpxnow ( authRpxnow ) where import Yesod.Helpers.Auth import qualified Web.Authenticate.Rpxnow as Rpxnow import Control.Monad (mplus) import Yesod.Handler import Yesod.Widget import Yesod.Request import Text.Hamlet (hamlet) import Control.Monad.IO.Class (liftIO) authRpxnow :: YesodAuth m => String -- ^ app name -> String -- ^ key -> AuthPlugin m authRpxnow app apiKey = AuthPlugin "rpxnow" dispatch login where login tm = do let url = {- FIXME urlEncode $ -} tm $ PluginR "rpxnow" [] addHamlet #if GHC7 [hamlet| #else [$hamlet| #endif