public VerseResponse GetVerse(int surahNumber, int verseNumber)
        {
            var verseResponse = new VerseResponse();
            var s             = new StorageService();
            var verse         = s.SetOf <Verse>().Single(v => v.SurahNumber == surahNumber && v.VerseNumber == verseNumber);
            var words         = verse.Words.Select(w => BuildWord(w)).ToList();

            verseResponse.ArabicWords = words;
            verseResponse.EnglishText = verse.Translation.Text;
            s.Dispose();
            return(verseResponse);
        }
Esempio n. 2
0
        /// <summary>
        /// When the user selects a verse to save as favorites, allow the data to be saved.  The user may want to browse the data through some other UI.
        /// </summary>
        /// <param name="versetext"></param>
        /// <param name="imagelink"></param>
        /// <param name="versedate"></param>
        /// <param name="videolink"></param>
        /// <param name="referencelink"></param>
        /// <param name="versenumbers"></param>
        /// <param name="chapter"></param>
        /// <param name="book"></param>
        /// <param name="biblereferencelink"></param>
        /// <param name="facebookshareurl"></param>
        /// <param name="twittershareurl"></param>
        /// <param name="pinterestshareurl"></param>
        /// <param name="isvalid"></param>
        /// <param name="id"></param>
        /// <param name="url"></param>
        /// <returns></returns>
        public async Task <bool> AddToFavorites(string versetext, string imagelink, DateTime versedate, string videolink, string referencelink,
                                                string versenumbers, string chapter, string book, string biblereferencelink, string facebookshareurl, string twittershareurl,
                                                string pinterestshareurl, bool isvalid, string id, string url)
        {
            VerseResponse verseResponse = new VerseResponse {
                VerseText         = versetext, ImageLink = imagelink, VerseDate = versedate, VideoLink = videolink, ReferenceLink = referencelink,
                VerseNumbers      = versenumbers, Chapter = chapter, Book = book, BibleReferenceLink = biblereferencelink, FacebookShareUrl = facebookshareurl, TwitterShareUrl = twittershareurl,
                PinterestShareUrl = pinterestshareurl, IsValid = isvalid, Id = id, Url = url
            };
            VersesRepository versesRepository = new VersesRepository(_dbContext);
            await versesRepository.AddToFavorites(verseResponse);

            return(true);
        }
Esempio n. 3
0
        public VerseResponse GetVerse(int surahNumber, int verseNumber)
        {
            var verseResponse = new VerseResponse();
            var verse         = _storageService.SetOf <Verse>().SingleOrDefault(v => v.SurahNumber == surahNumber && v.VerseNumber == verseNumber);

            if (verse == null)
            {
                return(null);
            }
            var words = verse.Words.Select(w => BuildWord(w)).ToList();

            verseResponse.ArabicWords = words;
            verseResponse.EnglishText = verse.Translation?.Text ?? "";
            return(verseResponse);
        }
        public async Task <bool> AddToFavorites(VerseResponse verseResponse)
        {
            bool rtn = true;

            try
            {
                // if the verse already exists, then do not add it again.  Some users like to click multiple times.
                FavoriteVerses verseFind = _dbContext.GetFavoriteVerses.FirstOrDefault(c => c.VerseText == verseResponse.VerseText);
                if (verseFind == null)
                {
                    FavoriteVerses verse = new FavoriteVerses();
                    verse.VerseText          = verseResponse.VerseText;
                    verse.ImageLink          = verseResponse.ImageLink ?? "";
                    verse.VerseDate          = verseResponse.VerseDate;
                    verse.VideoLink          = verseResponse.VideoLink ?? "";
                    verse.ReferenceLink      = verseResponse.ReferenceLink ?? "";
                    verse.VerseNumbers       = verseResponse.VerseNumbers ?? "";
                    verse.Chapter            = verseResponse.Chapter ?? "";
                    verse.Book               = verseResponse.Book ?? "";
                    verse.ReferenceText      = verseResponse.ReferenceText ?? "";
                    verse.BibleReferenceLink = verseResponse.BibleReferenceLink ?? "";
                    verse.FacebookShareUrl   = verseResponse.FacebookShareUrl ?? "";
                    verse.TwitterShareUrl    = verseResponse.TwitterShareUrl ?? "";
                    verse.PinterestShareUrl  = verseResponse.PinterestShareUrl ?? "";
                    verse.IsValid            = verseResponse.IsValid;
                    verse.Id  = verseResponse.Id ?? "";
                    verse.Url = verseResponse.Url ?? "";

                    _dbContext.GetFavoriteVerses.Add(verse);
                    _dbContext.SaveChanges();
                }
            }
            catch
            {
                // please - more error handling
                rtn = false;
            }
            return(rtn);
        }