Exemplo n.º 1
0
    public void GetQuestionsFromDatabase(int questionsEachCategory)
    {
        DatabaseConnection.ReadQuestionOptions options = new DatabaseConnection.ReadQuestionOptions {
            Number = questionsEachCategory
        };
        List <Question> questions = DatabaseConnection.ReadQuestionsFromDatabase(options);

        foreach (Question question in questions)
        {
            CategoryQuestions catQuest = CategoryQuestionList.FirstOrDefault(q => q.Category == question.CategoryList[0]);
            if (catQuest == null)
            {
                CategoryQuestions catQ = new CategoryQuestions {
                    Category  = question.CategoryList[0],                    //TODO: Needs to be fixed for multi category systems
                    Questions = new List <Question>()
                };
                catQ.Questions.Add(question);
                CategoryQuestionList.Add(catQ);
            }
            else
            {
                catQuest.Questions.Add(question);
            }
        }
        CategoryQuestionList = CategoryQuestionList.OrderBy(x => Random.value).ToList();
    }
Exemplo n.º 2
0
    public void SearchQuestions()
    {
        string     value   = EditQuestionPanel.GetSelectedDifficulty();
        List <int> weights = new List <int> {
            -1
        };

        if (value != "All")
        {
            weights[0] = Int32.Parse(value);
        }
        string          selectedCat = EditQuestionPanel.GetSelectedCategory();
        List <Category> category    = new List <Category>();

        if (selectedCat == "All")
        {
            category = Categories;
        }
        else
        {
            category.Add(new Category {
                Name = selectedCat
            });
        }

        DatabaseConnection.ReadQuestionOptions options = new DatabaseConnection.ReadQuestionOptions {
            CategoryFilter = category,
            WeightFilter   = weights,
            RandomOrder    = false,
            CategoryActive = false,
            IsActive       = false
        };
        List <Question> questions = DatabaseConnection.ReadQuestionsFromDatabase(options);

        EditQuestionPanel.RespawnQuestions(questions);
    }