ResetPasswordController.cs 2.13 KB
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using AIAHTML5.API.Constants;
using log4net;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using AIAHTML5.API.Models;
using AIAHTML5.API.Utility;

namespace AIAHTML5.API.Controllers
{
    public class ResetPasswordController : ApiController
    {
        // GET api/<controller>
        public IEnumerable<string> Get()
        {
            return new string[] { "value1", "value2" };
        }

        // GET api/<controller>/5
        public string Get(int id)
        {
            return "value";
        }

        // POST api/<controller>
        //public void Post([FromBody]string value)
        //{
        //}
        public HttpResponseMessage Post([FromBody]JObject userInfo)
        {
            ILog logger = log4net.LogManager.GetLogger((System.Reflection.MethodBase.GetCurrentMethod().DeclaringType));
            logger.Debug("inside POST");
            User userData = AIAHTML5.API.Models.Users.GetUserByEmail(userInfo);
            HttpResponseMessage response = null;
            if (Convert.ToString(userData) != AIAConstants.USER_NOT_FOUND && Convert.ToString(userData) != AIAConstants.ERROR_IN_FECTHING_DETAILS)
            {
                int result = 0;
                if (!String.IsNullOrEmpty(userInfo["newPassword"].ToString()))
                {
                    result = AIAHTML5.API.Models.Users.UpdatePassword(userInfo);
                    if (result > 0)
                        response = new HttpResponseMessage { StatusCode = HttpStatusCode.OK, Content = new StringContent(AIAConstants.PASSWORD_UPDATE_SUCCESS) };
                    else
                        response = new HttpResponseMessage { StatusCode = HttpStatusCode.InternalServerError, Content = new StringContent(AIAConstants.PASSWORD_UPDATE_FAILED) };
                }
            }

            return response;
        }

        // PUT api/<controller>/5
        public void Put(int id, [FromBody]string value)
        {
        }

        // DELETE api/<controller>/5
        public void Delete(int id)
        {
        }
    }
}