示例#1
0
 public ActionResult Apply(TmpLogin impt)
 {
     var uapply = impt.uapply;
     uapply.isdelete = false;
     db.userapply.Add(uapply);
     string res = "";
     try { db.SaveChanges(); }
     catch (Exception except) {
         res = except.InnerException.InnerException.Message;
     }
     return Content(res);
 }
示例#2
0
        /*
         * Method to get open sections
         */

        public EmailCheckResponse CheckEmail(EmailCheckRequest emailCheckRequest)
        {
            var login     = _ucOnlinePortalContext.LoginInfos.Where(x => x.Email == emailCheckRequest.email).FirstOrDefault();
            var loginTemp = _ucOnlinePortalContext.TmpLogins.Where(x => x.Email == emailCheckRequest.email).FirstOrDefault();

            if (login != null)
            {
                return(new EmailCheckResponse {
                    success = 0
                });
            }
            if (loginTemp != null)
            {
                _ucOnlinePortalContext.TmpLogins.Attach(loginTemp);
                _ucOnlinePortalContext.TmpLogins.Remove(loginTemp);
            }

            //Generate random number for Token
            Random generator = new Random();
            String token     = generator.Next(0, 1000000).ToString("D6");

            TmpLogin newtmpLogin = new TmpLogin
            {
                Email = emailCheckRequest.email,
                Token = token
            };

            var Tk = Task.Run(() =>
            {
                var emailDetails = new EmailDetails
                {
                    To = new EmailAddress {
                        Address = emailCheckRequest.email, Name = emailCheckRequest.fullname
                    }
                };
                emailDetails.SpecificInfo.Add("{{code}}", token);
                _emailHandler.SendEmail(emailDetails, (int)RequestResponse.Enums.EmailType.VERIFICATIONCODE);
            });

            Tk.Wait();

            _ucOnlinePortalContext.TmpLogins.Add(newtmpLogin);
            _ucOnlinePortalContext.SaveChanges();

            return(new EmailCheckResponse {
                success = 1
            });
        }
示例#3
0
 public ActionResult Login(TmpLogin impt)
 {
     var user = impt.uaccount;
     var userinfo = db.user_account.FirstOrDefault(u => u.account == user.account && u.pass == user.pass && u.cname == user.cname);
     if(userinfo == null) {
         Response.Write("<script>alert('账号或密码输入错误');</script>");
     } else {
         Session.Timeout = 180;
         var level = userinfo.level;
         Session["account"] = userinfo.account;
         Session["college"] = userinfo.cname;
         Session["id"] = userinfo.id;
         Session["level"] = userinfo.level;
         string ip = Request.ServerVariables["REMODE_ADDR"];
         if(level == 0) {
             var student = db.stu_info.Find(userinfo.id);
             student.lastIP = ip;
             db.Entry(student).State = EntityState.Modified;
             db.SaveChangesAsync();
         } else {
             var teacher = db.teacher_info.Find(userinfo.id);
             teacher.lastIP = ip;
             db.Entry(teacher).State = EntityState.Modified;
             db.SaveChangesAsync();
         }
         switch (level) {
             case 0:
                 return RedirectToAction("Account","Stuhome");
             case 1:return RedirectToAction("Account", "Teacher");
             case 2:return RedirectToAction("Account","Teacher");
             case 3:return RedirectToAction("Account", "Teacher");
             default:ViewBag.LoginState = "其他"; break;
         }
     }
     var li = db.college_info.ToList();
     ViewBag.Coptions = new SelectList(li, "college_name", "college_name");
     return View();
 }