SIGES-0.1.0.0
Safe HaskellNone
LanguageHaskell2010

Handlers.DataHandler

Description

 
Synopsis

Documentation

userTmpJSON :: FilePath Source #

Esta função tem o valor igual ao caminho para o arquivo json com os dados temporários de usuário.

userJSON :: FilePath Source #

Esta função tem o valor igual ao caminho para o arquivo json com os dados de usuário.

fileExists :: FilePath -> IO Bool Source #

Dado um FilePath, esta função verifica se ele se refere a um arquivo existente.

noUsersYet :: IO Bool Source #

Esta função verifica os usuários cadastrados no sistema e retornará um valor booleano true caso o sistema não possua nenhum usuário cadastrado ainda, e false em caso contrário.

saveUser :: UserFull -> IO Bool Source #

Esta função considera um UserFull, e caso o seu e-mail já não esteja cadastrado no sistema,. ela o incluirá no sistema, retornando um valor booleano indicando se foi possível incluir o novo usuário.

deleteUser :: String -> IO Bool Source #

Esta função considera uma String, e caso ela corresponda ao e-mail de um dos usuários, a função eliminará o usuário equivalente do sistema, retornando um valor booleano indicando se a remoção pôde ser feita.

getUser :: String -> IO (Maybe UserFull) Source #

Esta função considerará uma String, e retornará o usuário cadastrado no sistema com o e-mail igual a esta String, caso exista.

signUser :: String -> IO () Source #

Esta função considerará uma String, e verificará o sistema para buscar o usuário cadastrado no sistema com o e-mail igual à String. O UserFull será então incluído, como Uswer (Que contém menos informações) nos dados temporários do sistema. Estes dados poderão então ser acessados em tempo de execução do sistema.

hasLoggedUser :: IO Bool Source #

Esta função decidirá se algum usuário está atualmente logado no sistema.

getLoggedUser :: IO User Source #

Esta função retornará o Usuário atualmente logado no sistema.

signOutUser :: IO () Source #

Esta função deslogará um usuário do sistema, destruindo as informações salvas temporariamente.

roomsJSON :: FilePath Source #

Esta função tem o valor igual ao caminho para o arquivo json com os dados das salas.

fetchRooms :: IO [Room] Source #

Esta função retorna uma lista contendo todas as salas cadastradas no sistema.

noRoomsYet :: IO Bool Source #

Esta função verifica as salas cadastradas no sistema e retornará um valor booleano true caso o sistema não possua nenhuma sala cadastrada ainda, e false em caso contrário.

saveRoom :: Room -> IO Bool Source #

Esta função considera uma sala, e caso ela ainda não exista no sistema, será incluída e um valor booleano true será retornado. Caso contrário, um valor booleano false será retornado.

updateRoom :: String -> Room -> IO Bool Source #

Esta função usa uma String contendo um código de sala e uma sala nova para substituir a sala com o código dado pela versão nova da mesma sala.

updateAllRooms :: (Room -> Room) -> IO Bool Source #

Esta função recebe uma função e atualiza todas as salas do sistema aplicando sobre elas a função determinada.

deleteRoom :: String -> IO Bool Source #

Esta função considera uma String, e caso ela corresponda ao código de uma das salas, a função eliminará a sala equivalente do sistema, retornando um valor booleano indicando se a remoção pôde ser feita.

getRoom :: String -> IO (Maybe Room) Source #

Esta função considerará uma String, e retornará a sala cadastrada no sistema com o código igual a esta String, caso exista.

Orphan instances

ToJSON Resource Source # 
Instance details

ToJSON ResourceKind Source # 
Instance details

ToJSON RoomCategory Source # 
Instance details

ToJSON Reservation Source # 
Instance details

ToJSON Room Source # 
Instance details

ToJSON UserFull Source # 
Instance details

ToJSON User Source # 
Instance details

FromJSON Resource Source # 
Instance details

FromJSON ResourceKind Source # 
Instance details

FromJSON RoomCategory Source # 
Instance details

FromJSON Reservation Source # 
Instance details

FromJSON Room Source # 
Instance details

FromJSON UserFull Source # 
Instance details

FromJSON User Source # 
Instance details