Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Фамилия пользователя
- public string SecondName { get; set; }
- // Имя пользователя
- public string FirstName { get; set; }
- // Отчество пользователя
- public string PatronymicName { get; set; }
- // Дата рождения, необходима для фильтрации игр по возрастной категории
- public DateTime? BirthDate { get; set; }
- // Номер телефона
- public string TelephoneNumber { get; set; }
- <ul class="nav nav-tabs" id="myTab">
- <li class="active">
- <a href="#mygames" data-toggle="tab">Моя коллекция игр</a>
- </li>
- <li>
- <a href="#mydata" data-toggle="tab">Мои данные</a>
- </li>
- </ul>
- <div class="tab-pane" id="mydata">
- @Html.Partial("_EditInfo");
- </div>
- @model MyGameStore.Models.EditInfoViewModel
- @using (Html.BeginForm("EditInfo", "Manage", FormMethod.Post, new { @class = "form-signin form-horizontal", role = "form" }))
- {
- @Html.AntiForgeryToken()
- @Html.ValidationSummary("", new { @class = "text-danger" })
- <div class="form-group">
- <div class="col-xs-4">
- @Html.LabelFor(m => m.SecondName, new { @class = "col-md-2 control-label" })
- @Html.TextBoxFor(m => m.SecondName, new { @class = "form-control", value = Model.SecondName })
- </div>
- </div>
- <div class="form-group">
- <div class="col-xs-4">
- <div class="col-xs-4">
- @Html.LabelFor(m => m.FirstName, new { @class = "col-md-2 control-label" })
- @Html.TextBoxFor(m => m.FirstName, new { @class = "form-control", value = Model.FirstName })
- </div>
- </div>
- <div class="form-group">
- <div class="col-xs-4">
- @Html.LabelFor(m => m.PatronymicName, new { @class = "col-md-2 control-label" })
- @Html.TextBoxFor(m => m.PatronymicName, new { @class = "form-control", value = Model.PatronymicName })
- </div>
- </div>
- <div class="form-group">
- <div class="col-xs-4">
- @Html.LabelFor(m => m.BirthDate, new { @class = "col-md-2 control-label" })
- @Html.TextBoxFor(m => m.BirthDate, new { @class = "form-control", value = Model.BirthDate })
- </div>
- </div>
- <div class="form-group">
- <div class="col-xs-4">
- @Html.LabelFor(m => m.TelephoneNumber, new { @class = "col-md-2 control-label" })
- @Html.TextBoxFor(m => m.TelephoneNumber, new { @class = "form-control", value = Model.TelephoneNumber })
- </div>
- </div>
- <div class="form-group">
- <div class="col-xs-4">
- <br />
- <button class="btn btn-primary btn-block" type="submit"><i class="fa fa-save"></i> Применить</button>
- <button class="btn btn-default btn-block" type="reset"><i class="fa fa-repeat"></i> Сбросить</button>
- </div>
- </div>
- </div>
- }
- public async Task<ActionResult> EditInfo()
- {
- var user = await UserManager.FindByIdAsync(User.Identity.GetUserId());
- if (user == null)
- return HttpNotFound();
- var model = new EditInfoViewModel
- {
- SecondName = user.SecondName,
- FirstName = user.FirstName,
- PatronymicName = user.PatronymicName,
- BirthDate = user.BirthDate,
- TelephoneNumber = user.TelephoneNumber
- };
- return PartialView("_EditInfo", model);
- }
- [HttpPost]
- [ValidateAntiForgeryToken]
- public async Task<ActionResult> EditInfo([Bind(Include = "SecondName,FirstName,PatronymicName,BirthDate,TelephoneNumber")] EditInfoViewModel model)
- {
- var user = await UserManager.FindByEmailAsync(User.Identity.Name);
- if (!ModelState.IsValid)
- return PartialView("_EditInfo", model);
- if (user != null)
- {
- user.SecondName = model.SecondName;
- user.FirstName = model.FirstName;
- user.PatronymicName = model.PatronymicName;
- user.BirthDate = model.BirthDate;
- user.TelephoneNumber = model.TelephoneNumber;
- var result = await UserManager.UpdateAsync(user);
- if (result.Succeeded)
- return RedirectToAction("Index");
- ModelState.AddModelError("", "Что-то пошло не так");
- }
- else
- ModelState.AddModelError("", "Пользователь не найден");
- return PartialView("_EditInfo", model);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement