ForgotUserController.cs
5.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
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;
using System.Collections;
using System.Data.SqlClient;
namespace AIAHTML5.API.Controllers
{
public class ForgotUserController : ApiController
{
// GET api/<controller>
public IEnumerable<string> Get()
{
return new string[] { "value1", "value2" };
}
// GET api/<controller>/5
public string Get(int id)
{
return "value";
}
public HttpResponseMessage Post([FromBody]JObject userInfo)
{
ILog logger = log4net.LogManager.GetLogger((System.Reflection.MethodBase.GetCurrentMethod().DeclaringType));
logger.Debug("inside POST in ForgotUserController for emailId = " + userInfo["emailId"]);
try
{
dynamic userData = AIAHTML5.API.Models.Users.GetUserByEmail(userInfo);
if (Convert.ToString(userData) != AIAConstants.USER_NOT_FOUND)
{
//logger.Debug("inside if in ForgotUserController userData.loginId= " + userData.LoginId);
bool isMailSent = false;
logger.Debug("1. inside if in ForgotUserController userDetails= " + userData.ToString());
if (Convert.ToBoolean(userInfo["isMailForForgotPassword"]))
{
if (Convert.ToBoolean(userInfo["unblockUser"]))
{
logger.Debug("2. unblockUser= " + Convert.ToBoolean(userInfo["unblockUser"]));
isMailSent = AIAHTML5.API.Models.UserUtility.SendEmail(userData, Convert.ToBoolean(userInfo["isMailForForgotPassword"]), Convert.ToBoolean(userInfo["unblockUser"]));
}
else
{
logger.Debug("2. isMailForForgotPassword= " + Convert.ToBoolean(userInfo["isMailForForgotPassword"]));
isMailSent = AIAHTML5.API.Models.UserUtility.SendEmail(userData, Convert.ToBoolean(userInfo["isMailForForgotPassword"]));
}
}
else
{
logger.Debug("3. isMailForForgotPassword= " + Convert.ToBoolean(userInfo["isMailForForgotPassword"]));
isMailSent = AIAHTML5.API.Models.UserUtility.SendEmail(userData, Convert.ToBoolean(userInfo["isMailForForgotPassword"]));
}
logger.Debug("isMailSent= " + isMailSent);
if (isMailSent)
return new HttpResponseMessage { StatusCode = HttpStatusCode.OK, Content = new StringContent(AIAConstants.MAIL_SENT) };
else
return new HttpResponseMessage { StatusCode = HttpStatusCode.OK, Content = new StringContent(AIAConstants.MAIL_NOT_SENT) };
}
else
{
logger.Debug("inside else in ForgotUserController userData= " + userData);
return new HttpResponseMessage { StatusCode = HttpStatusCode.OK, Content = new StringContent(AIAConstants.USER_NOT_FOUND) };
}
}
catch (SqlException e)
{
logger.Fatal("SqlException occured for emailId =" + userInfo["emailId"].ToString() + "Exception= " + e.Message + ", STACKTRACE: " + e.StackTrace);
ArrayList supportMailList = UserUtility.GetSupportMailList();
string mailSubject = AIAConstants.SQL_CONNECTION_ERROR;
string mailBody = "MESSAGE: " + e.Message + ", STACKTRACE: " + e.StackTrace;
UserUtility.SendEmail(userInfo, supportMailList, "", mailSubject, mailBody);
return new HttpResponseMessage { StatusCode = HttpStatusCode.InternalServerError, Content = new StringContent(AIAConstants.SQL_CONNECTION_ERROR) };
}
catch (Exception e)
{
logger.Fatal("Exception occured for emailId =" + userInfo["emailId"].ToString()+ "Exception= " + e.Message + ", STACKTRACE: " + e.StackTrace);
ArrayList supportMailList = UserUtility.GetSupportMailList();
string mailSubject = AIAConstants.EXCEPTION_IN_AIAHTML5_MAIL_SUBJECT;
string mailBody = "MESSAGE: " + e.Message + ", STACKTRACE: " + e.StackTrace;
UserUtility.SendEmail(userInfo, supportMailList, "", mailSubject, mailBody);
return new HttpResponseMessage { StatusCode = HttpStatusCode.InternalServerError, Content = new StringContent(AIAConstants.EXCEPTION_IN_AIAHTML5) };
}
}
// PUT api/<controller>/5
public void Put(int id, [FromBody]string value)
{
}
// DELETE api/<controller>/5
public void Delete(int id)
{
}
}
}