Beispiel #1
0
        /// <summary>
        /// This method fills the list of images
        /// </summary>
        public void initialize()
        {
            string[] paths = null;
            string   name;
            string   thumbPath;
            string   imagePath;
            DateTime imageDate;

            Images.Clear();
            // search only in the Thumbnails directory
            string dir = OutputDirectory + "\\Thumbnails";

            if (Directory.Exists(dir))
            {
                // get the path of all the images
                paths = Directory.GetFiles(dir, "*", SearchOption.AllDirectories);
                for (int i = 0; i < paths.Length; i++)
                {
                    // save Thumbnails path
                    thumbPath = paths[i];
                    // get creation time
                    imageDate = File.GetCreationTime(thumbPath);
                    // get file name
                    name = Path.GetFileName(thumbPath);
                    // get full size image path
                    imagePath = Path.Combine(OutputDirectory,
                                             imageDate.Year.ToString(), imageDate.Month.ToString(), name);
                    // create a SavedImages object and add it to the list
                    SavedImages image = new SavedImages(thumbPath, imagePath, name, imageDate);
                    Images.Add(image);
                }
            }
        }
        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 async Task <IActionResult> PutSavedImages([FromRoute] string id, [FromBody] SavedImages savedImages)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != savedImages.Id)
            {
                return(BadRequest());
            }

            _context.Entry(savedImages).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!SavedImagesExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
        public async Task <IActionResult> PostSavedImages([FromBody] SavedImages savedImages)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            _context.Images.Add(savedImages);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetSavedImages", new { id = savedImages.Id }, savedImages));
        }
Beispiel #5
0
        /// <summary>
        /// This mehod is being called whenever the user asked
        /// to remove an handler
        /// </summary>
        public void OnRemove(SavedImages image)
        {
            IsRemoved = false;
            string[]       args     = { image.ImagePath, image.ThumbPath };
            CommandMessage msg      = new CommandMessage((int)CommandEnum.DeleteCommand, args);
            TcpClient      instance = TcpClient.Instance;

            instance.Channel.Write(msg.ToJson());      // notify the server
            SpinWait.SpinUntil(() => IsRemoved, 4000); // wait until the service updates the data
            if (IsRemoved)                             // If IsRemoved is true it means than the server deleted the image
            {
                Images.Remove(SelectedItem);
            }
        }
Beispiel #6
0
        public void initialize()
        {
            string[] paths = null;
            string   name;
            string   path;
            DateTime imageDate;

            if (Directory.Exists(OutputDirectory))
            {
                paths = Directory.GetFiles(OutputDirectory, "*", SearchOption.AllDirectories);
                for (int i = 0; i < paths.Length; i++)
                {
                    path      = paths[i];
                    imageDate = GetDateTakenFromImage(path);
                    name      = Path.GetFileName(path);
                    SavedImages image = new SavedImages(path, name, imageDate);
                    Images.Add(image);
                }
            }
        }