public ActionResult facebookJsLogin(string resid, string resemail, string resname) { Dictionary<string, object> dic = new Dictionary<string, object>(); Session["Account"] = resid; //取得用戶ID Session["uname"] = resname; //取得用戶名稱 Session["resAccount"] = "Facebook";//取得用戶來源 Member m = new Member(); MemberData md = new MemberData(); if (Session["Account"] != null) { var memberData = md.Get().ToList().Where(a => a.uAccount == Session["Account"].ToString()).SingleOrDefault(); if (memberData == null) { m.uAccount = Session["Account"].ToString(); m.uName = resname; m.wdate = DateTime.Now; m.udate = DateTime.Now; m.uPassWord = "******"; m.uphone = ""; m.memberID = DateTime.Now.ToString("yyyyMMdd") + (md.Get().Count + 1).ToString().PadLeft(3, '0'); m.isdel = 0; m.sort = 5000; m.FacebookId = resid; m.GoogleId = ""; m.uemail = resemail ?? ""; md.Create(m); dic.Add("Msg", "已成為會員"); } else { if (memberData.uemail == "" || memberData.uemail == null) { m.num = memberData.num; m.uemail = resemail; md.UpdateEmail(m); } dic.Add("Msg", ""); } } dic.Add("success", true); return Json(dic); }
public ActionResult signin(string login_account, string login_password) { Member m = new Member(); MemberData md = new MemberData(); var memberdatacount = md.Get().ToList().Where(a => a.uAccount == login_account && a.uPassWord == PassWordSecurity.Sha384Encode(PassWordSecurity.Sha256Encode(login_password))).Count(); var memberdata = md.Get().ToList().Where(a => a.uAccount == login_account && a.uPassWord == PassWordSecurity.Sha384Encode(PassWordSecurity.Sha256Encode(login_password))).SingleOrDefault(); if (memberdatacount > 0) { TempData["isForgetPwd"] = false; Session["resAccount"] = "natr"; Session["Account"] = memberdata.uAccount; Session["uname"] = memberdata.uName; return RedirectToAction("Index", "Home"); } else { TempData["isForgetPwd"] = true; return RedirectToAction("Index", "login"); } }
public ActionResult ToUpdateMemberData(int num, string password = "", string new_password = "", string tel = "", string name = "", string Email = "") { Dictionary<string, object> dic = new Dictionary<string, object>(); Member m = new Member(); MemberData md = new MemberData(); var datacount = md.Get().ToList().Where(a => a.num == num).Count(); var data = md.Get().ToList().Where(a => a.num == num).FirstOrDefault(); if (datacount > 0) { if (password != "") { if (data.uPassWord != PassWordSecurity.Sha384Encode(PassWordSecurity.Sha256Encode(password))) { TempData["msg"] = "舊密碼錯誤"; } else { m.num = num; m.uPassWord = PassWordSecurity.Sha384Encode(PassWordSecurity.Sha256Encode(new_password)); m.uphone = tel; m.uName = name; m.uemail = Email; m.udate = DateTime.Now; md.Update(m); TempData["msg"] = "更新成功"; } } else { m.num = num; m.uPassWord = data.uPassWord; m.uphone = tel; m.uName = name; if (Email != "") { m.uemail = Email; } else { m.uemail = data.uemail; } m.udate = DateTime.Now; md.Update(m); TempData["msg"] = "更新成功"; } } else { TempData["msg"] = "不正常管道錯誤"; } return RedirectToAction("Index", "Member"); }
public ActionResult SendCheckPwdMail(string uname, string loginAccount, string code) { Dictionary<string, object> dic = new Dictionary<string, object>(); MemberData md = new MemberData(); Member m = new Member(); var data = md.Get().ToList().Where(a => a.uName == uname && a.uemail == loginAccount && (a.FacebookId == "" && a.GoogleId == "")).SingleOrDefault(); if (data != null) { m.num = data.num; var newPwd = RendomNum.GetRandomString(10); m.uPassWord = PassWordSecurity.Sha384Encode(PassWordSecurity.Sha256Encode(newPwd)); md.UpdatePassword(m); dic.Add("success", true); dic.Add("msg", "以寄到您的信箱,請自行前往確認"); SendMailToEveryOne.SendMail(loginAccount, "*****@*****.**", "Funmtb忘記密碼通知", "Funmtb忘記密碼通知", "因個資關係,再麻煩親愛的客戶自行到官網去更改密碼,您的新密碼是:" + newPwd, false); } else { dic.Add("success", false); dic.Add("msg", "發生錯誤"); } return Json(dic); }
public ActionResult register(string name, string account, string password, string tel) { Member m = new Member(); MemberData md = new MemberData(); var count = md.Get().ToList().Count; m.uName = name; m.uAccount = account; m.uPassWord = PassWordSecurity.Sha384Encode(PassWordSecurity.Sha256Encode(password)); m.uphone = tel; m.isdel = 0; m.memberID = DateTime.Now.ToString("yyyyMMdd") + (count + 1).ToString().PadLeft(3, '0'); m.wdate = DateTime.Now; m.udate = DateTime.Now; m.sort = 5000; m.GoogleId = ""; m.FacebookId = ""; m.uemail = account; md.Create(m); Session["resAccount"] = "natr"; Session["Account"] = account; return RedirectToAction("Index", "Member"); }
public void SendEmailToGuest(OrderComplete orderlist, Member memberdata) { StringBuilder sb = new StringBuilder(); sb.Append("<p>" + orderlist.buyers + "您好:</p>"); sb.Append("<p>已經收到您的訂購單,感謝您的訂購!</p>"); sb.Append("<p>感謝您向 FUNN 訂購商品,以下為您的訂購清單,您可以至<strong>「<a href='http://funnmtb.com.tw/Member/Orderlist?mem=2'>訂單查詢</a>」</strong>了解最新訂單處理進度。</p>"); sb.Append("<p><strong><span style='font-size:18px;'>商店資訊:</span></strong></p>"); sb.Append("<table border='0' cellpadding='1' cellspacing='1' width='100%'>"); sb.Append("<tbody>"); sb.Append("<tr>"); sb.Append("<th scope='col' width='20%'>訂單編號</th>"); sb.Append("<th scope='col' style='text-align: left;' width='80%'>" + orderlist.orderId + "</th>"); sb.Append("</tr>"); sb.Append("<tr>"); sb.Append("<th scope='row'>訂購人</th>"); sb.Append("<td>" + orderlist.buyemail + "</td>"); sb.Append("</tr>"); sb.Append("<tr>"); sb.Append("<th scope='row'>聯絡電話</th>"); sb.Append("<td>" + orderlist.buyers_tel + "</td>"); sb.Append("</tr>"); sb.Append("<tr>"); sb.Append("<th scope='row'>取貨人</th>"); sb.Append("<td>" + orderlist.consignee + "</td>"); sb.Append("</tr>"); sb.Append("<tr>"); sb.Append("<th scope='row'>取貨人電話</th>"); sb.Append("<td>" + orderlist.consignee_tel + "</td>"); sb.Append("</tr>"); sb.Append("<tr>"); sb.Append("<th scope='row'>取貨人手機</th>"); sb.Append("<td>" + orderlist.consignee_phone + "<</td>"); sb.Append("</tr>"); sb.Append("<tr>"); sb.Append("<th scope='row'>取貨人地址</th>"); sb.Append("<td>" + (orderlist.city + orderlist.area + orderlist.address) + "</td>"); sb.Append("</tr>"); sb.Append("<tr>"); sb.Append("<th scope='row'>發票格式</th>"); sb.Append("<td>" + orderlist.pay_invoice + "</td>"); sb.Append("</tr>"); sb.Append("<tr>"); sb.Append("<th scope='row'>統一編號</th>"); sb.Append("<td>" + orderlist.number + "</td>"); sb.Append("</tr>"); sb.Append("<tr>"); sb.Append("<th scope='row'>抬頭</th>"); sb.Append("<td>" + orderlist.invoice_title + "</td>"); sb.Append("</tr>"); sb.Append("<tr>"); sb.Append("<th scope='row'>下單時間</th>"); sb.Append("<td>" + orderlist.wdate + "</td>"); sb.Append("</tr>"); sb.Append("<tr>"); sb.Append("<th scope='row'>運送方式</th>"); sb.Append("<td>" + orderlist.transport + "</td>"); sb.Append("</tr>"); sb.Append("<tr>"); sb.Append("<th scope='row'>付款方式</th>"); sb.Append("<td>" + orderlist.pay_mode + "</td>"); sb.Append("</tr>"); sb.Append("<tr>"); sb.Append("<th scope='row'>備註</th>"); sb.Append("<td>" + orderlist.demo + "</td>"); sb.Append("</tr>"); sb.Append("</tbody>"); sb.Append("</table>"); sb.Append("<p><strong><span style='font-size:18px;'>訂購資訊:</span></strong></p>"); sb.Append("<table border='0'cellpadding='1' cellspacing='1' style='width:100%;'>"); sb.Append("<tbody>"); sb.Append("<tr>"); sb.Append("<td style='text-align: center;'>產品名稱</td>"); sb.Append("<td style='text-align: center;'>數量</td>"); sb.Append("<td style='text-align: center;'>小計</td>"); sb.Append("</tr>"); var jsonstr = JsonConvert.DeserializeObject<List<productlistforCart>>(orderlist.productJson); var jsonProSize = ""; var jsonProColor = ""; if (jsonstr != null) { foreach (var j in jsonstr) { var procolor = pcd.Get().ToList().Where(a => a.num == j.pcolor); var prosize = psd.Get().ToList().Where(a => a.num == j.psize); if (prosize != null) { var prosized = prosize.SingleOrDefault(); jsonProSize = prosized.size; } if (procolor != null) { var procolord = procolor.SingleOrDefault(); jsonProColor = procolord.color; } sb.Append("<tr>"); sb.Append("<td style='text-align: center;'>" + j.pname + "-" + jsonProSize + "-" + jsonProColor + "</td>"); sb.Append("<td style='text-align: center;'>" + j.qty + "</td>"); sb.Append("<td style='text-align: center;'>$" + j.price + "</td>"); sb.Append("</tr>"); } } sb.Append("<tr>"); sb.Append("<td colspan='3' style='text-align: center;'>總計:$" + orderlist.Total + "元</td>"); sb.Append("</tr>"); sb.Append("</tbody>"); sb.Append("</table>"); //sb.Append("<p><strong><span style='font-size:18px;'>繳費資訊:</span></strong></p>"); //sb.Append("<table border='0' cellpadding='1' cellspacing='1' style='width:100%;'>"); //sb.Append("<tbody>"); //sb.Append("<tr>"); //sb.Append("<td colspan='2' style='text-align: center;'>繳費資訊</td>"); //sb.Append("</tr>"); //sb.Append("<tr>"); //sb.Append("<td style='text-align: center;'>應付金額</td>"); //sb.Append("<td style='text-align: center;'>$" + orderlist.Total + "元</td>"); //sb.Append("</tr>"); //sb.Append("<tr>"); //sb.Append("<td style='text-align: center;'>付款方式</td>"); //sb.Append("<td style='text-align: center;'>" + orderlist.pay_mode + "</td>"); //sb.Append("</tr>"); //sb.Append("<tr>"); //sb.Append("<td style='text-align: center;'>銀行代碼</td>"); //sb.Append("<td style='text-align: center;'>808</td>"); //sb.Append("</tr>"); //sb.Append("<tr>"); //sb.Append("<td style='text-align: center;'>ATM繳費帳號</td>"); //sb.Append("<td style='text-align: center;'>123456789987654321</td>"); //sb.Append("</tr>"); //sb.Append("<tr>"); //sb.Append("<td style='text-align: center;'>繳費截止時間</td>"); //sb.Append("<td style='text-align: center;'>2016/01/01 23:59:59</td>"); //sb.Append("</tr>"); //sb.Append("</tbody>"); //sb.Append("</table>"); sb.Append("<p><strong><span style='font-size:18px;'>特別資訊:</span></strong></p>"); sb.Append("<p>若您仍有訂單相關問題,請洽FUNN客服中心 星期一至星期五09:00-17:30 中午休息時間12:00-13:00</p>"); sb.Append("<p>Customer service | (04)2271-6160 | <a href='mailto:[email protected]' target='_blank'>[email protected]</a> 或是臉書台灣官網詢問<a href='https://www.facebook.com/funn.tw/' target='_blank'>https://www.facebook.com/funn.tw/</a></p>"); sb.Append("<p><strong>【注意事項】</strong></p>"); sb.Append("<p>虛擬帳號有效期限至您訂購當日算起三天內,逾期失效無法轉入,訂單將自動取消。若超過期限,請線上重新訂購。</p>"); sb.Append("<p><strong>【商品】</strong></p>"); sb.Append("<p>商品將於您付款完成後的3-5個工作天左右送達您指定定址。</p>"); sb.Append("<p><strong>【防詐騙提醒】</strong></p>"); sb.Append("<p>若您接獲任何電話要您依照指示操作ATM,提供剩額、變更付款方式或更改分期設定等,請不要依電話指示操作,建議您直接與本公司客服中心聯繫確認,謝謝您!</p>"); SendMailToEveryOne.SendMail(orderlist.buyemail ?? orderlist.memberAccount, "*****@*****.**", "funnmtb-訂單", "funnmtb-訂單", sb.ToString(), false); SendMailToEveryOne.SendMail("*****@*****.**", orderlist.buyemail ?? orderlist.memberAccount, "funnmtb-訂單", "funnmtb-訂單", sb.ToString(), false); }
public JsonResult member(string MyChecked) { Member n = new Member(); MemberData nd = new MemberData(); var array = MyChecked.Split(','); if (MyChecked != "" && MyChecked != null) { for (var i = 0; i < array.Length; i++) { //var Original = nd.Get().ToList().Where(a => a.num.ToString() == array[i]).SingleOrDefault(); //var DelPath = System.IO.Path.Combine(Server.MapPath("~/upload/News/"), Original.pic1); //System.IO.File.Delete(DelPath); //if (Original.jsonimg != "no_img.jpg") //{ // var jsonstr = JsonConvert.DeserializeObject<List<jsonSer>>(Original.jsonimg); // var DelJsonPath = Server.MapPath("~/upload/photograhy/"); // foreach (var j in jsonstr) // { // var DelJsonPathing = System.IO.Path.Combine(DelJsonPath, j.content); // System.IO.File.Delete(DelJsonPathing); // } //} //n.isdel = 1; //n.udate = DateTime.Now; n.num = Convert.ToInt32(array[i]); nd.Delete(n); } } return Json(""); }
public async Task<ActionResult> ExternalLoginCallback(string returnUrl) { var loginInfo = await AuthenticationManager.GetExternalLoginInfoAsync(); if (loginInfo == null) { return RedirectToAction("Index", "login"); } //若使用者已經有登入資料,請使用此外部登入提供者登入使用者 if (loginInfo != null) { var id = new ClaimsIdentity(loginInfo.ExternalIdentity.Claims, DefaultAuthenticationTypes.ApplicationCookie); Session["Account"] = id.GetUserId(); Session["uname"] = loginInfo.DefaultUserName; //取得用戶名稱 Session["resAccount"] = loginInfo.Login.LoginProvider;//取得用戶來源 //var resourceAccount = loginInfo.Login.LoginProvider; //TODO: 驗證邏輯,註冊會員邏輯 Member m = new Member(); MemberData md = new MemberData(); if (Session["Account"] != null) { var memberData = md.Get().ToList().Where(a => a.uAccount == Session["Account"].ToString()).SingleOrDefault(); if (memberData == null) { m.uAccount = Session["Account"].ToString(); m.uName = loginInfo.DefaultUserName; m.wdate = DateTime.Now; m.udate = DateTime.Now; m.uPassWord = "******"; m.uphone = ""; m.memberID = DateTime.Now.ToString("yyyyMMdd") + (md.Get().Count + 1).ToString().PadLeft(3, '0'); m.isdel = 0; m.sort = 5000; switch (loginInfo.Login.LoginProvider) { case "Facebook": m.FacebookId = id.GetUserId(); m.GoogleId = ""; m.uemail = loginInfo.Email ?? ""; break; case "Google": m.FacebookId = ""; m.GoogleId = id.GetUserId(); m.uemail = loginInfo.Email; break; default: m.FacebookId = ""; m.GoogleId = ""; m.uemail = ""; break; } md.Create(m); TempData["Congu"] = "已成為會員"; } } //End: 加上你的驗證邏輯,或是註冊會員邏輯 AuthenticationManager.SignIn(id); return RedirectToLocal(returnUrl); } else { return RedirectToAction("Index", "login"); } // 若使用者已經有登入資料,請使用此外部登入提供者登入使用者 //var result = await SignInManager.ExternalSignInAsync(loginInfo, isPersistent: false); //switch (result) //{ // case SignInStatus.Success: // return RedirectToLocal(returnUrl); // case SignInStatus.LockedOut: // return View("Lockout"); // case SignInStatus.RequiresVerification: // return RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = false }); // case SignInStatus.Failure: // default: // // 若使用者沒有帳戶,請提示使用者建立帳戶 // ViewBag.ReturnUrl = returnUrl; // ViewBag.LoginProvider = loginInfo.Login.LoginProvider; // return View("ExternalLoginConfirmation", new ExternalLoginConfirmationViewModel { Email = loginInfo.Email }); //} }