mirror of
https://code.sup39.dev/repos/Wqawg
synced 2024-12-29 00:34:54 +09:00
Fetch local messages by LocalMessageId, not by MessageId
This commit is contained in:
parent
9b916c9b75
commit
77324442fc
2 changed files with 16 additions and 5 deletions
|
@ -75,13 +75,24 @@ getNode getdid mid = do
|
|||
l2f (instanceHost i) (remoteSharerIdent rs)
|
||||
return $ MessageTreeNode mid m author
|
||||
|
||||
getNodeL :: AppDB DiscussionId -> LocalMessageId -> AppDB MessageTreeNode
|
||||
getNodeL getdid lmid = do
|
||||
did <- getdid
|
||||
lm <- get404 lmid
|
||||
let mid = localMessageRest lm
|
||||
m <- getJust mid
|
||||
unless (messageRoot m == did) notFound
|
||||
p <- getJust $ localMessageAuthor lm
|
||||
s <- getJust $ personIdent p
|
||||
return $ MessageTreeNode mid m $ MessageTreeNodeLocal lmid s
|
||||
|
||||
getDiscussionMessage
|
||||
:: (MessageId -> Route App)
|
||||
-> AppDB DiscussionId
|
||||
-> MessageId
|
||||
-> LocalMessageId
|
||||
-> Handler Html
|
||||
getDiscussionMessage reply getdid mid = do
|
||||
mtn <- runDB $ getNode getdid mid
|
||||
getDiscussionMessage reply getdid lmid = do
|
||||
mtn <- runDB $ getNodeL getdid lmid
|
||||
now <- liftIO getCurrentTime
|
||||
defaultLayout $ messageW now mtn reply
|
||||
|
||||
|
|
|
@ -647,14 +647,14 @@ getTicketMessageR :: ShrIdent -> PrjIdent -> Int -> Text -> Handler Html
|
|||
getTicketMessageR shar proj tnum hid = do
|
||||
decodeHid <- getsYesod appHashidDecode
|
||||
encodeHid <- getsYesod appHashidEncode
|
||||
mid <-
|
||||
lmid <-
|
||||
case toSqlKey <$> decodeHid hid of
|
||||
Nothing -> notFound
|
||||
Just k -> return k
|
||||
getDiscussionMessage
|
||||
(TicketReplyR shar proj tnum . encodeHid . fromSqlKey)
|
||||
(selectDiscussionId shar proj tnum)
|
||||
mid
|
||||
lmid
|
||||
|
||||
postTicketMessageR :: ShrIdent -> PrjIdent -> Int -> Text -> Handler Html
|
||||
postTicketMessageR shar proj tnum hid = do
|
||||
|
|
Loading…
Reference in a new issue