public SearchSugestionsResponse Search(IPrincipal principal, SearchSuggestionsRequest request) { var member = _dependencies.OrganisationService.GetGuaranteedMember(principal, request.OrganisationId); var resource = new SearchSugestionsResponse(); resource.OrganisationId = request.OrganisationId; resource.OrganisationName = member.Organisation.Name; var suggestionsQuery = member.Organisation.Members .SelectMany(m => m.Suggestions.Where(s => !s.Removed && !s.PendingModeration)) .Where(x => !x.AuthorMember.Removed); if (request.MemberId.HasValue) { var memberSearchedFor = member.Organisation.Members.SingleOrDefault(m => m.Id == request.MemberId.Value); if (memberSearchedFor != null) { if (memberSearchedFor.Removed) { resource.Suggestions = new List <SuggestionSummaryResource>(); return(resource); } resource.MemberSearchedFor = _dependencies.MemberService.BuildSearchedMemberResource(memberSearchedFor); suggestionsQuery = suggestionsQuery.Where(s => s.AuthorMemberId == request.MemberId.Value); } } if (!request.MostRecentFirst) { suggestionsQuery = suggestionsQuery.OrderByDescending( s => s.Votes .Count( x => (x.MemberIsSupportingSuggestion.HasValue && x.MemberIsSupportingSuggestion.Value)) - s.Votes .Count( x => (x.MemberIsSupportingSuggestion.HasValue && !x.MemberIsSupportingSuggestion.Value)) ); } else { suggestionsQuery = suggestionsQuery .OrderByDescending(s => s.CreatedDateUtc); } var suggestions = suggestionsQuery .Skip(((request.Page ?? 1) - 1) * 10).Take(10); resource.PageCount = (int)Math.Ceiling(suggestionsQuery.Count() / 10.0); resource.Suggestions = suggestions.Select(s => BuildSummarySuggestion(s, member)).ToList(); return(resource); }
// Search Suggestions public void SearchSuggestionsTenorGIF() { // Initialize SDK TenorAPI.Initialize("LIVDSRZULELA"); // Prepare Request data SearchSuggestionsRequest request = new SearchSuggestionsRequest(); request.limit = "10"; request.tag = inputTag.text; // Call Coroutine to not freeze StartCoroutine(TenorAPI.SearchSuggestions(request, ProcessAnswers)); }
public static void CopyFrom(this SearchSuggestionsRequest searchSuggestionsRequest, SearchQueryRequest searchQueryRequest) { searchSuggestionsRequest.AcceptType = searchQueryRequest.AcceptType; searchSuggestionsRequest.AuthenticationType = searchQueryRequest.AuthenticationType; searchSuggestionsRequest.Cookies = searchQueryRequest.Cookies; // searchSuggestionsRequest.Culture = int.Parse(searchQueryRequest.Culture); // TODO: Hm.. // searchSuggestionsRequest.HttpMethodType = searchQueryRequest.HttpMethodType; // DO NOT COPY. Always uses GET. searchSuggestionsRequest.Password = searchQueryRequest.Password; searchSuggestionsRequest.QueryText = searchQueryRequest.QueryText; searchSuggestionsRequest.SecurePassword = searchQueryRequest.SecurePassword; searchSuggestionsRequest.SharePointSiteUrl = searchQueryRequest.SharePointSiteUrl; searchSuggestionsRequest.Timeout = searchQueryRequest.Timeout; searchSuggestionsRequest.Token = searchQueryRequest.Token; searchSuggestionsRequest.UserName = searchQueryRequest.UserName; }
// Method to call API End Point: Search Suggestions https://tenor.com/gifapi#suggestions public static IEnumerator SearchSuggestions(SearchSuggestionsRequest request, DelegateStringAnswer delegateSearchSuggestions) { return(_apiCallStringCollection(request.getQueryString(key), delegateSearchSuggestions)); }
public SearchSugestionsResponse Post(SearchSuggestionsRequest request) { return(_service.Search(User, request)); }
public bool HandleException(Exception ex, SearchSuggestionsRequest searchSuggestionsRequest) { throw new NotImplementedException(); }
public HttpResponseMessage Post(SearchSuggestionsRequest request) { return(Request.CreateResponse(HttpStatusCode.OK, _service.Search(User, request))); }
public SuggestionQuery(SearchSuggestionsRequest request, string queryText) { Request = request; QueryText = queryText; }