public async Task <SearchImages> GetImageLocations(ImagesParameters imageParameters)
        {
            var searchimages = new SearchImages();

            imageParameters.Group = "venue";
            var result = await Urls.GetStringAsync(Urls.BaseUri + "venues/" + imageParameters.VenueID + "/photos?client_id=" + Urls.client_id + "&client_secret=" + Urls.client_secret + "&v=20190425&group=" + imageParameters.Group + "&limit=" + imageParameters.Limit);

            var result_images = JsonConvert.DeserializeObject <SearchImages>(result);

            for (int i = 0; i < result_images.response.photos.items.Length; i++)
            {
                var saveimages = new SavedImages
                {
                    Id        = result_images.response.photos.items[i].id,
                    CreatedAt = result_images.response.photos.items[i].createdAt.ToString(),
                    Prefix    = result_images.response.photos.items[i].prefix,
                    Suffix    = result_images.response.photos.items[i].suffix,
                    Height    = result_images.response.photos.items[i].height,
                    Width     = result_images.response.photos.items[i].width
                };

                _context.Images.Add(saveimages);
                await _context.SaveChangesAsync();
            }

            return(result_images);
        }
        public void HeadersParameterTest()
        {
            var searchImages = SearchImages.GetInstance(null, null, null);

            searchImages.WithAcceptLanguage("fr");

            Assert.Equal("fr", searchImages.HeaderParameters[Constants.AcceptLanguage]);
        }
Beispiel #3
0
        public static async Task Main(string[] args)
        {
            SetupLogger();

            Server server = new Server
            {
                Services = { SearchImages.BindService(new SearchImagesService()) },
                Ports    = { new ServerPort("0.0.0.0", port, ServerCredentials.Insecure) }
            };

            server.Start();

            Log.Logger.Information("SearchImages service started on port: {Port}", port);

            await Task.Delay(-1);
        }
Beispiel #4
0
        public async Task <IActionResult> Index(string sortOrder, string currentFilter, string searchString, int?pageNumber, string desc, string filetype, long?FileSize)
        {
            IEnumerable <ImageModel> image;
            int pageSize = 20;

            try
            {
                ViewData["CurrentSort"]  = sortOrder;
                ViewData["NameSortParm"] = String.IsNullOrEmpty(sortOrder) ? "desc" : "";
                ViewData["DateSortParm"] = sortOrder == "date" ? "date_desc" : "Date";
                var client = _httpClientFactory.CreateClient(Constants.ClientWithToken);
                //HTTP GET
                var searchmodel = new SearchImages
                {
                    Description = desc,
                    FileSize    = FileSize,
                    FileType    = filetype
                };
                var responseTask = await client.PostAsJsonAsync(Constants.Routes.SearchImages, searchmodel);

                var result = responseTask;

                if (result.IsSuccessStatusCode)
                {
                    var readTask = await result.Content.ReadAsAsync <IList <ImageModel> >();

                    image = readTask;
                    if (image.Count() > 0)
                    {
                        foreach (var item in image)
                        {
                            var span = DateTime.Now - item.CreatedAt;
                            item.Span = String.Format("{0} days, {1} hours, {2} minutes, {3} seconds", span.Days, span.Hours, span.Minutes, span.Seconds);
                        }
                        TempData["count"] = image.Count();
                    }
                }
                else
                {
                    image = Enumerable.Empty <ImageModel>();
                    // ModelState.AddModelError(string.Empty, "Server error. Please contact administrator.");
                }
                if (searchString != null)
                {
                    pageNumber = 1;
                }
                else
                {
                    searchString = currentFilter;
                }

                ViewData["CurrentFilter"] = searchString;

                if (!String.IsNullOrEmpty(searchString))
                {
                    image = image.Where(s => s.Description.Contains(searchString) ||
                                        s.FileType.Contains(searchString));
                }
                switch (sortOrder)
                {
                case "desc":
                    image = image.OrderBy(s => s.Description);
                    break;

                case "date":
                    image = image.OrderByDescending(s => s.CreatedAt);
                    break;

                case "dateasc":
                    image = image.OrderBy(s => s.CreatedAt);
                    break;

                case "size":
                    image = image.OrderByDescending(s => s.FileSize);
                    break;

                case "sizeasc":
                    image = image.OrderBy(s => s.FileSize);
                    break;

                default:
                    image = image.OrderByDescending(s => s.CreatedAt);
                    break;
                }
                return(View(PaginatedList <ImageModel> .Create(image, pageNumber ?? 1, pageSize)));
            }
            catch (Exception ex)
            {
                Log.Error("An error occurred " + ex);
                image = Enumerable.Empty <ImageModel>();
                ModelState.AddModelError(string.Empty, "Server error. Please contact administrator.");
                return(View(PaginatedList <ImageModel> .Create(image, pageNumber ?? 1, pageSize)));
            }
        }
Beispiel #5
0
 public IBlendedImagesSearch Images()
 {
     return(SearchImages.GetInstance(_credentials, _baseUrl));
 }