예제 #1
0
        public async void SaveResponsibleAsync()
        {
            if (String.IsNullOrEmpty(Responsible.Id) && IsAdmin)
            {
                if (!PassHasError)
                {
                    User user = new User()
                    {
                        Email = Responsible.Email, Password = Responsible.Password, Type = "responsible"
                    };
                    var result = await firebase.CreateUserAsync(user);


                    if (String.IsNullOrEmpty(result))
                    {
                        Responsible.AccessToken = user.AccessToken;
                        await responsibleRepository.AddAsync(Responsible);

                        await userRepository.AddAsync(user);

                        await navigationService.GoBackAsync();
                    }
                    else
                    {
                        await MessageService.Instance.ShowAsync(result);
                    }
                }
            }
            else
            {
                await responsibleRepository.AddOrUpdateAsync(Responsible, Responsible.Id);

                await navigationService.GoBackAsync();
            }
        }
        public async void SaveInternAsync()
        {
            if (ResponsibleOrientador != null)
            {
                Intern.IdResponsible = ResponsibleOrientador.Id;

                if (IsAdmin && String.IsNullOrEmpty(Intern.Id))
                {
                    if (!PassHasError)
                    {
                        User user = new User()
                        {
                            Email = Intern.Email, Password = Intern.Password, Type = "intern"
                        };
                        var result = await firebase.CreateUserAsync(user);

                        if (String.IsNullOrEmpty(result))
                        {
                            Intern.AccessToken = user.AccessToken;
                            await internRepository.AddAsync(Intern);

                            await userRepository.AddAsync(user);

                            await navigationService.GoBackAsync();
                        }
                        else
                        {
                            await MessageService.Instance.ShowAsync(result);
                        }
                    }
                }
                else
                {
                    await internRepository.AddOrUpdateAsync(Intern, Intern.Id);

                    await navigationService.GoBackAsync();
                }
            }
            else
            {
                await MessageService.Instance.ShowAsync("Insira um orientador");
            }
        }