merged with fixes
This commit is contained in:
parent
a9e758b712
commit
2f1818d656
176 changed files with 9000 additions and 907 deletions
|
|
@ -806,10 +806,13 @@ func tgGlobalSearchMessages(viewerUserID int64, limit int, private domain.Messag
|
|||
return &tg.MessagesMessages{Messages: messages, Chats: chats, Users: users}
|
||||
}
|
||||
|
||||
func (r *Router) messageFilterFromHistoryRequest(userID int64, req *tg.MessagesGetHistoryRequest) (domain.MessageFilter, bool) {
|
||||
peer, ok := r.domainPeerFromInputPeer(userID, req.Peer)
|
||||
if !ok {
|
||||
return domain.MessageFilter{}, false
|
||||
func (r *Router) messageFilterFromHistoryRequest(ctx context.Context, userID int64, req *tg.MessagesGetHistoryRequest) (domain.MessageFilter, error) {
|
||||
if err := validateMessageReadBounds(req.Limit, req.OffsetID, req.MaxID, req.MinID); err != nil {
|
||||
return domain.MessageFilter{}, err
|
||||
}
|
||||
peer, err := r.checkedMessageReadPeer(ctx, userID, req.Peer, false)
|
||||
if err != nil {
|
||||
return domain.MessageFilter{}, err
|
||||
}
|
||||
limit := req.Limit
|
||||
if limit > 50 {
|
||||
|
|
@ -825,10 +828,13 @@ func (r *Router) messageFilterFromHistoryRequest(userID int64, req *tg.MessagesG
|
|||
MaxID: req.MaxID,
|
||||
MinID: req.MinID,
|
||||
Hash: req.Hash,
|
||||
}, true
|
||||
}, nil
|
||||
}
|
||||
|
||||
func (r *Router) messageFilterFromSearchRequest(ctx context.Context, userID int64, req *tg.MessagesSearchRequest) (domain.MessageFilter, error) {
|
||||
if err := validateMessageReadBounds(req.Limit, req.OffsetID, req.MaxID, req.MinID); err != nil {
|
||||
return domain.MessageFilter{}, err
|
||||
}
|
||||
limit := req.Limit
|
||||
if limit > 500 {
|
||||
limit = 500
|
||||
|
|
@ -840,6 +846,7 @@ func (r *Router) messageFilterFromSearchRequest(ctx context.Context, userID int6
|
|||
MaxDate: req.MaxDate,
|
||||
AddOffset: domain.ClampMessageHistoryAddOffset(req.AddOffset),
|
||||
Limit: limit,
|
||||
CountOnly: req.Limit == 0,
|
||||
MaxID: req.MaxID,
|
||||
MinID: req.MinID,
|
||||
Hash: req.Hash,
|
||||
|
|
@ -850,10 +857,21 @@ func (r *Router) messageFilterFromSearchRequest(ctx context.Context, userID int6
|
|||
filter.PhoneCallsOnly = true
|
||||
filter.MissedPhoneCallsOnly = phoneCalls.Missed
|
||||
}
|
||||
if peer, ok := r.domainPeerFromInputPeer(userID, req.Peer); ok {
|
||||
if empty, ok := req.Peer.(*tg.InputPeerEmpty); !ok || empty == nil {
|
||||
peer, err := r.checkedMessageReadPeer(ctx, userID, req.Peer, false)
|
||||
if err != nil {
|
||||
return domain.MessageFilter{}, err
|
||||
}
|
||||
filter.HasPeer = true
|
||||
filter.Peer = peer
|
||||
}
|
||||
if req.FromID != nil {
|
||||
from, err := r.checkedMessageReadPeer(ctx, userID, req.FromID, true)
|
||||
if err != nil {
|
||||
return domain.MessageFilter{}, err
|
||||
}
|
||||
filter.SenderUserID = from.ID
|
||||
}
|
||||
savedReactions, hasSavedReactions := req.GetSavedReaction()
|
||||
// An empty optional vector carries no reaction-filtering semantics. Some TL
|
||||
// clients emit flags.3 with a zero-length vector on ordinary peer searches.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue