Example #1
0
        public IEnumerable <User> GetUsersFuzzy(
            string fuzzyName      = null,
            int?elementsPerPage   = null,
            UsersOrdering orderBy = default(UsersOrdering))
        {
            var parameters = new List <string>();

            if (!string.IsNullOrEmpty(fuzzyName))
            {
                parameters.Add(string.Format("lookup={0}",
                                             Uri.EscapeDataString(fuzzyName)));
            }

            if (elementsPerPage.HasValue)
            {
                parameters.Add(string.Format("max={0}", elementsPerPage));
            }

            parameters.AddRange(orderBy.ToParameters());

            var uri = GetUsersUri(parameters.ToParameters());

            return(baseClient.DoPaginatedRequest(uri,
                                                 x => User.Parse(baseClient, x) as User));
        }
Example #2
0
        public IEnumerable <User> GetUsers(
            string name           = null,
            string twitch         = null, string hitbox        = null,
            string twitter        = null, string speedrunslive = null,
            int?elementsPerPage   = null,
            UsersOrdering orderBy = default(UsersOrdering))
        {
            var parameters = new List <string>();

            if (!string.IsNullOrEmpty(name))
            {
                parameters.Add(string.Format("name={0}",
                                             Uri.EscapeDataString(name)));
            }

            if (!string.IsNullOrEmpty(twitch))
            {
                parameters.Add(string.Format("twitch={0}",
                                             Uri.EscapeDataString(twitch)));
            }

            if (!string.IsNullOrEmpty(hitbox))
            {
                parameters.Add(string.Format("hitbox={0}",
                                             Uri.EscapeDataString(hitbox)));
            }

            if (!string.IsNullOrEmpty(twitter))
            {
                parameters.Add(string.Format("twitter={0}",
                                             Uri.EscapeDataString(twitter)));
            }

            if (!string.IsNullOrEmpty(speedrunslive))
            {
                parameters.Add(string.Format("speedrunslive={0}",
                                             Uri.EscapeDataString(speedrunslive)));
            }

            if (elementsPerPage.HasValue)
            {
                parameters.Add(string.Format("max={0}", elementsPerPage));
            }

            parameters.AddRange(orderBy.ToParameters());

            var uri = GetUsersUri(parameters.ToParameters());

            return(baseClient.DoPaginatedRequest(uri,
                                                 x => User.Parse(baseClient, x) as User));
        }
Example #3
0
        internal static IEnumerable <string> ToParameters(this UsersOrdering ordering)
        {
            var isDescending = ((int)ordering & 1) == 1;

            if (isDescending)
            {
                ordering = (UsersOrdering)((int)ordering - 1);
            }

            var str = "";

            switch (ordering)
            {
            case UsersOrdering.JapaneseName:
                str = "name.jap"; break;

            case UsersOrdering.SignUpDate:
                str = "signup"; break;

            case UsersOrdering.Role:
                str = "role"; break;
            }

            var list = new List <string>();

            if (!string.IsNullOrEmpty(str))
            {
                list.Add(string.Format("orderby={0}", str));
            }
            if (isDescending)
            {
                list.Add("direction=desc");
            }

            return(list);
        }
Example #4
0
        public IEnumerable<User> GetUsers(
            string name = null, 
            string twitch = null, string hitbox = null, 
            string twitter = null, string speedrunslive = null, 
            int? elementsPerPage = null,
            UsersOrdering orderBy = default(UsersOrdering))
        {
            var parameters = new List<string>();

            if (!string.IsNullOrEmpty(name))
                parameters.Add(string.Format("name={0}",
                    Uri.EscapeDataString(name)));

            if (!string.IsNullOrEmpty(twitch))
                parameters.Add(string.Format("twitch={0}",
                    Uri.EscapeDataString(twitch)));

            if (!string.IsNullOrEmpty(hitbox))
                parameters.Add(string.Format("hitbox={0}",
                    Uri.EscapeDataString(hitbox)));

            if (!string.IsNullOrEmpty(twitter))
                parameters.Add(string.Format("twitter={0}",
                    Uri.EscapeDataString(twitter)));

            if (!string.IsNullOrEmpty(speedrunslive))
                parameters.Add(string.Format("speedrunslive={0}",
                    Uri.EscapeDataString(speedrunslive)));

            if (elementsPerPage.HasValue)
                parameters.Add(string.Format("max={0}", elementsPerPage));

            parameters.AddRange(orderBy.ToParameters());

            var uri = GetUsersUri(parameters.ToParameters());
            return baseClient.DoPaginatedRequest(uri,
                x => User.Parse(baseClient, x) as User);
        }
Example #5
0
        public IEnumerable<User> GetUsersFuzzy(
            string fuzzyName = null,
            int? elementsPerPage = null,
            UsersOrdering orderBy = default(UsersOrdering))
        {
            var parameters = new List<string>();

            if (!string.IsNullOrEmpty(fuzzyName))
                parameters.Add(string.Format("lookup={0}",
                    Uri.EscapeDataString(fuzzyName)));

            if (elementsPerPage.HasValue)
                parameters.Add(string.Format("max={0}", elementsPerPage));

            parameters.AddRange(orderBy.ToParameters());

            var uri = GetUsersUri(parameters.ToParameters());
            return baseClient.DoPaginatedRequest(uri,
                x => User.Parse(baseClient, x) as User);
        }