Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Net;
- using System.Net.Http;
- using System.Web.Http;
- using GisonLibTest.ViewModels;
- using GisonLibTest.Models;
- using System.Web.Security;
- using System.Text;
- using System.Data.Entity;
- namespace GisonLibTest.Controllers.api
- {
- public class ApiTestController : ApiController
- {
- [HttpPut]
- public HttpResponseMessage ChangePassword(ChangePasswordViewModel model)
- {
- using (var db = new Entities())
- {
- var userAsp = Membership.GetUser(model.UserLogin);
- var user = db.Users.Where(x => x.Login == model.UserLogin).FirstOrDefault();
- if (user != null && model.ConfirmPassword.Equals(model.NewPassword))
- {
- byte[] oldPassByte = Encoding.ASCII.GetBytes(model.OldPassword);
- var oldPassHash = Tools.PhotoTools.GetMD5(oldPassByte);
- if (user.Password != oldPassHash)
- return Request.CreateResponse(HttpStatusCode.BadRequest, "Not a valid data");
- var userAspPassword = userAsp.ResetPassword();
- userAsp.ChangePassword(userAspPassword, model.NewPassword);
- byte[] newBytePassword = Encoding.ASCII.GetBytes(model.NewPassword);
- user.Password = Tools.PhotoTools.GetMD5(newBytePassword);
- db.Entry(user).State = EntityState.Modified;
- db.SaveChanges();
- return Request.CreateResponse(HttpStatusCode.OK);
- }
- else
- return Request.CreateResponse(HttpStatusCode.NotFound);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement