コード例 #1
0
    private IEnumerator _AddMember()
    {
        AlertsService.makeLoadingAlert("Adicionando");

        string userEmail = newMemberEmail.text;
        int    groupId   = GroupsService.group._id;
        bool   isAdmin   = false;

        WWW createRequest = GroupsService.AddMember(userEmail, groupId, isAdmin);

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

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

        if (createRequest.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            AlertsService.makeAlert("Sucesso", "O usuário foi adicionado com sucesso em seu grupo.", "");
            yield return(new WaitForSeconds(3f));

            LoadView("Group");
            yield return(null);
        }
        else
        {
            AlertsService.makeAlert("Falha ao adicionar", "Verifique se inseriu o endereço de e-mail do usuário corretamente.", "Entendi");
        }

        yield return(null);
    }
コード例 #2
0
    private IEnumerator _RemoveGroup()
    {
        AlertsService.makeLoadingAlert("Removendo");
        int groupId = GroupsService.group._id;

        WWW removeRequest = GroupsService.RemoveGroup(groupId);

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

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

        if (removeRequest.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            LoadView("Groups");
        }
        else
        {
            AlertsService.makeAlert("Falha ao remover", "Verifique sua conexão com a internet e tente novamente mais tarde.", "Entendi");
        }

        yield return(null);
    }
コード例 #3
0
    private IEnumerator _UpdateGroupInfo()
    {
        Group currentGroup  = GroupsService.group;
        WWW   updateRequest = GroupsService.UpdateGroup(currentGroup);

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

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

        if (updateRequest.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            UpdateFields();
        }
        else
        {
            AlertsService.makeAlert("Falha ao atualizar", "Houve uma falha em sua conexão. Tente novamente mais tarde.", "Entendi");
        }

        yield return(null);
    }
コード例 #4
0
    private void FillOptions()
    {
        Quiz    currentQuiz = QuizzesService.quiz;
        Vector3 position    = optionCard.transform.position;

        optionCard.SetActive(true);

        for (int i = 0; i < currentQuiz.answers.Count; i++)
        {
            string answer = currentQuiz.answers[i];

            if (answer.Length < 1)
            {
                continue;
            }

            position = new Vector3(position.x, position.y, position.z);
            GameObject card = (GameObject)Instantiate(optionCard, position, Quaternion.identity);
            card.transform.SetParent(GameObject.Find("List").transform, false);

            QuizOptionCard optionCardScript = card.GetComponent <QuizOptionCard>();
            string         alternative      = GetAlternative(i);

            optionCardScript.UpdateOption(answer, alternative);
        }

        optionCard.gameObject.SetActive(false);
        AlertsService.removeLoadingAlert();
    }
コード例 #5
0
    private void CreateMissionsCards()
    {
        Vector3 position = missionCard.transform.position;

        if (MissionsService.missions.Length > 0)
        {
            missionCard.SetActive(true);
        }
        else
        {
            noMissionsCard.SetActive(true);
        }

        foreach (Mission mission in MissionsService.missions)
        {
            position = new Vector3(position.x, position.y, position.z);
            GameObject card = (GameObject)Instantiate(missionCard, position, Quaternion.identity);
            card.transform.SetParent(GameObject.Find("List").transform, false);

            MissionCard missionCardScript = card.GetComponent <MissionCard>();
            missionCardScript.UpdateMissionCard(mission);
        }

        missionCard.gameObject.SetActive(false);
        AlertsService.removeLoadingAlert();
    }
コード例 #6
0
    private IEnumerator _SendNewPost()
    {
        AlertsService.makeLoadingAlert("Enviando");

        int    userId      = UserService.user._id;
        string imageBase64 = camService.photoBase64,
               message     = newMessageField.text;

        WWW postForm = TimelineService.NewPost(userId, imageBase64, message);

        while (!postForm.isDone)
        {
            yield return(new WaitForSeconds(1f));
        }

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

        if (postForm.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            ReloadView();
        }
        else
        {
            AlertsService.makeAlert("Falha na conexão", "Ocorreu um problema ao enviar sua publicação. Tente novamente.", "Entendi");
        }

        yield return(null);
    }
コード例 #7
0
    private IEnumerator _GetPlants()
    {
        WWW plantsRequest = PlantsService.GetUserPlants(UserService.user._id);

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

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

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

            LoadView("Home");
        }

        yield return(null);
    }
コード例 #8
0
    private void CreatePlantsCard()
    {
        Vector3 position = plantCard.transform.position;

        if (PlantsService.plants.Length > 0)
        {
            plantCard.SetActive(true);
        }
        else
        {
            noPlantsCard.SetActive(true);
        }

        foreach (Plant plant in PlantsService.plants)
        {
            Debug.Log("Request Status: " + plant._request.status);

            position = new Vector3(position.x, position.y, position.z);
            GameObject card = (GameObject)Instantiate(plantCard, position, Quaternion.identity);
            card.transform.SetParent(GameObject.Find("List").transform, false);

            PlantCard plantCardScript = card.GetComponent <PlantCard>();
            plantCardScript.UpdatePlantCard(plant);
        }

        plantCard.gameObject.SetActive(false);
        AlertsService.removeLoadingAlert();
    }
コード例 #9
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);
    }
コード例 #10
0
    private void CreateGroupsCards()
    {
        Vector3 position = groupCard.transform.position;

        if (GroupsService.groups.Length > 0)
        {
            groupCard.SetActive(true);
        }
        else
        {
            noGroupsCard.SetActive(true);
        }

        foreach (Group group in GroupsService.groups)
        {
            position = new Vector3(position.x, position.y, position.z);
            GameObject card = (GameObject)Instantiate(groupCard, position, Quaternion.identity);
            card.transform.SetParent(GameObject.Find("List").transform, false);

            GroupCard groupCardScript = card.GetComponent <GroupCard>();
            groupCardScript.UpdateGroupCard(group);
        }

        groupCard.gameObject.SetActive(false);
        AlertsService.removeLoadingAlert();
    }
コード例 #11
0
    private IEnumerator _GetUserEvents()
    {
        AlertsService.makeLoadingAlert("Recebendo eventos");
        WWW eventsRequest = EventsService.GetUserEvents(UserService.user._id);

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

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

        if (eventsRequest.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            Debug.Log("Received: " + eventsRequest.text);
            EventsService.UpdateUserEvents(eventsRequest.text);
            CreateEventRequestsCards();
        }
        else
        {
            LoadPreviousView();
        }

        yield return(null);
    }
コード例 #12
0
    private void CreateEventCards()
    {
        Vector3 position = eventCard.transform.position;

        if (EventsService.events.Length > 0)
        {
            eventCard.SetActive(true);
        }
        else
        {
            noEventsCard.SetActive(true);
        }

        foreach (Event evt in EventsService.events)
        {
            position = new Vector3(position.x, position.y, position.z);
            GameObject card = (GameObject)Instantiate(eventCard, position, Quaternion.identity);
            card.transform.SetParent(GameObject.Find("List").transform, false);

            EventCard evtCard = card.GetComponent <EventCard>();
            evtCard.UpdateEvent(evt);
        }

        eventCard.gameObject.SetActive(false);
        AlertsService.removeLoadingAlert();
    }
