You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
50 lines
1.8 KiB
50 lines
1.8 KiB
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Web;
|
|
using System.Web.UI;
|
|
using System.Web.UI.WebControls;
|
|
using Microsoft.AspNet.Identity;
|
|
using Microsoft.AspNet.Identity.Owin;
|
|
|
|
namespace WebFormApp.Account
|
|
{
|
|
public partial class VerifyPhoneNumber : System.Web.UI.Page
|
|
{
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
var manager = Context.GetOwinContext().GetUserManager<ApplicationUserManager>();
|
|
var phonenumber = Request.QueryString["PhoneNumber"];
|
|
var code = manager.GenerateChangePhoneNumberToken(User.Identity.GetUserId(), phonenumber);
|
|
PhoneNumber.Value = phonenumber;
|
|
}
|
|
|
|
protected void Code_Click(object sender, EventArgs e)
|
|
{
|
|
if (!ModelState.IsValid)
|
|
{
|
|
ModelState.AddModelError("", "Ungültiger Code.");
|
|
return;
|
|
}
|
|
|
|
var manager = Context.GetOwinContext().GetUserManager<ApplicationUserManager>();
|
|
var signInManager = Context.GetOwinContext().Get<ApplicationSignInManager>();
|
|
|
|
var result = manager.ChangePhoneNumber(User.Identity.GetUserId(), PhoneNumber.Value, Code.Text);
|
|
|
|
if (result.Succeeded)
|
|
{
|
|
var user = manager.FindById(User.Identity.GetUserId());
|
|
|
|
if (user != null)
|
|
{
|
|
signInManager.SignIn(user, isPersistent: false, rememberBrowser: false);
|
|
Response.Redirect("/Account/Manage?m=AddPhoneNumberSuccess");
|
|
}
|
|
}
|
|
|
|
// Wurde dieser Punkt erreicht, ist ein Fehler aufgetreten. Formular erneut anzeigen.
|
|
ModelState.AddModelError("", "Fehler beim Überprüfen des Telefons.");
|
|
}
|
|
}
|
|
} |