mirror of
https://github.com/PretendoNetwork/friends.git
synced 2025-04-02 11:01:46 -04:00
42 lines
1.4 KiB
Go
42 lines
1.4 KiB
Go
package grpc
|
|
|
|
import (
|
|
"context"
|
|
|
|
"google.golang.org/grpc/codes"
|
|
"google.golang.org/grpc/status"
|
|
|
|
"github.com/PretendoNetwork/friends/database"
|
|
database_wiiu "github.com/PretendoNetwork/friends/database/wiiu"
|
|
"github.com/PretendoNetwork/friends/globals"
|
|
pb "github.com/PretendoNetwork/grpc-go/friends"
|
|
)
|
|
|
|
func (s *gRPCFriendsServer) GetUserFriendRequestsIncoming(ctx context.Context, in *pb.GetUserFriendRequestsIncomingRequest) (*pb.GetUserFriendRequestsIncomingResponse, error) {
|
|
friendRequestsIn, err := database_wiiu.GetUserFriendRequestsIn(in.GetPid())
|
|
if err != nil && err != database.ErrEmptyList {
|
|
globals.Logger.Critical(err.Error())
|
|
return nil, status.Errorf(codes.Internal, "internal server error")
|
|
}
|
|
|
|
friendRequests := make([]*pb.FriendRequest, 0, len(friendRequestsIn))
|
|
|
|
if friendRequestsIn != nil {
|
|
for _, friendRequestIn := range friendRequestsIn {
|
|
friendRequest := &pb.FriendRequest{
|
|
Id: uint64(friendRequestIn.Message.FriendRequestID),
|
|
Sender: uint32(friendRequestIn.PrincipalInfo.PID),
|
|
Recipient: in.GetPid(),
|
|
Sent: uint64(friendRequestIn.SentOn.Standard().Unix()),
|
|
Expires: uint64(friendRequestIn.Message.ExpiresOn.Standard().Unix()),
|
|
Message: string(friendRequestIn.Message.Message),
|
|
}
|
|
|
|
friendRequests = append(friendRequests, friendRequest)
|
|
}
|
|
}
|
|
|
|
return &pb.GetUserFriendRequestsIncomingResponse{
|
|
FriendRequests: friendRequests,
|
|
}, nil
|
|
}
|