コード例 #1
0
        public async Task <IActionResult> AgendarTrilho([Bind("TrilhoId,Data_Prevista_Inicio_Trilho")] Agenda_Turista_Trilho agenda_Turista_Trilho)
        {
            if (ModelState.IsValid)
            {
                //Saber qual Turista que fez o agendamento de um determinado trilho
                //var nomeUser = User.Identity.Name;
                //var turista = await _context.Turista.SingleOrDefaultAsync(t => t.Nome == nomeUser);
                //agenda_Turista_Trilho.Turista = turista;
                agenda_Turista_Trilho.Turista = await _context.Turista.SingleOrDefaultAsync(t => t.TuristaId == 1);

                agenda_Turista_Trilho.Dificuldade = await _context.Dificuldade.SingleOrDefaultAsync(d => d.DificuldadeId == 1);

                if (agenda_Turista_Trilho.Turista == null)
                {
                    return(NotFound());
                }

                _context.Add(agenda_Turista_Trilho);

                await _context.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            ViewData["TrilhoId"] = new SelectList(_context.Set <Trilho>(), "TrilhoId", "Nome", agenda_Turista_Trilho.TrilhoId);
            // ViewData["TuristaId"] = new SelectList(_context.Set<Turista>(), "TuristaId", "DataNascimento", agenda_Turista_Trilho.TuristaId);
            return(View(agenda_Turista_Trilho));
        }
コード例 #2
0
        public async Task <IActionResult> Create([Bind("DificuldadeId,NomeDificuldade,Observacoes")] Dificuldade dificuldade)
        {
            if (ModelState.IsValid)
            {
                _context.Add(dificuldade);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(dificuldade));
        }
コード例 #3
0
        public async Task <IActionResult> Create([Bind("ProfessorId,Nome,Password,Morada,CodPostal,Email,Telemovel,DataNascimento,NIF,Funcao,N_Gabinete")] Professor professor)
        {
            if (ModelState.IsValid)
            {
                _context.Add(professor);
                await _context.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            return(View(professor));
        }
コード例 #4
0
        public async Task <IActionResult> Create([Bind("TrilhoId,Nome_Trilho,Local_Inicio_Trilho,Local_Fim_Trilho,Distancia_Total,Duracao_Media,Esta_Ativo,Tempo_Gasto,ProfessorId,DificuldadeId")] Trilho trilho)
        {
            if (ModelState.IsValid)
            {
                _context.Add(trilho);
                await _context.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            ViewData["DificuldadeId"] = new SelectList(_context.Set <Dificuldade>(), "DificuldadeId", "DificuldadeId", trilho.DificuldadeId);
            ViewData["ProfessorId"]   = new SelectList(_context.Professor, "ProfessorId", "DataNascimento", trilho.ProfessorId);
            return(View(trilho));
        }
コード例 #5
0
        public async Task <IActionResult> Register([Bind("Email, Password, ConfirmPassword, TuristaId, Nome,Morada,CodPostal,Email,Telemovel,DataNascimento,NIF")] Turista turista, RegisterViewModel model, string returnUrl = null)
        {
            ViewData["ReturnUrl"] = returnUrl;
            if (ModelState.IsValid)
            {
                if (IsValidContrib(turista.NIF) == false)
                {
                    ModelState.AddModelError("NIF", "O Nif está incorreto.");
                    return(View());
                }
                else
                {
                    _context.Add(turista);
                    await _context.SaveChangesAsync();

                    var user = new ApplicationUser {
                        UserName = turista.Nome, Email = turista.Email
                    };

                    var result = await _userManager.CreateAsync(user, turista.Password);

                    if (!await _userManager.IsInRoleAsync(user, "Turista"))
                    {
                        await _userManager.AddToRoleAsync(user, "Turista");
                    }

                    if (result.Succeeded)
                    {
                        // For more information on how to enable account confirmation and password reset please visit https://go.microsoft.com/fwlink/?LinkID=532713
                        // Send an email with this link
                        //var code = await _userManager.GenerateEmailConfirmationTokenAsync(user);
                        //var callbackUrl = Url.Action(nameof(ConfirmEmail), "Account", new { userId = user.Id, code = code }, protocol: HttpContext.Request.Scheme);
                        //await _emailSender.SendEmailAsync(model.Email, "Confirm your account",
                        //    $"Please confirm your account by clicking this link: <a href='{callbackUrl}'>link</a>");


                        await _signInManager.SignInAsync(user, isPersistent : false);

                        _logger.LogInformation(3, "Utilizador criou uma nova conta com palavra passe.");


                        return(RedirectToLocal(returnUrl));
                    }
                    AddErrors(result);
                }
            }
            // If we got this far, something failed, redisplay form
            return(View(model));
        }