public ActionResult buyTransPage(string id) { try { if (id == null) { id = Session["transID"].ToString(); } Session["transID"] = id; AzureConnection db = new AzureConnection(); trans_history trans_data = db.trans_history.Where(a => a.id.ToString() == id).FirstOrDefault(); ViewData["btc_amount"] = trans_data.btc; ViewData["sellerName"] = trans_data.user_seller.username; ViewData["cash"] = trans_data.cash; ViewData["walletID"] = trans_data.buyerWallet == null ? "" : trans_data.buyerWallet; ViewData["transID"] = trans_data.id; if (trans_data.buyTime == null) { trans_data.buyTime = DateTime.UtcNow; db.SaveChanges(); ViewData["buyTime"] = 0; return(View()); } else { TimeSpan diff = (TimeSpan)(DateTime.UtcNow - trans_data.buyTime); ViewData["buyTime"] = diff.TotalSeconds; return(View()); } } catch { return(RedirectToAction("", "Home")); } }
public ActionResult bankDetail() { string transID = Session["transID"].ToString(); AzureConnection db = new AzureConnection(); trans_history trans_data = db.trans_history.Where(a => a.id.ToString() == transID).FirstOrDefault(); ViewData["REFERENCE"] = trans_data.REFERENCE; return(View()); }
public JsonResult getBalance() { string cur_balance; string transID = Session["transID"].ToString(); AzureConnection db = new AzureConnection(); trans_history trans_data = db.trans_history.Where(a => a.id.ToString() == transID).FirstOrDefault(); cur_balance = "" + trans_data.holdAmount; return(Json(cur_balance, JsonRequestBehavior.AllowGet)); }
public JsonResult isBTCHolded() { string transID = Session["transID"].ToString(); AzureConnection db = new AzureConnection(); trans_history trans_data = db.trans_history.Where(a => a.id.ToString() == transID).FirstOrDefault(); if (trans_data.holdBTC == true) { return(Json("success", JsonRequestBehavior.AllowGet)); } return(Json("failed", JsonRequestBehavior.AllowGet)); }
public ActionResult uploadRecipt(HttpPostedFileBase file) { try { string transID = Session["transID"].ToString(); if (file == null) { return(View("uploadReciptPage")); } AzureConnection db = new AzureConnection(); trans_history trans_data = db.trans_history.Where(a => a.id.ToString() == transID).FirstOrDefault(); if (Session["uploadType"].ToString() == "recieve") { trans_data.recieveCash = true; trans_data.sentBTC = true; trans_data.status = "complete"; db.SaveChanges(); ApiHelper.BlockApi.withDrawByAddress(trans_data.holdWallet, trans_data.buyerWallet, (trans_data.btc - 0.00011795).ToString()); string body; body = "Dear " + trans_data.user_buyer.username + "<br/><br/>" + " We have just sent to your wallet, " + (trans_data.btc - 0.00011795) + " BTC (0.00011795 BTC is transaction fee). Transaction completed with user " + trans_data.user_seller.username + "<br/>Thank you"; Variables.sendEmail(trans_data.user_buyer.email, body); string path = System.IO.Path.Combine(Server.MapPath("~/Uploads/"), "receive" + transID + ".png"); file.SaveAs(path); return(RedirectToAction("", "Home")); } else if (Session["uploadType"].ToString() == "sent") { trans_data.sentCash = true; db.SaveChanges(); string body; string link = Request.Url.AbsoluteUri.Replace(Request.Url.PathAndQuery, "/Contract/recievedWire?transID=" + trans_data.id); body = "Dear " + trans_data.user_seller.username + "<br/><br/>" + "User " + trans_data.user_buyer.username + " has just notified us that the wire of $" + trans_data.cash + " has been sent to your bank account ending in " + trans_data.IBAN.Substring(trans_data.IBAN.Length - 4) + ". Please look your bank account as it will reach very soon. You need to confirm receipt by pressing the button below, after receiving the funds." + "<br/><br/><a href='" + link + "' class='btn btn-primary'>" + "I have receipt the wire.Thank you</a>";; Variables.sendEmail(trans_data.user_seller.email, body); string path = System.IO.Path.Combine(Server.MapPath("~/Uploads/"), "sent" + transID + ".png"); file.SaveAs(path); return(RedirectToAction("", "Home")); } else { return(RedirectToAction("", "Home")); } } catch { return(RedirectToAction("", "Home")); } }
public JsonResult saveWalletID(string walletID) { var isValid = BlockApi.validateAddress(walletID); if (isValid == false) { return(Json("failed", JsonRequestBehavior.AllowGet)); } string transID = Session["transID"].ToString(); AzureConnection db = new AzureConnection(); trans_history trans_data = db.trans_history.Where(a => a.id.ToString() == transID).FirstOrDefault(); trans_data.buyerWallet = walletID; Session["buyerWallet"] = walletID; db.SaveChanges(); return(Json("success", JsonRequestBehavior.AllowGet)); }
public ActionResult proceed(int userID, int transID) { try { AzureConnection db = new AzureConnection(); trans_history data = db.trans_history.Where(a => a.id == transID).FirstOrDefault(); Session["transID"] = transID; Session["btc_amount"] = data.btc; Session["cash"] = data.cash; Session["buyerEmail"] = data.user_buyer.email; Session["buyerName"] = data.user_buyer.username; Session["sellerEmail"] = data.user_seller.email; Session["sellerName"] = data.user_seller.username; Session["holdWallet"] = data.holdWallet; Session["user_type"] = userID == data.buyer ? "old_buyer": "old_seller"; db.SaveChanges(); if (Session["username"] == null) { if (double.Parse(Session["cash"].ToString()) >= 1000 && data.user_seller.kycVerified == false) { Session["isCreater"] = "no"; Session["next_url"] = "/Verify/IdVerify"; } else { Session["next_url"] = userID == data.buyer ? "/Contract/buyTransPage" : "/Contract/bankDetail"; } return(RedirectToAction("Login", "User_Login")); } else { if (double.Parse(Session["cash"].ToString()) >= 1000 && data.user_seller.kycVerified == false) { return(RedirectToAction("IdVerify", "Verify")); } return(userID == data.buyer ? RedirectToAction("buyTransPage") :RedirectToAction("bankDetail")); } } catch { return(RedirectToAction("", "Home")); } }
public ActionResult sentWire(int transID) { try { AzureConnection db = new AzureConnection(); trans_history trans_data = db.trans_history.Where(a => a.id == transID).FirstOrDefault(); if (trans_data.sentCash == true) { return(RedirectToAction("", "Home")); } Session["uploadType"] = "sent"; Session["qrkey"] = trans_data.user_buyer.qrkey; Session["next_url"] = "/Contract/uploadReciptPage"; return(RedirectToAction("googleAuthPage", "Verify")); } catch { return(RedirectToAction("", "Home")); } }
public ActionResult saveBankDetail(string firstname, string lastname, string IBAN, string SWIFT) { try { string transID = Session["transID"].ToString(); AzureConnection db = new AzureConnection(); trans_history trans_data = db.trans_history.Where(a => a.id.ToString() == transID).FirstOrDefault(); trans_data.firstname_seller = firstname; trans_data.lastname_seller = lastname; trans_data.IBAN = IBAN; trans_data.SWIFT = SWIFT; db.SaveChanges(); Session["next_url"] = "/Contract/sellTransPage"; return(RedirectToAction("googleAuthPage", "Verify")); } catch { return(RedirectToAction("", "Home")); } }
public ActionResult sendEmailToOpp() { try { trans_history data = new trans_history(); string email = Session["email"].ToString(); AzureConnection db = new AzureConnection(); user_table user_data = db.user_table.Where(a => a.email == email).FirstOrDefault(); if (Session["user_type"].ToString() == "new_buyer" || Session["user_type"].ToString() == "old_buyer") { data.buyer = user_data.id; email = Session["sellerEmail"].ToString(); user_table seller = db.user_table.Where(a => a.email == email).FirstOrDefault(); Session["sellerName"] = seller.username; data.seller = seller.id; } else { data.seller = user_data.id; email = Session["buyerEmail"].ToString(); user_table buyer = db.user_table.Where(a => a.email == email).FirstOrDefault(); Session["buyerName"] = buyer.username; data.buyer = buyer.id; } data.btc = double.Parse(Session["btc_amount"].ToString(), CultureInfo.InvariantCulture.NumberFormat); data.cash = double.Parse(Session["cash"].ToString(), CultureInfo.InvariantCulture.NumberFormat); data.REFERENCE = Guid.NewGuid().ToString().Replace("-", "").Substring(0, 10).ToUpper(); data.status = "pending"; data.holdBTC = false; data.sentBTC = false; data.sentCash = false; data.recieveCash = false; data.holdAmount = 0; data.holdWallet = BlockApi.getNewAddressWithRandom(); db.trans_history.Add(data); db.SaveChanges(); Session["holdWallet"] = data.holdWallet; Session["transID"] = data.id; var fromEmail = new MailAddress(WebConfigurationManager.AppSettings.Get("siteEmail"), "Lyohai"); MailAddress toEmail; var fromEmailPassword = WebConfigurationManager.AppSettings.Get("EmailPassword"); string subject = "TRUSTBTC to you"; string body; if (Session["user_type"].ToString() == "new_buyer" || Session["user_type"].ToString() == "old_buyer") { string proceed_link = Request.Url.AbsoluteUri.Replace(Request.Url.PathAndQuery, "/Contract/proceed?" + "userID=" + data.seller + "&transID=" + data.id); toEmail = new MailAddress(data.user_seller.email); body = "Dear " + Session["sellerName"] + "<br/><br/>" + "One of our members," + Session["username"].ToString() + " will pay you " + "<b>$" + Session["cash"].ToString() + "</b>, if you agree to pay <b>" + Session["btc_amount"].ToString() + "BTC</b>.We will handle all process and secure a smooth transaction for you, in 3 very easy steps." + "<br/><br/>If you are interested to proceed with this transaction, please click the botton below.<br/><br/> <a href='" + proceed_link + "'>" + "Proceed </a>"; } else { toEmail = new MailAddress(data.user_buyer.email); string proceed_link = Request.Url.AbsoluteUri.Replace(Request.Url.PathAndQuery, "/Contract/proceed?" + "userID=" + data.buyer + "&transID=" + data.id); body = "Dear " + Session["buyerName"] + "<br/><br/>" + "One of our members," + Session["username"].ToString() + " will pay you " + "<b>" + Session["btc_amount"].ToString() + "BTC</b>, if you agree to pay <b>$" + Session["cash"].ToString() + "</b>.We will handle all process and secure a smooth transaction for you, in 3 very easy steps." + "<br/><br/>If you are interested to proceed with this transaction, please click the botton below.<br/><br/> <a href='" + proceed_link + "'>" + "Proceed </a>"; } var smtp = new SmtpClient { Host = "smtp-mail.outlook.com", Port = 587, EnableSsl = true, DeliveryMethod = SmtpDeliveryMethod.Network, UseDefaultCredentials = false, Credentials = new NetworkCredential(fromEmail.Address, fromEmailPassword) }; using (var message = new MailMessage(fromEmail, toEmail) { Subject = subject, Body = body, IsBodyHtml = true }) { smtp.Send(message); } return(RedirectToAction("googleAuthPage", "Verify")); } catch { return(RedirectToAction("Index", "Home")); } }