Exemple #1
0
        public Result A(in_isAlive req)
        {
            base.Init_Request_Data(enumAction.IsAlive, req, req.IP, req.UA, req.T);

            string   exc     = null;
            IPHolder cacheIP = null;

            #region MyRegion VALIDATION

            if (!ModelState.IsValid || !base.ValidRequestFromServerIP)
            {
                cacheIP = Cache_IP.IP_Get(req.IP, 1, out exc, ref base.APICreateDate_ISR, ref base.ProjectType);

                #region MyRegion LOG

                UtilsDB.API_Log_Insert(this.Action, enumLogType.Response, enumLogType._1_PayloadError,
                                       base.SerializedRequest,
                                       "base.ValidRequestFromServerIP IP:" + base.ServerIP + " IsValid:" + base.ValidRequestFromServerIP.ToString(),
                                       Newtonsoft.Json.JsonConvert.SerializeObject(ModelState.Keys) + " -> cacheip:" + Newtonsoft.Json.JsonConvert.SerializeObject(cacheIP),
                                       true,
                                       base.Refferer,
                                       base.IP,
                                       base.UA,
                                       ref base.APICreateDate,
                                       ref base.APICreateDate_ISR,
                                       ref base.APITransaction, true, req.IP, base.ProjectType);

                #endregion

                return(AppResponse.Any(enumReturnStatus.PayloadError, null));
            }

            #endregion

            Guid ProjectToken = base.APITransaction;
            if (!AppManager.CampaignAlive(base.APICreateDate_ISR, base.ProjectType, ref base.APITransaction, out ProjectToken))
            {
                cacheIP = Cache_IP.IP_Get(req.IP, 1, out exc, ref base.APICreateDate_ISR, ref base.ProjectType);

                #region MyRegion LOG

                UtilsDB.API_Log_Insert(this.Action, enumLogType.End, enumLogType.Response,
                                       base.SerializedRequest,
                                       Newtonsoft.Json.JsonConvert.SerializeObject(cacheIP),
                                       null,
                                       true,
                                       base.Refferer,
                                       base.IP,
                                       base.UA,
                                       ref base.APICreateDate,
                                       ref base.APICreateDate_ISR,
                                       ref base.APITransaction, false, null, base.ProjectType);

                #endregion

                return(AppResponse.Any(enumReturnStatus.Ends, null));
            }

            Dictionary <string, dynamic> result = new Dictionary <string, dynamic>()
            {
                { "P", ProjectToken },
                { "UI", null },
                { "Pets", null }
            };

            List <UIOut> uimsg = new List <Models.UIOut>();

            if (req.ND.GetValueOrDefault(false))
            {
                uimsg        = AppManager.UIResponse_Get(ref base.APICreateDate_ISR, base.ProjectType);
                result["UI"] = uimsg;

                #region MyRegion PET REMOVED - PREDEFINED NOW
                //if (uimsg.Count > 0)
                //{
                //    result["Pets"] = AppManager.PetProjectGet(ref base.APICreateDate_ISR, base.ProjectType);
                //}
                #endregion
            }

            //CHECK IF IP NEED CAPTCHA BUT DO NOT ADD, WE WILL ADD LATER IF NEEDED

            cacheIP = Cache_IP.IP_Get(req.IP, 0, out exc, ref base.APICreateDate_ISR, ref base.ProjectType);
            bool needCaptcha = cacheIP.need_Captcha();
            if (needCaptcha)
            {
                #region MyRegion LOG

                UtilsDB.API_Log_Insert(this.Action, enumLogType.Response, enumLogType.Response,
                                       base.SerializedRequest,
                                       "NEED CAPTCHA",
                                       null,
                                       true,
                                       base.Refferer,
                                       base.IP,
                                       base.UA,
                                       ref base.APICreateDate,
                                       ref base.APICreateDate_ISR,
                                       ref base.APITransaction, false, null, base.ProjectType);

                #endregion

                return(AppResponse.Any(enumReturnStatus.Captcha, result));
            }

            #region MyRegion LOG

            UtilsDB.API_Log_Insert(this.Action, enumLogType.Response, enumLogType.Response,
                                   base.SerializedRequest,
                                   "OK",
                                   null,
                                   true,
                                   base.Refferer,
                                   base.IP,
                                   base.UA,
                                   ref base.APICreateDate,
                                   ref base.APICreateDate_ISR,
                                   ref base.APITransaction, false, null, base.ProjectType);

            #endregion

            return(AppResponse.OK(result));
        }
Exemple #2
0
        public Result input(string key, bool nd, int?p = null) //(string key)
        {
            if (string.IsNullOrEmpty(key) || key != "moblinMNG" + UtilsDateTime.UTC_To_Israel_Time().ToString("yyyy-MM-dd"))
            {
                return(null);
            }

            if (p == null)
            {
                p = 1;
            }

            API_Project_GetResult project = AppManager.GetProject(enumProject.Cat);

            //PetOut pet = AppManager.PetProjectGet(ref base.APICreateDate_ISR, (enumProject)p).FirstOrDefault();

            string tokens = "cats: " + AppManager.Cat_ServerToken.ToString();
            Dictionary <string, dynamic> data = AppManager.get_data_helper(base.APICreateDate_ISR);
            in_isAlive isalive = new in_isAlive()
            {
                IP = "12.12.12.12", ND = true, UA = "some user aget", T = AppManager.Cat_ServerToken
            };

            SubmitLead lead = new SubmitLead()
            {
                AcceptContent = true,
                Regulation    = true,
                CAP           = null,
                City          = "רמת השרון",
                Email         = "*****@*****.**",
                FlatNumber    = "12",
                FName         = "moblin",
                IP            = "12.12.12.12",
                LName         = "test",
                Phone         = "0000000000",
                POBox         = "PO BOXS",
                STNumber      = "1",
                Street        = "STREET",
                UA            = "SOME USER AGENT",
                P             = project.Token,
                T             = AppManager.Cat_ServerToken //,
                                                           //PetType = pet.T
            };



            Registered_SubmitLead rl = new Registered_SubmitLead()
            {
                IP    = "12.12.12.12",
                UA    = "some user aget",
                Email = "email",
                T     = AppManager.Cat_ServerToken,
                P     = project.Token
            };

            return(AppResponse.OK(new Dictionary <string, dynamic>()
            {
                { "static_tokens", str(tokens) },
                { "a_as_is_alive", str(isalive) },
                { "l_as_submit_lead", str(lead) },
                { "rl_as_registered_submit_lead", str(rl) },
                { "data", str(data) }
            }));
        }