public static string GetMBUrl(MBOrderData objRequest) { string strParam = PrepareMBRequest(objRequest); string strResponse = PostDataOnMB(strParam); if (!strResponse.StartsWith("Error HTML :")) { return(strMoneyBookersURL + "?sid=" + strResponse); } else { //log error Logger.Logger log = new Logger.Logger(); log.Log(strResponse, Logger.LogType.ERROR); return(string.Empty); } }
private static string PrepareMBRequest(MBOrderData objRequest) { StringBuilder sbRequest = new StringBuilder(); if (objRequest.Amount > 0) { sbRequest.Append("&amount=" + objRequest.Amount); } if (!string.IsNullOrEmpty(objRequest.Currency)) { sbRequest.Append("¤cy=" + HTTPPOSTEncode(objRequest.Currency)); } if (!string.IsNullOrEmpty(objRequest.Description)) { sbRequest.Append("&detail1_description=" + HTTPPOSTEncode(objRequest.Description)); } if (!string.IsNullOrEmpty(objRequest.DetailText)) { sbRequest.Append("&detail1_text=" + HTTPPOSTEncode(objRequest.DetailText)); } sbRequest.Append("&prepare_only=" + HTTPPOSTEncode(strMoneyBookersURL)); if (!string.IsNullOrEmpty(objRequest.PayToEmail)) { sbRequest.Append("&pay_to_email=" + HTTPPOSTEncode(objRequest.PayToEmail)); } if (!string.IsNullOrEmpty(objRequest.ReturnURL)) { sbRequest.Append("&return_url=" + HTTPPOSTEncode(objRequest.ReturnURL)); } if (!string.IsNullOrEmpty(objRequest.ReturnURLText)) { sbRequest.Append("&return_url_text=" + objRequest.ReturnURLText); } else { sbRequest.Append("&return_url_text=" + HTTPPOSTEncode("Return to " + HttpContext.Current.Request.Url.DnsSafeHost)); } sbRequest.Append("&return_url_target=" + (int)TargetType._Self); if (!string.IsNullOrEmpty(objRequest.CancelURL)) { sbRequest.Append("&cancel_url=" + HTTPPOSTEncode(objRequest.CancelURL)); } sbRequest.Append("&cancel_url_target=" + (int)TargetType._Self); if (!string.IsNullOrEmpty(objRequest.StatusURL)) { sbRequest.Append("&status_url=" + HTTPPOSTEncode(objRequest.StatusURL)); } if (!string.IsNullOrEmpty(objRequest.NameInSatetment)) { sbRequest.Append("&dynamic_descriptor=" + HTTPPOSTEncode(objRequest.NameInSatetment)); } sbRequest.Append("&language=" + objRequest.Language.ToString()); if (!string.IsNullOrEmpty(objRequest.ConfirmationNote)) { sbRequest.Append("&confirmation_note=" + HTTPPOSTEncode(objRequest.ConfirmationNote)); } if (!string.IsNullOrEmpty(objRequest.LogoURL)) { sbRequest.Append("&logo_url=" + HTTPPOSTEncode(objRequest.LogoURL)); } if (!string.IsNullOrEmpty(objRequest.PayFromEmail)) { sbRequest.Append("&pay_from_email=" + HTTPPOSTEncode(objRequest.PayFromEmail)); } //Customer details if (!string.IsNullOrEmpty(objRequest.Title)) { sbRequest.Append("&title=" + HTTPPOSTEncode(objRequest.Title)); } if (!string.IsNullOrEmpty(objRequest.FirstName)) { sbRequest.Append("&firstname=" + HTTPPOSTEncode(objRequest.FirstName)); } if (!string.IsNullOrEmpty(objRequest.LastName)) { sbRequest.Append("&lastname=" + HTTPPOSTEncode(objRequest.LastName)); } if (!string.IsNullOrEmpty(objRequest.Address)) { sbRequest.Append("&address=" + HTTPPOSTEncode(objRequest.Address)); } if (!string.IsNullOrEmpty(objRequest.Address2)) { sbRequest.Append("&address2=" + HTTPPOSTEncode(objRequest.Address2)); } if (!string.IsNullOrEmpty(objRequest.PhoneNumber)) { sbRequest.Append("&phone_number=" + HTTPPOSTEncode(objRequest.PhoneNumber)); } if (!string.IsNullOrEmpty(objRequest.PostalCode)) { sbRequest.Append("&postal_code=" + HTTPPOSTEncode(objRequest.PostalCode)); } if (!string.IsNullOrEmpty(objRequest.City)) { sbRequest.Append("&city=" + HTTPPOSTEncode(objRequest.City)); } if (!string.IsNullOrEmpty(objRequest.State)) { sbRequest.Append("&state=" + HTTPPOSTEncode(objRequest.State)); } if (!string.IsNullOrEmpty(objRequest.Country)) { sbRequest.Append("&country=" + HTTPPOSTEncode(objRequest.Country)); } return(sbRequest.ToString()); }
public static void RedirectToMB(MBOrderData objRequest) { HttpContext.Current.Response.RedirectPermanent(GetMBUrl(objRequest)); }