public static List <ALittleAlliteration> GetCluesForTheme(string theme, int season = 0)
        {
            List <ALittleAlliteration> matchingPuzzles = new List <ALittleAlliteration>();

            GoogleSheet sheet = new GoogleSheet()
            {
                GoogleSheetKey = ALittleAlliterationGoogleSheet
            };
            string query = $"SELECT * WHERE H LIKE '%{theme}%'";

            if (season == 1)
            {
                sheet.GoogleSheetKey = ALittleAlliterationSeasonOneGoogleSheet;
                query = $"SELECT * WHERE I LIKE '%{theme}%'";
            }


            foreach (var result in sheet.ExecuteQuery(query))
            {
                ALittleAlliteration aLittleAlliteration = new ALittleAlliteration(result, season);
                if (!string.IsNullOrWhiteSpace(aLittleAlliteration.Clue))
                {
                    matchingPuzzles.Add(aLittleAlliteration);
                }
            }

            return(matchingPuzzles);
        }
        public List <ALittleAlliteration> FindPuzzle(string firstThreeLetters)
        {
            GoogleSheet sheet = new GoogleSheet()
            {
                GoogleSheetKey = ALittleAlliterationGoogleSheet
            };

            string firstThreeLetters1 = firstThreeLetters.ToLower();

            List <ALittleAlliteration> results = new List <ALittleAlliteration>();

            foreach (var dictionary in sheet.ExecuteQuery($"SELECT * WHERE E = '{firstThreeLetters1}'"))
            {
                var aLittleAlliteration = new ALittleAlliteration(dictionary);
                if (string.IsNullOrWhiteSpace(aLittleAlliteration.TwitterUrl) &&
                    string.IsNullOrWhiteSpace(aLittleAlliteration.DatePosted) &&
                    !string.IsNullOrWhiteSpace(aLittleAlliteration.Clue))
                {
                    results.Add(aLittleAlliteration);
                }
            }
            return(results);
        }
Пример #3
0
        public List <VowelMovement> FindPuzzle(string startConsonant, string endConsonant)
        {
            // ReSharper disable StringLiteralTypo
            GoogleSheet sheet = new GoogleSheet()
            {
                GoogleSheetKey = "1iYI-nE-5hYN7J3ckXmJjmzbxLmqs5UAGpGJh5yNUKgM"
            };
            // ReSharper restore StringLiteralTypo

            string startConsonant1;

            if (string.IsNullOrWhiteSpace(startConsonant))
            {
                startConsonant1 = null;
            }
            else
            {
                startConsonant1 = startConsonant.ToLower();
                switch (startConsonant1)
                {
                case "c":
                case "k":
                    startConsonant1 = "c, k";
                    break;

                case "g":
                    startConsonant1 = "g (hard)";
                    break;

                case "n":
                case "kn":
                    startConsonant1 = "n, kn";
                    break;

                case "q":
                    startConsonant1 = "qu";
                    break;

                case "j":
                    startConsonant1 = "j/soft g";
                    break;
                }
            }


            if (!string.IsNullOrWhiteSpace(endConsonant))
            {
                endConsonant = endConsonant.ToLower();
                switch (endConsonant)
                {
                case "c":
                case "k":
                    endConsonant = "c, k";
                    break;

                case "h":
                case "w":
                case "y":
                    endConsonant = "(h) (w) (y)";
                    break;
                }
            }



            List <Dictionary <int, string> > queryResults = sheet.ExecuteQuery(string.Format($@"SELECT * WHERE I = '{startConsonant1}' AND J = '{endConsonant}'"));

            List <VowelMovement> vowelMovements = new List <VowelMovement>();

            foreach (var dictionary in queryResults)
            {
                var vowelMovement = new VowelMovement(dictionary);
                if (string.IsNullOrWhiteSpace(vowelMovement.TwitterUrl) &&
                    string.IsNullOrWhiteSpace(vowelMovement.DatePosted))
                {
                    vowelMovements.Add(vowelMovement);
                }
            }
            return(vowelMovements);
        }