private void PayPal(Guid goId) { StringBuilder url = new StringBuilder(); string m_sPaypalBase = System.Configuration.ConfigurationManager.AppSettings["paypalBase"]; string business = System.Configuration.ConfigurationManager.AppSettings["paypalEmail"]; string cancelUrl = System.Configuration.ConfigurationManager.AppSettings["cancelPaymentUrlGala"] + "?id=" + goId.ToString(); string returnUrl = System.Configuration.ConfigurationManager.AppSettings["successPaymentUrlGala"]; string notifyUrl = System.Configuration.ConfigurationManager.AppSettings["notifyUrlGala"]; url.Append(m_sPaypalBase); url.AppendFormat("&business={0}", HttpUtility.UrlEncode(business)); url.AppendFormat("&item_name={0}", HttpUtility.UrlEncode("Payment for Gala Order")); // for: " + serials)); url.AppendFormat("&item_number={0}", HttpUtility.UrlEncode(goId.ToString().Substring(0, 8).ToUpper())); // suppose to serial num, but there is possiblity of multiple entries per order???? decimal amount = go.Amount; amount += go.Fee; // Add fees for PP payment amount += go.FeeShipping; amount += go.Tax; url.AppendFormat("&amount={0}", HttpUtility.UrlEncode(amount.ToString("0.00"))); // //For testing of $0.01 //url.AppendFormat("&amount={0}", HttpUtility.UrlEncode("0.01")); url.AppendFormat("¤cy_code={0}", HttpUtility.UrlEncode("SGD")); url.AppendFormat("&shipping={0}", HttpUtility.UrlEncode("0")); url.AppendFormat("&no_shipping={0}", HttpUtility.UrlEncode("0")); url.AppendFormat("&invoice={0}", ""); string custom = goId.ToString(); url.AppendFormat("&custom={0}", HttpUtility.UrlEncode(custom)); url.AppendFormat("&cancel_return={0}", HttpUtility.UrlEncode(cancelUrl)); url.AppendFormat("¬ify_url={0}", HttpUtility.UrlEncode(notifyUrl)); url.AppendFormat("&return={0}", HttpUtility.UrlEncode(returnUrl + "?custom=" + goId.ToString())); RawLog rawlog = RawLog.NewRawLog(); rawlog.Type = 0; //send rawlog.Data = url.ToString(); rawlog.DateString = DateTime.Now.ToString(); if (rawlog.IsValid) { rawlog.Save(); } Response.Redirect(url.ToString()); }
public NormalizedLog ParseAll(RawLog line, ParsingRules rules) { var parsed = ParseAll(line.Message, rules.TimestampParsingRule, rules.SeverityParsingRule, rules.MessageParsingRule, rules.CustomAttributeRules); parsed.RawLogId = line.Id; parsed.ComponentId = line.ParentComponentId; return(parsed); }
public async Task <RawLog> Edit(RawLog model) { var isUpdated = await _rawLogRepository.Update(model); if (isUpdated) { return(await _rawLogRepository.Read(model.Id)); } throw new Exception($"Failed to update raw log {model.Id}"); }
public void RawLog_With_Null_Value_Serializes() { var serializer = new ContractPrimitiveSerializer(new SmartContractPosRegTest()); var exampleLog = new Example(null, 0); var rawLog = new RawLog(uint160.One, exampleLog); var log = rawLog.ToLog(serializer); Assert.Equal(3, log.Topics.Count); Assert.Equal((string)nameof(Example), (string)Encoding.UTF8.GetString(log.Topics[0])); // Check that null has been serialized correctly Assert.Equal(new byte[0], log.Topics[1]); Assert.Equal(exampleLog.Amount, BitConverter.ToUInt32(log.Topics[2])); }
public async Task <ActionResult <bool> > LogForComponent(int componentId, [FromBody] string[] lines) { try { var parsingRules = await _parsingRulesService.GetComponentsParsingRules(componentId); var logs = new List <NormalizedLog>(); foreach (var line in lines) { var workingLine = line.Trim(); if (string.IsNullOrWhiteSpace(workingLine)) { continue; } try { var raw = new RawLog { Id = 0, ParentComponentId = componentId, Message = workingLine }; var rawSaved = await _rawLogService.Create(raw); var normalized = _parseService.ParseAll(rawSaved, parsingRules); logs.Add(await _normalizedLogService.Create(normalized)); } catch (Exception e) { continue; } } var alerts = await _alertValueService.GenerateAlerts(logs); } catch (Exception debug) { Console.WriteLine(debug); throw; } return(Ok(true)); }
public FiltersViewModel(RawLog logFile) { AndFilters = new ObservableCollection <Filter>(); LogView = new LogViewModel(this, logFile); Groups = new List <int>(); Filters = new ObservableCollection <Filter> { Filter.S1(x => x.Method == @"Hub-OnDisconnected" && x.MethodAttr == "start"), Filter.S1(x => x.Method == @"HubAgent-SubscriptionDisconnected"), Filter.S1(x => x.Method == @"HubAgent-Signal_Subscribed" && x.MethodAttr == "start"), Filter.S1(x => x.Method == @"HubAgent-SubscribeCustomerAsync"), Filter.S1(x => x.Line.Contains(@"Message:Account is in active collaboration")) }; for (var i = 0; i < logFile.GroupsCount; i++) { Groups.Add(i); } DoFilter(); IoC.Get <IWindowManager>().ShowWindow(LogView); }
protected void Page_Load(object sender, EventArgs e) { try { string raw = Request.Form.ToString(); //string raw = "mc_gross=0.01&invoice=&protection_eligibility=Ineligible&address_status=unconfirmed&payer_id=UR49ET2KZXEW8&tax=0.00&address_street=1&payment_date=04%3a14%3a17+Jul+06%2c+2011+PDT&payment_status=Completed&charset=UTF-8&address_zip=123&first_name=Ryan&mc_fee=0.01&address_country_code=SG&address_name=Lin+Ryan¬ify_version=3.1&custom=741d39e4-59a0-45ea-80cb-f8ab4a9ae516&payer_status=unverified&business=support%40iptech.com.sg&address_country=Singapore&address_city=Singapore&quantity=1&verify_sign=ApBHX6qbpxJW-Ll3oP22LSbo0WeuAQORcWZMIuElqANQ07mCXbMxElR6&payer_email=ryan.lin%40iptech.com.sg&txn_id=14778729V9946272U&payment_type=instant&last_name=Lin&address_state=&receiver_email=alan%40u-win.com.sg&payment_fee=&receiver_id=SFV2QPZN3N34S&txn_type=web_accept&item_name=Payment+for+the+Conference(s)+and+Forum(s)+purchase&mc_currency=SGD&item_number=WEBNEW2000014&residence_country=SG&receipt_id=0296-7872-5878-7642&handling_amount=0.00&transaction_subject=FFF8A3B8-3CB6-4C76-ACBE-AFFA5DB0D61EDCode42A0D59A&payment_gross=&shipping=0.00&ipn_track_id=D4iefWBu-inyL2a-VXfFwg"; RawLog rawlog = RawLog.NewRawLog(); rawlog.Type = 1; //response rawlog.Data = raw; rawlog.DateString = DateTime.Now.ToString(); if (rawlog.IsValid) { rawlog.Save(); } TransactionLog Tlog = TransactionLog.NewTransactionLog(); //Tlog.RegistrationID = Guid.NewGuid(); //WRONG string[] args = raw.Split('&'); for (int i = 0; i < args.Length; i++) { string[] arg = args[i].Split('='); switch (arg[0]) { case "mc_gross": Tlog.Gross = float.Parse(HttpUtility.HtmlDecode(arg[1])); break; case "invoice": Tlog.TransactionID = HttpUtility.HtmlDecode(arg[1]); break; case "protection_eligibility": Tlog.Protection = HttpUtility.HtmlDecode(arg[1]); break; case "payer_id": Tlog.PayerID = HttpUtility.HtmlDecode(arg[1]); break; case "tax": Tlog.Tax = float.Parse(HttpUtility.HtmlDecode(arg[1])); break; case "payment_date": Tlog.PaymentDate = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); break; case "payment_status": Tlog.PaymentStatus = HttpUtility.HtmlDecode(arg[1]); break; case "charset": break; case "first_name": Tlog.FirstName = HttpUtility.HtmlDecode(arg[1]); break; case "mc_fee": Tlog.TransactionFee = float.Parse(HttpUtility.HtmlDecode(arg[1])); break; case "ify_version": break; case "payer_status": break; case "business": Tlog.Business = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); break; case "quantity": break; case "payer_email": Tlog.PayerEmail = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); break; case "verify_sign": Tlog.VerifySign = HttpUtility.HtmlDecode(arg[1]); break; case "txn_id": Tlog.PaypalID = HttpUtility.HtmlDecode(arg[1]); break; case "payment_type": Tlog.PaymentType = HttpUtility.HtmlDecode(arg[1]); break; case "last_name": Tlog.LastName = HttpUtility.HtmlDecode(arg[1]); break; case "receiver_email": Tlog.ReceiverEmail = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); break; case "payment_fee": break; case "receiver_id": Tlog.ReceiverID = HttpUtility.HtmlDecode(arg[1]); break; case "txn_type": break; case "item_name": Tlog.ItemName = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); Tlog.Subject = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); break; case "mc_currency": Tlog.Currency = HttpUtility.HtmlDecode(arg[1]); break; case "item_number": break; case "residence_country": Tlog.Country = HttpUtility.HtmlDecode(arg[1]); break; case "handling_amount": Tlog.Handling = float.Parse(HttpUtility.HtmlDecode(arg[1])); break; case "transaction_subject": break; case "payment_gross": break; case "shipping": Tlog.Shipping = float.Parse(HttpUtility.HtmlDecode(arg[1])); break; case "merchant_return_link": break; case "custom": Tlog.RegistrationID = new Guid(HttpUtility.HtmlDecode(arg[1])); break; //string[] custom = HttpUtility.HtmlDecode(arg[1]).Split(new string[] { "DCode" }, StringSplitOptions.None); //for (int y = 0; y < custom.Length; y++) //{ // if (y.Equals(0)) // Tlog.RegistrationID = new Guid(custom[y]); // if (y.Equals(1)) // discountCode = custom[y]; //} //break; } } if (Tlog.PaymentStatus.Contains("Completed")) { try { GeneralFunction.CompleteNewGalaOrderPayPal(Tlog.RegistrationID); } catch (Exception exp) { RawLog log = RawLog.NewRawLog(); log.Type = 3; // Process payment error log.Data = "[" + exp.Message + "]"; log.DateString = DateTime.Now.ToString(); if (log.IsValid) { log.Save(); } } } if (Tlog.PaymentStatus.Contains("Pending")) { // not so good } if (Tlog.PaymentStatus.Contains("Denied")) { // bad! } if (Tlog.IsValid) { Tlog.Save(); } else { RawLog log = RawLog.NewRawLog(); log.Type = 2; //error log.Data = Tlog.BrokenRulesCollection.ToString(); log.DateString = DateTime.Now.ToString(); if (log.IsValid) { log.Save(); } } } catch (Exception ex) { RawLog log = RawLog.NewRawLog(); log.Type = 4; // Overall payment error log.Data = "[" + ex.Message + "]"; log.DateString = DateTime.Now.ToString(); if (log.IsValid) { log.Save(); } } }
protected void Page_Load(object sender, EventArgs e) { try { string raw = Request.Form.ToString(); //string discountCode = string.Empty; //string raw = "mc_gross=0.01&protection_eligibility=Ineligible&address_status=unconfirmed&payer_id=75RQAEDZYCD6A&tax=0.00&address_street=test&payment_date=22%3a18%3a17+Oct+22%2c+2015+PDT&payment_status=Completed&charset=gb2312&address_zip=34&first_name=shanice&mc_fee=0.01&address_country_code=SG&address_name=soh+shanice¬ify_version=3.8&custom=d693b35c-3db3-4e99-8141-c1626e719165&payer_status=unverified&business=af%40ifektiv.com&address_country=Singapore&address_city=&quantity=1&verify_sign=AMIxIb-fq-bQLc45DZlYXp5uIWZJAzSFbammHFZ7khJL2HUKacwcLPGQ&payer_email=shanice%40ifektiv.com&txn_id=15C87088M38848415&payment_type=instant&last_name=soh&address_state=&receiver_email=af%40ifektiv.com&payment_fee=&receiver_id=MU2A9FC6CKEYE&txn_type=web_accept&item_name=Payment+for+APAC+Effie+Entry&mc_currency=SGD&item_number=D693B35C&residence_country=SG&receipt_id=3610-4808-7977-6573&handling_amount=0.00&transaction_subject=d693b35c-3db3-4e99-8141-c1626e719165&payment_gross=&shipping=0.00&ipn_track_id=721492c2a4faa"; RawLog rawlog = RawLog.NewRawLog(); rawlog.Type = 1; //response rawlog.Data = raw; rawlog.DateString = DateTime.Now.ToString(); if (rawlog.IsValid) { rawlog.Save(); } TransactionLog Tlog = TransactionLog.NewTransactionLog(); //Tlog.RegistrationID = Guid.NewGuid(); //WRONG string[] args = raw.Split('&'); for (int i = 0; i < args.Length; i++) { string[] arg = args[i].Split('='); switch (arg[0]) { case "mc_gross": Tlog.Gross = float.Parse(HttpUtility.HtmlDecode(arg[1])); break; case "invoice": Tlog.TransactionID = HttpUtility.HtmlDecode(arg[1]); break; case "protection_eligibility": Tlog.Protection = HttpUtility.HtmlDecode(arg[1]); break; case "payer_id": Tlog.PayerID = HttpUtility.HtmlDecode(arg[1]); break; case "tax": Tlog.Tax = float.Parse(HttpUtility.HtmlDecode(arg[1])); break; case "payment_date": Tlog.PaymentDate = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); break; case "payment_status": Tlog.PaymentStatus = HttpUtility.HtmlDecode(arg[1]); break; case "charset": break; case "first_name": Tlog.FirstName = HttpUtility.HtmlDecode(arg[1]); break; case "mc_fee": Tlog.TransactionFee = float.Parse(HttpUtility.HtmlDecode(arg[1])); break; case "ify_version": break; case "payer_status": break; case "business": Tlog.Business = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); break; case "quantity": break; case "payer_email": Tlog.PayerEmail = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); break; case "verify_sign": Tlog.VerifySign = HttpUtility.HtmlDecode(arg[1]); break; case "txn_id": Tlog.PaypalID = HttpUtility.HtmlDecode(arg[1]); break; case "payment_type": Tlog.PaymentType = HttpUtility.HtmlDecode(arg[1]); break; case "last_name": Tlog.LastName = HttpUtility.HtmlDecode(arg[1]); break; case "receiver_email": Tlog.ReceiverEmail = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); break; case "payment_fee": break; case "receiver_id": Tlog.ReceiverID = HttpUtility.HtmlDecode(arg[1]); break; case "txn_type": break; case "item_name": Tlog.ItemName = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); Tlog.Subject = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); break; case "mc_currency": Tlog.Currency = HttpUtility.HtmlDecode(arg[1]); break; case "item_number": break; case "residence_country": Tlog.Country = HttpUtility.HtmlDecode(arg[1]); break; case "handling_amount": Tlog.Handling = float.Parse(HttpUtility.HtmlDecode(arg[1])); break; case "transaction_subject": break; case "payment_gross": break; case "shipping": Tlog.Shipping = float.Parse(HttpUtility.HtmlDecode(arg[1])); break; case "merchant_return_link": break; case "custom": Tlog.RegistrationID = new Guid(HttpUtility.HtmlDecode(arg[1])); break; //string[] custom = HttpUtility.HtmlDecode(arg[1]).Split(new string[] { "DCode" }, StringSplitOptions.None); //for (int y = 0; y < custom.Length; y++) //{ // if (y.Equals(0)) // Tlog.RegistrationID = new Guid(custom[y]); // if (y.Equals(1)) // discountCode = custom[y]; //} //break; } } if (Tlog.PaymentStatus.Contains("Completed")) { try { GeneralFunction.CompletePaymentAdhocPayPal(Tlog.RegistrationID); } catch (Exception exp) { RawLog log = RawLog.NewRawLog(); log.Type = 3; // Process payment error log.Data = "[" + exp.Message + "]"; log.DateString = DateTime.Now.ToString(); if (log.IsValid) { log.Save(); } } } if (Tlog.PaymentStatus.Contains("Pending")) { // not so good } if (Tlog.PaymentStatus.Contains("Denied")) { // bad! } if (Tlog.IsValid) { Tlog.Save(); } else { RawLog log = RawLog.NewRawLog(); log.Type = 2; //error log.Data = Tlog.BrokenRulesCollection.ToString(); log.DateString = DateTime.Now.ToString(); if (log.IsValid) { log.Save(); } } } catch (Exception ex) { RawLog log = RawLog.NewRawLog(); log.Type = 4; // Overall payment error log.Data = "[" + ex.Message + "]"; log.DateString = DateTime.Now.ToString(); if (log.IsValid) { log.Save(); } } }
private void PayPal(string serials) { StringBuilder url = new StringBuilder(); string m_sPaypalBase = System.Configuration.ConfigurationManager.AppSettings["paypalBase"]; string business = System.Configuration.ConfigurationManager.AppSettings["paypalEmail"]; string cancelUrl = System.Configuration.ConfigurationManager.AppSettings["cancelPaymentUrl"]; string returnUrl = System.Configuration.ConfigurationManager.AppSettings["successPaymentUrl"]; string notifyUrl = System.Configuration.ConfigurationManager.AppSettings["notifyUrl"]; url.Append(m_sPaypalBase); url.AppendFormat("&business={0}", HttpUtility.UrlEncode(business)); url.AppendFormat("&item_name={0}", HttpUtility.UrlEncode("Payment for APAC Effie Entry")); // for: " + serials)); url.AppendFormat("&item_number={0}", HttpUtility.UrlEncode(payGroupId.ToString().Substring(0, 8).ToUpper())); // suppose to serial num, but there is possiblity of multiple entries per order???? decimal amount = GeneralFunction.CalculateGroupTotalPriceFromCache(); amount += GeneralFunction.CalculateCreditFees(amount); // Add fees for PP payment // 0.01; if (ddlCountry.SelectedValue.ToLower() == "singapore") { amount += GeneralFunction.CalculateTax(amount); } bool IsTestPay = System.Configuration.ConfigurationManager.AppSettings["IsTestPay"].ToString() == "1"; if (IsTestPay) { amount = 0.01m; } url.AppendFormat("&amount={0}", HttpUtility.UrlEncode(amount.ToString("0.00"))); //For testing of $0.01 //url.AppendFormat("&amount={0}", HttpUtility.UrlEncode("0.01")); url.AppendFormat("¤cy_code={0}", HttpUtility.UrlEncode("SGD")); url.AppendFormat("&shipping={0}", HttpUtility.UrlEncode("0")); url.AppendFormat("&no_shipping={0}", HttpUtility.UrlEncode("0")); url.AppendFormat("&invoice={0}", ""); string custom = payGroupId.ToString(); url.AppendFormat("&custom={0}", HttpUtility.UrlEncode(custom)); url.AppendFormat("&cancel_return={0}", HttpUtility.UrlEncode(cancelUrl)); url.AppendFormat("¬ify_url={0}", HttpUtility.UrlEncode(notifyUrl)); url.AppendFormat("&return={0}", HttpUtility.UrlEncode(returnUrl + "?custom=" + payGroupId.ToString())); RawLog rawlog = RawLog.NewRawLog(); rawlog.Type = 0; //send rawlog.Data = url.ToString(); rawlog.DateString = DateTime.Now.ToString(); if (rawlog.IsValid) { rawlog.Save(); } //GeneralFunction.CompleteNewEntrySubmissionPayPal(payGroupId); Response.Redirect(url.ToString()); }
public async Task <RawLog> Create(RawLog model) { var createdId = await _rawLogRepository.Create(model); return(await _rawLogRepository.Read(createdId)); }
public LogViewModel(FiltersViewModel filtersView, RawLog logFile) { FiltersView = filtersView; _logFile = logFile; }
protected void Page_Load(object sender, EventArgs e) { try { string raw = Request.Form.ToString(); //string discountCode = string.Empty; //string raw = "mc_gross=1144.00&protection_eligibility=Ineligible&address_status=confirmed&payer_id=CZ47M7SFTQ2XG&address_street=1+Emlyn+Road&payment_date=01%3a37%3a09+Dec+14%2c+2016+PST&payment_status=Pending&charset=gb2312&address_zip=W12+9TF&first_name=Will&mc_fee=39.40&address_country_code=GB&address_name=Will+Philipps¬ify_version=3.8&custom=fd901804-56e8-4573-b6d9-2e097d0c7eac&payer_status=verified&business=af%40ifektiv.com&address_country=United+Kingdom&address_city=London&quantity=1&verify_sign=AAUUy98LqRzbTaozCbnuIMikh2AmApNWvYUyUdNS4.-GHJBT0K3t5Ya0&payer_email=willphilipps%40btinternet.com&txn_id=83J71625FR2201601&payment_type=instant&last_name=Philipps&address_state=London&receiver_email=af%40ifektiv.com&payment_fee=&receiver_id=MU2A9FC6CKEYE&pending_reason=paymentreview&txn_type=web_accept&item_name=Payment+for+APAC+Effie+Entry&mc_currency=SGD&item_number=FD901804&residence_country=GB&transaction_subject=&payment_gross=&shipping=0.00&ipn_track_id=3869ea83a1068"; RawLog rawlog = RawLog.NewRawLog(); rawlog.Type = 1; //response rawlog.Data = raw; rawlog.DateString = DateTime.Now.ToString(); if (rawlog.IsValid) { rawlog.Save(); } TransactionLog Tlog = TransactionLog.NewTransactionLog(); //Tlog.RegistrationID = Guid.NewGuid(); //WRONG string[] args = raw.Split('&'); for (int i = 0; i < args.Length; i++) { string[] arg = args[i].Split('='); switch (arg[0]) { case "mc_gross": Tlog.Gross = float.Parse(HttpUtility.HtmlDecode(arg[1])); break; case "invoice": Tlog.TransactionID = HttpUtility.HtmlDecode(arg[1]); break; case "protection_eligibility": Tlog.Protection = HttpUtility.HtmlDecode(arg[1]); break; case "payer_id": Tlog.PayerID = HttpUtility.HtmlDecode(arg[1]); break; case "tax": Tlog.Tax = float.Parse(HttpUtility.HtmlDecode(arg[1])); break; case "payment_date": Tlog.PaymentDate = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); break; case "payment_status": Tlog.PaymentStatus = HttpUtility.HtmlDecode(arg[1]); break; case "charset": break; case "first_name": Tlog.FirstName = HttpUtility.HtmlDecode(arg[1]); break; case "mc_fee": Tlog.TransactionFee = float.Parse(HttpUtility.HtmlDecode(arg[1])); break; case "ify_version": break; case "payer_status": break; case "business": Tlog.Business = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); break; case "quantity": break; case "payer_email": Tlog.PayerEmail = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); break; case "verify_sign": Tlog.VerifySign = HttpUtility.HtmlDecode(arg[1]); break; case "txn_id": Tlog.PaypalID = HttpUtility.HtmlDecode(arg[1]); break; case "payment_type": Tlog.PaymentType = HttpUtility.HtmlDecode(arg[1]); break; case "last_name": Tlog.LastName = HttpUtility.HtmlDecode(arg[1]); break; case "receiver_email": Tlog.ReceiverEmail = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); break; case "payment_fee": break; case "receiver_id": Tlog.ReceiverID = HttpUtility.HtmlDecode(arg[1]); break; case "txn_type": break; case "item_name": Tlog.ItemName = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); Tlog.Subject = Server.UrlDecode(HttpUtility.HtmlDecode(arg[1])); break; case "mc_currency": Tlog.Currency = HttpUtility.HtmlDecode(arg[1]); break; case "item_number": break; case "residence_country": Tlog.Country = HttpUtility.HtmlDecode(arg[1]); break; case "handling_amount": Tlog.Handling = float.Parse(HttpUtility.HtmlDecode(arg[1])); break; case "transaction_subject": break; case "payment_gross": break; case "shipping": Tlog.Shipping = float.Parse(HttpUtility.HtmlDecode(arg[1])); break; case "merchant_return_link": break; case "custom": Tlog.RegistrationID = new Guid(HttpUtility.HtmlDecode(arg[1])); break; //string[] custom = HttpUtility.HtmlDecode(arg[1]).Split(new string[] { "DCode" }, StringSplitOptions.None); //for (int y = 0; y < custom.Length; y++) //{ // if (y.Equals(0)) // Tlog.RegistrationID = new Guid(custom[y]); // if (y.Equals(1)) // discountCode = custom[y]; //} //break; } } if (Tlog.PaymentStatus.Contains("Completed")) { try { GeneralFunction.CompleteNewEntrySubmissionPayPal(Tlog.RegistrationID); } catch (Exception exp) { RawLog log = RawLog.NewRawLog(); log.Type = 3; // Process payment error log.Data = "[" + exp.Message + "]"; log.DateString = DateTime.Now.ToString(); if (log.IsValid) { log.Save(); } } } if (Tlog.PaymentStatus.Contains("Pending")) { // not so good } if (Tlog.PaymentStatus.Contains("Denied")) { // bad! } if (Tlog.IsValid) { Tlog.Save(); } else { RawLog log = RawLog.NewRawLog(); log.Type = 2; //error log.Data = Tlog.BrokenRulesCollection.ToString(); log.DateString = DateTime.Now.ToString(); if (log.IsValid) { log.Save(); } } } catch (Exception ex) { RawLog log = RawLog.NewRawLog(); log.Type = 4; // Overall payment error log.Data = "[" + ex.Message + "]"; log.DateString = DateTime.Now.ToString(); if (log.IsValid) { log.Save(); } } }
protected void Page_Load(object sender, EventArgs e) { payGroupIdString = Request.QueryString["pgId"]; if (payGroupIdString != null && !String.IsNullOrEmpty(payGroupIdString)) { payGroupId = GeneralFunction.GetValueGuid(payGroupIdString, true); } else { return; } StringBuilder url = new StringBuilder(); string m_sPaypalBase = System.Configuration.ConfigurationManager.AppSettings["paypalBase"]; string business = System.Configuration.ConfigurationManager.AppSettings["paypalEmail"]; string cancelUrl = System.Configuration.ConfigurationManager.AppSettings["cancelPaymentUrlAdhoc"]; string returnUrl = System.Configuration.ConfigurationManager.AppSettings["successPaymentUrlAdhoc"]; string notifyUrl = System.Configuration.ConfigurationManager.AppSettings["notifyUrlAdhoc"]; url.Append(m_sPaypalBase); url.AppendFormat("&business={0}", HttpUtility.UrlEncode(business)); url.AppendFormat("&item_name={0}", HttpUtility.UrlEncode("Payment for APAC Effie " + GeneralFunction.EffieEventYear())); // for: " + serials)); url.AppendFormat("&item_number={0}", HttpUtility.UrlEncode(payGroupId.ToString().Substring(0, 8).ToUpper())); // suppose to serial num, but there is possiblity of multiple entries per order???? //decimal amount = GeneralFunction.CalculateGroupTotalPriceFromCache(); //amount += GeneralFunction.CalculateCreditFees(amount); // Add fees for PP payment decimal amount = GeneralFunction.TotalAdhocGrandAmount(payGroupId); bool IsTestPay = System.Configuration.ConfigurationManager.AppSettings["IsTestPay"].ToString() == "1"; if (IsTestPay) { amount = 0.01m; } url.AppendFormat("&amount={0}", HttpUtility.UrlEncode(amount.ToString("0.00"))); // For testing of $0.01 //url.AppendFormat("&amount={0}", HttpUtility.UrlEncode("0.01")); url.AppendFormat("¤cy_code={0}", HttpUtility.UrlEncode("SGD")); url.AppendFormat("&shipping={0}", HttpUtility.UrlEncode("0")); url.AppendFormat("&no_shipping={0}", HttpUtility.UrlEncode("0")); url.AppendFormat("&invoice={0}", ""); string custom = payGroupId.ToString(); url.AppendFormat("&custom={0}", HttpUtility.UrlEncode(custom)); url.AppendFormat("&cancel_return={0}", HttpUtility.UrlEncode(cancelUrl)); url.AppendFormat("¬ify_url={0}", HttpUtility.UrlEncode(notifyUrl)); url.AppendFormat("&return={0}", HttpUtility.UrlEncode(returnUrl + "?custom=" + payGroupId.ToString())); RawLog rawlog = RawLog.NewRawLog(); rawlog.Type = 0; //send rawlog.Data = url.ToString(); rawlog.DateString = DateTime.Now.ToString(); if (rawlog.IsValid) { rawlog.Save(); } Response.Redirect(url.ToString()); }