/// <summary>
        /// check if image exists
        /// </summary>
        /// <param name="imageID"></param>
        /// <returns></returns>
        public bool CheckImageExists(string imageID)
        {
            FlickrDataEntities dbContext = new FlickrDataEntities();
            bool result = false;

            result = (from r in dbContext.FlickrImages where r.PhotoId == imageID select r).Any();
            return(result);
        }
        public bool CheckUserDetails(string email, string password)
        {
            FlickrDataEntities dbContext = new FlickrDataEntities();
            bool result = false;

            result = (from r in dbContext.Users where r.Email == email && r.Password == password select r).Any();
            return(result);
        }
        public void insertImage(FlickrImage image)
        {
            FlickrDataEntities dbContext = new FlickrDataEntities();

            if (!CheckImageExists(image.PhotoId))
            {
                dbContext.FlickrImages.Add(image);
                dbContext.SaveChanges();
            }
        }
        public List <FlickrImage> RetrieveFlickrImages()
        {
            FlickrDataEntities dbContext          = new FlickrDataEntities();
            List <FlickrImage> listOfFlickrImages = null;


            listOfFlickrImages = (from f in dbContext.FlickrImages
                                  select f).Distinct().ToList();

            return(listOfFlickrImages);
        }
        public bool CheckIfEmailExist(string email)
        {
            FlickrDataEntities dbContext = new FlickrDataEntities();
            bool result = false;

            if (!string.IsNullOrEmpty(email))
            {
                result = (from r in dbContext.Users where r.Email.ToUpper() == email.ToUpper()  select r).Any();
            }
            return(result);
        }
        public User retrieveUser(string email)
        {
            FlickrDataEntities dbContext = new FlickrDataEntities();
            User retrievedUser           = null;


            retrievedUser = (from f in dbContext.Users
                             where f.Email.ToUpper() == email.ToUpper()
                             select f).First();

            return(retrievedUser);
        }
        public List <FlickrImage> RetrieveFlickrImages(string searchTerm)
        {
            FlickrDataEntities dbContext          = new FlickrDataEntities();
            List <FlickrImage> listOfFlickrImages = null;


            listOfFlickrImages = (from f in dbContext.FlickrImages
                                  where f.Title.Contains(searchTerm) ||
                                  f.Description.Contains(searchTerm) ||
                                  f.Locality_Description.Contains(searchTerm) ||
                                  f.Region_Description.Contains(searchTerm) ||
                                  f.Tags.Contains(searchTerm)
                                  select f).Distinct().ToList();

            return(listOfFlickrImages);
        }
        public string RegisterUser(User newuser)
        {
            string result = string.Empty;



            FlickrDataEntities dbContext = new FlickrDataEntities();

            if (!CheckIfEmailExist(newuser.Email))
            {
                dbContext.Users.Add(newuser);
                dbContext.SaveChanges();
                result = "SUCCESS";
            }
            else
            {
                result = "Email already exists";
            }
            return(result);
        }