コード例 #13
0
    private IEnumerator _RemoveMember()
    {
        AlertsService.makeLoadingAlert("Removendo");
        WWW removeRequest = GroupsService.RemoveMember(member._id);

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

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

        if (removeRequest.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            if (isCurrentUser)
            {
                SceneManager.LoadScene("Groups");
            }
            else
            {
                Destroy(this.gameObject);
            }

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

        yield return(null);
    }
コード例 #14
0
    private IEnumerator _GetEvents()
    {
        AlertsService.makeLoadingAlert("Recebendo eventos");
        WWW eventsRequest = EventsService.GetEvents();

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

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

        if (eventsRequest.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            StartCoroutine(_GetUserEvents());
            EventsService.UpdateLocalEvents(eventsRequest.text);
            CreateEventCards();
        }
        else
        {
            AlertsService.makeAlert("Falha na conexão", "Tente novamente mais tarde.", "");
            yield return(new WaitForSeconds(3f));

            LoadView("Home");
        }

        yield return(null);
    }
コード例 #15
0
    private IEnumerator _GetUserEvents()
    {
        AlertsService.makeLoadingAlert("Recebendo eventos");
        WWW eventsRequest = EventsService.GetUserEvents(UserService.user._id);

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

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

        if (eventsRequest.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            EventsService.UpdateUserEvents(eventsRequest.text);
        }
        else
        {
            AlertsService.makeAlert("Alerta", "Por conta de um erro em sua conexão, novos pedidos de participação em eventos serão negados por enquanto.", "Entendi");
        }

        yield return(null);
    }
コード例 #16
0
    private IEnumerator _ExitGroup()
    {
        AlertsService.makeLoadingAlert("Saindo");
        WWW exitRequest = GroupsService.RemoveMember(UserService.user._id);

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

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

        if (exitRequest.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            AlertsService.makeAlert("Sucesso", "Você saiu do grupo.", "");
            yield return(new WaitForSeconds(2f));

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

        yield return(null);
    }
コード例 #17
0
    private IEnumerator _UpdateMission()
    {
        WWW missionRequest = MissionsService.GetMission(submission._mission);

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

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

        if (missionRequest.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            missions = UtilsService.GetJsonArray <Mission>(missionRequest.text);

            if (missions.Length >= 1)
            {
                title.text = missions[0].name;
            }
        }

        yield return(null);
    }
コード例 #18
0
    private IEnumerator _AddOwnership()
    {
        User currentUser = UserService.user;
        int  groupId     = GroupsService.group._id;
        bool isAdmin     = true;

        WWW createRequest = GroupsService.AddMember(currentUser.email, groupId, isAdmin);

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

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

        if (createRequest.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            LoadView("Groups");
        }
        else
        {
            AlertsService.makeAlert("Erro", "Falha em sua conexão. Tente novamente mais tarde.", "");
            yield return(new WaitForSeconds(3f));

            LoadView("Groups");
        }

        yield return(null);
    }
コード例 #19
0
    private void CreateQuizzesCards()
    {
        Vector3 position = quizCard.transform.position;

        if (QuizzesService.quizzes.Length > 0)
        {
            quizCard.SetActive(true);
        }
        else
        {
            noQuizzesCard.SetActive(true);
        }

        foreach (Quiz quiz in QuizzesService.quizzes)
        {
            position = new Vector3(position.x, position.y, position.z);
            GameObject card = (GameObject)Instantiate(quizCard, position, Quaternion.identity);
            card.transform.SetParent(GameObject.Find("List").transform, false);

            QuizCard quizCardScript = card.GetComponent <QuizCard>();
            quizCardScript.UpdateQuizCard(quiz);
        }

        quizCard.gameObject.SetActive(false);
        AlertsService.removeLoadingAlert();
    }
コード例 #20
0
    private IEnumerator _SaveChanges(User aux)
    {
        string photoBase64 = camService.photoBase64;

        WWW updateResponse = UserService.Update(aux, photoBase64);

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

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

        if (updateResponse.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            AlertsService.makeAlert("PERFIL ATUALIZADO", "Suas informações foram atualizadas com sucesso.", "");
            UserService.UpdateLocalUser(aux);
            yield return(new WaitForSeconds(3f));

            ReloadView();
        }
        else
        {
            AlertsService.makeAlert("Falha na conexão", "Verifique sua conexão e tente novamente mais tarde.", "Entendi");
        }

        yield return(null);
    }
コード例 #21
0
    private IEnumerator _SendResponse()
    {
        AlertsService.makeLoadingAlert("Enviando resposta");

        int currentUserId = UserService.user._id,
            missionId     = MissionsService.mission._id,
            groupId       = GetSelectedGroupId(senderTypeDropdown.captionText.text);

        WWW responseRequest = MissionsService.SendResponse(currentUserId, missionId, groupId);

        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)
        {
            Mission currentMission = MissionsService.mission;

            if (currentMission.end_message != null && currentMission.end_message.Length > 0)
            {
                OpenModal("Final");
            }
            else
            {
                AlertsService.makeAlert("Resposta enviada", "", "");
                //AlertsService.makeAlert("Resposta enviada", "Boa! Sua resposta foi enviada com sucesso. Você será redirecionado(a) para as missões.", "");
                yield return(new WaitForSeconds(5f));

                LoadView("Missions");
            }
        }
        else
        {
            if (responseRequest.responseHeaders["STATUS"] == HTML.HTTP_400)
            {
                AlertsService.makeAlert("Senha incorreta", "Por favor, verifique se inseriu corretamente o e-mail e senha.", "OK");
            }
            else if (responseRequest.responseHeaders["STATUS"] == HTML.HTTP_404 || responseRequest.responseHeaders["STATUS"] == HTML.HTTP_401)
            {
                AlertsService.makeAlert("Usuário não encontrado", "Por favor, verifique se inseriu corretamente o e-mail e senha.", "OK");
            }
            else
            {
                AlertsService.makeAlert("Falha na conexão", "Tente novamente mais tarde.", "Entendi");
            }
        }

        yield return(null);
    }
コード例 #22
0
    private void CreateEventRequestsCards()
    {
        int eventsFound = 0;

        Vector3 position = eventCard.transform.position;

        if (EventsService.eventsRequests.Length > 0)
        {
            eventCard.SetActive(true);
        }
        else
        {
            noEventsCard.SetActive(true);
        }

        foreach (EventRequest evtReq in EventsService.eventsRequests)
        {
            Event indexEvt = null;

            foreach (Event evt in EventsService.events)
            {
                if (evt._id == evtReq._appointment._id)
                {
                    indexEvt = evt;
                }
            }

            if (indexEvt == null)
            {
                continue;
            }
            else
            {
                eventsFound += 1;
            }

            position = new Vector3(position.x, position.y, position.z);
            GameObject card = (GameObject)Instantiate(eventCard, position, Quaternion.identity);
            card.transform.SetParent(GameObject.Find("List").transform, false);

            EventCard evtCard = card.GetComponent <EventCard>();
            evtCard.UpdateEventWithStatus(indexEvt, evtReq);
        }

        if (eventsFound == 0)
        {
            noEventsCard.SetActive(true);
        }

        eventCard.gameObject.SetActive(false);
        AlertsService.removeLoadingAlert();
    }
コード例 #23
0
    private IEnumerator _Register()
    {
        if (!CheckFields())
        {
            AlertsService.makeAlert("Campos inválidos", "Preencha todos os campos corretamente antes de registrar-se.", "Entendi");
            yield break;
        }

        AlertsService.makeLoadingAlert("Registrando");
        User newUser = new User();

        newUser.name     = nameField.text;
        newUser.email    = emailField.text;
        newUser.password = passwordField.text;
        newUser.type     = userTypeDropdown.captionText.text;
        if (institutionFieldObj.activeSelf)
        {
            newUser.institution = institutionField.text;
        }

        WWW registerForm = UserService.Register(newUser);

        while (!registerForm.isDone)
        {
            yield return(new WaitForSeconds(1f));
        }

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

        if (registerForm.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            UserService.UpdateLocalUser(registerForm.text);
            yield return(StartCoroutine(_GetUserPhoto()));
        }
        else
        {
            if (registerForm.responseHeaders["STATUS"] == HTML.HTTP_400)
            {
                AlertsService.makeAlert("E-mail em uso", "O endereço de e-mail inserido está em uso, tente um diferente.", "Entendi");
            }
            else
            {
                AlertsService.makeAlert("Falha na conexão", "Ocorreu um erro inesperado. Tente novamente mais tarde.", "Entendi");
            }
        }

        yield return(null);
    }
コード例 #24
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);
    }
