예제 #1
0
        public static async Task OnHttpRequest(Microsoft.AspNetCore.Http.HttpContext e, DbUser u)
        {
            //Get servers
            var servers = await Program.connection.GetServersByOwnerAsync(u.id);

            //Convert
            ServerListResponse response = new ServerListResponse
            {
                servers = new List <ServerListResponseServer>(),
                token   = await u.GetServerCreationToken(Program.connection)
            };

            foreach (var s in servers)
            {
                //Get map
                string mapName = null;
                var    mapData = await s.GetMapEntryAsync(Program.connection);

                if (mapData != null)
                {
                    mapName = mapData.displayName;
                }

                //Write
                response.servers.Add(new ServerListResponseServer
                {
                    icon = s.image_url,
                    id   = s.id,
                    map  = mapName,
                    name = s.display_name
                });
            }

            //Write
            await Program.QuickWriteJsonToDoc(e, response);
        }