Пример #1
0
    private IEnumerator _GetQuizzes()
    {
        User currentUser = UserService.user;

        AlertsService.makeLoadingAlert("Recebendo quizzes");
        WWW quizzesRequest = QuizzesService.GetQuizzes(currentUser._id);

        while (!quizzesRequest.isDone)
        {
            yield return(new WaitForSeconds(0.1f));
        }

        AlertsService.removeLoadingAlert();
        Debug.Log("Header: " + quizzesRequest.responseHeaders["STATUS"]);
        Debug.Log("Text: " + quizzesRequest.text);

        if (quizzesRequest.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            QuizzesService.UpdateQuizzes(quizzesRequest.text);
            CreateQuizzesCards();
        }
        else
        {
            AlertsService.makeAlert("Falha na conexão", "Tente novamente mais tarde.", "");
            yield return(new WaitForSeconds(3f));

            LoadView("Activities");
        }

        yield return(null);
    }
Пример #2
0
        public QuizzesTests()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString()).Options;
            var dbContext = new ApplicationDbContext(options);

            this.answerRepository   = new EfDeletableEntityRepository <Answer>(dbContext);
            this.questionRepository = new EfDeletableEntityRepository <Question>(dbContext);
            this.categoryRepository = new EfDeletableEntityRepository <Category>(dbContext);
            this.quizRepository     = new EfDeletableEntityRepository <Quiz>(dbContext);
            this.service            = new QuizzesService(quizRepository, questionRepository, answerRepository);
        }
Пример #3
0
        public static Server Configure(IServiceProvider container, IConfigurationRoot configuration)
        {
            var serverPort = Convert.ToInt32(configuration["RPC:ServerPort"]);

            var server = new Server
            {
                Services =
                {
                    QuizzesService.BindService(container.GetRequiredService <QuizzesController>()),
                    TopicsService.BindService(container.GetRequiredService <TopicsController>())
                },
                Ports = { new ServerPort("localhost", serverPort, ServerCredentials.Insecure) }
            };

            return(server);
        }
Пример #4
0
    private IEnumerator _SendResponse()
    {
        AlertsService.makeLoadingAlert("Enviando");

        Quiz   currentQuiz = QuizzesService.quiz;
        User   currentUser = UserService.user;
        string answer      = this.alternative;

        WWW responseRequest = QuizzesService.SendResponse(currentQuiz._id, currentUser._id, answer);

        while (!responseRequest.isDone)
        {
            yield return(new WaitForSeconds(0.1f));
        }

        Debug.Log("Header: " + responseRequest.responseHeaders["STATUS"]);
        Debug.Log("Text: " + responseRequest.text);
        AlertsService.removeLoadingAlert();

        if (responseRequest.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            string message;

            if (currentQuiz.HasCorrectAnswer())
            {
                message = string.Format("Se você marcou a alternativa correta, será recompensado(a) com {0}s em breve!", ENV.POINT);
            }
            else
            {
                message = string.Format("Sua resposta será analisada o(a) recompensaremos com {0}s se a resposta for válida.", ENV.POINT);
            }

            AlertsService.makeAlert("Resposta enviada", message, "");

            yield return(new WaitForSeconds(4f));

            SceneManager.LoadScene("Quizzes");
            yield return(null);
        }
        else
        {
            AlertsService.makeAlert("Falha na conexão", "Tente novamente mais tarde.", "Entendi");
            SceneManager.LoadScene("Home");
        }

        yield return(null);
    }
    private IEnumerator _SearchQuiz()
    {
        if (!CheckFields())
        {
            AlertsService.makeAlert("Por favor repita sua tarefa", "", "Entendi");
            // AlertsService.makeAlert("Código inválido", "Digite um código secreto com pelo menos quatro caracteres para realizar a busca.", "Entendi");
            yield break;
        }

        AlertsService.makeLoadingAlert("Buscando");

        string secretCode  = secretCodeField.text;
        User   currentUser = UserService.user;

        WWW quizRequest = QuizzesService.SearchQuiz(currentUser._id, secretCode);

        while (!quizRequest.isDone)
        {
            yield return(new WaitForSeconds(0.1f));
        }

        AlertsService.removeLoadingAlert();
        Debug.Log("Header: " + quizRequest.responseHeaders["STATUS"]);
        Debug.Log("Text: " + quizRequest.text);

        if (quizRequest.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            QuizzesService.UpdateQuiz(quizRequest.text);
            LoadView("Quiz");
        }
        else
        {
            AlertsService.makeAlert("Não encontrado", "Não encontramos nenhum quiz com esse código secreto. Por favor, verifique o código e tente novamente.", "OK");
        }

        yield return(null);
    }
Пример #6
0
 public QuizzesController(QuizzesService quizzesService, StatisticsService statisticsService, SolvingQuizzesService solvingQuizzesService)
 {
     _quizzesService        = quizzesService;
     _statisticsService     = statisticsService;
     _solvingQuizzesService = solvingQuizzesService;
 }
Пример #7
0
 public void OpenQuiz()
 {
     QuizzesService.UpdateQuiz(quiz);
     SceneManager.LoadScene("Quiz");
 }