Commit b21a965d authored by Alexandre Delanoë's avatar Alexandre Delanoë
parents 4e38bda1 9bfdbf60
module Gargantext.Config.REST where module Gargantext.Config.REST where
import Gargantext.Prelude import Prelude (Unit, bind, logs, pure, ($), (<$>), (<<<), (<>))
import Gargantext.Ends
import Affjax (defaultRequest, printResponseFormatError, request) import Affjax (defaultRequest, printResponseFormatError, request)
import Affjax.RequestBody (RequestBody(..), string) import Affjax.RequestBody (RequestBody(..), string)
......
...@@ -4,7 +4,7 @@ module Gargantext.Ends ...@@ -4,7 +4,7 @@ module Gargantext.Ends
where where
import Prelude (class Eq, class Show, identity, show, ($), (<>), bind, pure, (<<<), (==)) import Prelude (class Eq, class Show, identity, show, ($), (<>), bind, pure, (<<<), (==))
import Data.Argonaut ( class DecodeJson, decodeJson, class EncodeJson, encodeJson, (:=), (~>), jsonEmptyObject, (.:)) import Data.Argonaut ( class DecodeJson, decodeJson, class EncodeJson, (:=), (~>), jsonEmptyObject, (.:))
import Data.Foldable (foldMap) import Data.Foldable (foldMap)
import Data.Generic.Rep (class Generic) import Data.Generic.Rep (class Generic)
import Data.Generic.Rep.Eq (genericEq) import Data.Generic.Rep.Eq (genericEq)
......
-- | A module for authenticating to create sessions and handling them -- | A module for authenticating to create sessions and handling them
module Gargantext.Sessions where module Gargantext.Sessions where
import Prelude (class Eq, class Show, Unit, const, otherwise, pure, show, unit, ($), (*>), (<*), (<$>), (<>), (==), (/=), (>>=), (>=>), (<<<), bind, map) import Prelude (class Eq, class Show, Unit, const, otherwise, pure, show, unit, ($), (*>), (<*), (<$>), (<>), (==), (/=), (>>=), (<<<), bind)
import Control.Monad.Except (runExcept) import Data.Argonaut ( class DecodeJson, decodeJson, class EncodeJson, encodeJson, (:=), (~>), (.:))
import Data.Argonaut ( class DecodeJson, decodeJson, class EncodeJson, encodeJson, (:=), (~>), (.:), Json)
import Data.Argonaut.Core (Json, fromArray, jsonEmptyObject, stringify) import Data.Argonaut.Core (Json, fromArray, jsonEmptyObject, stringify)
import Data.Argonaut.Parser (jsonParser) import Data.Argonaut.Parser (jsonParser)
import Data.Array as A import Data.Array as A
...@@ -26,7 +25,6 @@ import Gargantext.Components.Login.Types ...@@ -26,7 +25,6 @@ import Gargantext.Components.Login.Types
import Gargantext.Config.REST as REST import Gargantext.Config.REST as REST
import Gargantext.Ends (class ToUrl, Backend, backendUrl, toUrl, sessionPath) import Gargantext.Ends (class ToUrl, Backend, backendUrl, toUrl, sessionPath)
import Gargantext.Routes (SessionRoute) import Gargantext.Routes (SessionRoute)
import Gargantext.Prelude (logs)
import Gargantext.Types (NodePath, SessionId(..), nodePath) import Gargantext.Types (NodePath, SessionId(..), nodePath)
import Gargantext.Utils.Reactix as R2 import Gargantext.Utils.Reactix as R2
...@@ -100,7 +98,7 @@ instance decodeJsonSessions :: DecodeJson Sessions where ...@@ -100,7 +98,7 @@ instance decodeJsonSessions :: DecodeJson Sessions where
where where
decodeSessions :: Json -> Either String (Array Session) decodeSessions :: Json -> Either String (Array Session)
decodeSessions json = decodeJson json decodeSessions json2 = decodeJson json2
>>= \obj -> obj .: "sessions" >>= \obj -> obj .: "sessions"
>>= traverse decodeJson >>= traverse decodeJson
...@@ -192,10 +190,10 @@ mapLeft _ (Right r) = Right r ...@@ -192,10 +190,10 @@ mapLeft _ (Right r) = Right r
saveSessions :: Sessions -> Effect Sessions saveSessions :: Sessions -> Effect Sessions
saveSessions sessions = effect *> pure sessions where saveSessions sessions = effect *> pure sessions where
remove = getls >>= removeItem localStorageKey rem = getls >>= removeItem localStorageKey
set v = getls >>= setItem localStorageKey v set v = getls >>= setItem localStorageKey v
effect effect
| null sessions = remove | null sessions = rem
| otherwise = set (stringify $ encodeJson sessions) | otherwise = set (stringify $ encodeJson sessions)
postAuthRequest :: Backend -> AuthRequest -> Aff (Either String Session) postAuthRequest :: Backend -> AuthRequest -> Aff (Either String Session)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment