/// <summary> /// ValidRequestFromServerIP IS CHECKING IF ONLY SERVER OF CLIENT MADE THE REQUEST /// </summary> /// <param name="action"></param> /// <param name="UserRequest"></param> /// <param name="ip"></param> /// <param name="ua"></param> public void Init_Request_Data(enumAction action, object UserRequest, string ip, string ua, Guid ProjectToken) { AppManager.Update(); Action = action; SerializedRequest = Newtonsoft.Json.JsonConvert.SerializeObject(UserRequest); Platform = enumPlatformType.Web; IP = ip; UA = string.IsNullOrEmpty(ua) ? "NULL" : ua; if (UA.ToLower().Contains("iphone")) { Platform = enumPlatformType.iPhone; } else if (UA.ToLower().Contains("android")) { Platform = enumPlatformType.Android; } else if (UA.ToLower().Contains("ipad")) { Platform = enumPlatformType.IPad; } HttpContextBase context = (HttpContextBase)Request.Properties["MS_HttpContext"]; if (context.Request.ServerVariables["HTTP_VIA"] != null) { ServerIP = context.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString(); } else { ServerIP = context.Request.ServerVariables["REMOTE_ADDR"].ToString(); } if (AppManager.RestrictServerIP && !Domains.Get_AllowedDomains().Contains(ServerIP)) { ValidRequestFromServerIP = false; } ProjectType = enumProject.Cat; //if (ProjectToken == AppManager.Dog_ServerToken) //{ // ProjectType = enumProject.Dog; //} //else if (ProjectToken == AppManager.Cat_ServerToken) //{ // ProjectType = enumProject.Cat; //} //else //{ // ValidRequestFromServerIP = false; //} }
public static API_Lead_InsertResult API_Lead_Insert(ref SubmitLead req, int PetType, ref Guid APITransaction, string Captch, int AddToIP, ref DateTime CreateDate, ref DateTime CreateDateISR, ref enumPlatformType PlatformType, ref enumProject Project) { API_Lead_InsertResult result = null; try { using (DogAndCatDBDataContext db = new DogAndCatDBDataContext(Connection()) { CommandTimeout = 120 }) { result = db.API_Lead_Insert(APITransaction, req.Email, (int)PlatformType, req.IP, req.UA, CreateDate, CreateDateISR, null, Captch, AppManager.Unique_AllowedPerCycle, AppManager.Unique_MinuteCycle, (int)Project, req.FName, req.LName, req.Email, req.Phone, req.City, req.Street, req.STNumber, req.FlatNumber, req.POBox, req.Regulation, req.AcceptContent, null /* PetType*/, /*req.PetBDay*/ null, AppManager.IP_AllowedPerCycle, AppManager.IP_MinuteCycle, AddToIP).FirstOrDefault(); } return(result); } catch (Exception ex1) { try { using (DogAndCatDBDataContext db = new DogAndCatDBDataContext(Connection()) { CommandTimeout = 120 }) { result = db.API_Lead_Insert(APITransaction, req.Email, (int)PlatformType, req.IP, req.UA, CreateDate, CreateDateISR, null, Captch, AppManager.Unique_AllowedPerCycle, AppManager.Unique_MinuteCycle, (int)Project, req.FName, req.LName, req.Email, req.Phone, req.City, req.Street, req.STNumber, req.FlatNumber, req.POBox, req.Regulation, req.AcceptContent, null /* PetType*/, /*req.PetBDay*/ null, AppManager.IP_AllowedPerCycle, AppManager.IP_MinuteCycle, AddToIP).FirstOrDefault(); } return(result); } catch (Exception ex2) { #region MyRegion LOG UtilsDB.API_Log_Insert(enumAction.Lead, enumLogType._1_DBException, enumLogType._1_DBException, Newtonsoft.Json.JsonConvert.SerializeObject(req), "API_Lead_Insert_Offer", UtilsException.GetMSG(ref ex2), true, null, null, null, ref CreateDate, ref CreateDateISR, ref APITransaction, false, req.Email, Project); #endregion } } return(result); }