gameServer/Actions.hs
changeset 12114 cdadc1d487f1
parent 11854 0b8f2116aa26
child 12761 0167e337553b
equal deleted inserted replaced
12113:72f5d670bbee 12114:cdadc1d487f1
   513 processAction JoinLobby = do
   513 processAction JoinLobby = do
   514     chan <- client's sendChan
   514     chan <- client's sendChan
   515     rnc <- gets roomsClients
   515     rnc <- gets roomsClients
   516     clientNick <- client's nick
   516     clientNick <- client's nick
   517     clProto <- client's clientProto
   517     clProto <- client's clientProto
   518     isAuthenticated <- liftM (not . B.null) $ client's webPassword
   518     isAuthenticated <- liftM isRegistered $ client's id
   519     isAdmin <- client's isAdministrator
   519     isAdmin <- client's isAdministrator
   520     isContr <- client's isContributor
   520     isContr <- client's isContributor
   521     loggedInClients <- liftM (Prelude.filter isVisible) $! allClientsS
   521     loggedInClients <- liftM (Prelude.filter isVisible) $! allClientsS
   522     let (lobbyNicks, clientsChans) = unzip . L.map (nick &&& sendChan) $ loggedInClients
   522     let (lobbyNicks, clientsChans) = unzip . L.map (nick &&& sendChan) $ loggedInClients
   523     let authenticatedNicks = L.map nick . L.filter (not . B.null . webPassword) $ loggedInClients
   523     let authenticatedNicks = L.map nick . L.filter isRegistered $ loggedInClients
   524     let adminsNicks = L.map nick . L.filter isAdministrator $ loggedInClients
   524     let adminsNicks = L.map nick . L.filter isAdministrator $ loggedInClients
   525     let contrNicks = L.map nick . L.filter isContributor $ loggedInClients
   525     let contrNicks = L.map nick . L.filter isContributor $ loggedInClients
   526     inRoomNicks <- io $
   526     inRoomNicks <- io $
   527         allClientsM rnc
   527         allClientsM rnc
   528         >>= filterM (liftM ((/=) lobbyId) . clientRoomM rnc)
   528         >>= filterM (liftM ((/=) lobbyId) . clientRoomM rnc)