コード例 #25
0
    private IEnumerator _RemovePost()
    {
        WWW removeRequest = TimelineService.RemovePost(post);

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

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

        if (removeRequest.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            Destroy(this.gameObject);
        }
    }
コード例 #26
0
    private void CreateMembersCards()
    {
        Vector3 position = memberCard.transform.position;

        memberCard.gameObject.SetActive(true);

        foreach (GroupMember member in GroupsService.group.members)
        {
            position = new Vector3(position.x, position.y, position.z);
            GameObject card = (GameObject)Instantiate(memberCard, position, Quaternion.identity);
            card.transform.SetParent(GameObject.Find("List").transform, false);

            GroupMemberCard memberCardScript = card.GetComponent <GroupMemberCard>();
            memberCardScript.UpdateMember(member);
        }

        CheckAuthority();
        memberCard.gameObject.SetActive(false);
        AlertsService.removeLoadingAlert();
    }
コード例 #27
0
    private IEnumerator _Authenticate()
    {
        WWW loginRequest = UserService.Login(emailField.text, passwordField.text);

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

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

        if (loginRequest.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            SaveUser(loginRequest.text);
            UserService.UpdateLocalUser(loginRequest.text);
            yield return(StartCoroutine(_GetUserPhoto()));
        }
        else
        {
            AlertsService.removeLoadingAlert();

            if (loginRequest.responseHeaders["STATUS"] == HTML.HTTP_400)
            {
                AlertsService.makeAlert("Senha incorreta", "Por favor, verifique se inseriu corretamente o e-mail e senha.", "OK");
            }
            else if (loginRequest.responseHeaders["STATUS"] == HTML.HTTP_404 || loginRequest.responseHeaders["STATUS"] == HTML.HTTP_401)
            {
                AlertsService.makeAlert("Usuário não encontrado", "Por favor, verifique se inseriu corretamente o e-mail e senha.", "OK");
            }
            else
            {
                AlertsService.makeAlert("Falha na conexão", "Tente novamente mais tarde.", "Entendi");
            }
        }

        yield return(null);
    }
コード例 #28
0
    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);
    }
コード例 #29
0
    private IEnumerator _SendMessage()
    {
        if (!CheckMessageFields())
        {
            AlertsService.makeAlert("Campos inválidos", "Certifique-se de que digitou uma mensagem minimamente válida para o seu grupo.", "Entendi");
            yield break;
        }

        AlertsService.makeLoadingAlert("Enviando mensagem");

        User   currentUser  = UserService.user;
        Group  currentGroup = GroupsService.group;
        string message      = newMessage.text;

        WWW messageRequest = GroupsService.SendMessage(currentGroup, currentUser, message);

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

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

        if (messageRequest.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            AlertsService.makeAlert("Mensagem enviada", "Sua mensagem será enviada por e-mail em alguns instantes para todos os integrantes do grupo.", "OK");
        }
        else
        {
            AlertsService.makeAlert("Falha ao enviar", "Houve uma falha em sua conexão. Tente novamente mais tarde.", "Entendi");
        }

        yield return(null);
    }
コード例 #30
0
    private IEnumerator _RecoverPassword()
    {
        if (!CheckFields())
        {
            AlertsService.makeAlert("Campos Inválidos", "Insira um e-mail válido e uma nova senha de pelo menos seis dígitos.", "Entendi");
            yield break;
        }

        string email       = emailField.text,
               newPassword = passwordField.text;

        WWW recoverRequest = UserService.Recover(email, newPassword);

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

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

        if (recoverRequest.responseHeaders["STATUS"] == HTML.HTTP_200)
        {
            AlertsService.makeAlert("SUCESSO", "Você receberá um e-mail para confirmar a modificação da senha em breve.", "");
            yield return(new WaitForSeconds(4f));

            LoadView("Login");
        }
        else
        {
            AlertsService.makeAlert("FALHA NA CONEXÃO", "Houve uma falha na conexão. Por favor, tente novamente mais tarde.", "OK");
        }

        yield return(null);
    }