using Bootstrap.Admin.Models; using Bootstrap.DataAccess; using Longbow.Security.Principal; using System; using System.Web.Mvc; using System.Web.Security; namespace Bootstrap.Admin.Controllers { /// /// /// public class HomeController : Controller { /// /// /// /// public ActionResult Index() { var v = new ContentModel(); v.Url = "/Content/html/dummy.html"; return View(v); } /// /// /// /// public ActionResult Lock(LockModel model) { if (!string.IsNullOrEmpty(model.Password)) { return RedirectToAction("Login", new { userName = model.UserName, password = model.Password }); } var user = UserHelper.RetrieveUsersByName(User.Identity.Name); model.UserName = user.UserName; model.DisplayName = user.DisplayName; return View(model); } /// /// /// /// /// /// /// [AllowAnonymous] public ActionResult Login(string userName, string password, string remember) { //UNDONE: 本方法有严重安全漏洞,发布前需要修正 var model = new LoginModel(); if (string.IsNullOrEmpty(userName)) return View(model); model.UserName = userName; if (LgbPrincipal.IsAdmin(userName) || UserHelper.Authenticate(userName, password)) { LgbPrincipal.SavePrincipalCookie(new LgbUser() { RealUserName = userName }); FormsAuthentication.RedirectFromLoginPage(userName, false); } return View(model); } /// /// /// /// [AllowAnonymous] public ActionResult Logout() { FormsAuthentication.SignOut(); return RedirectToAction("Login"); } /// /// /// /// [AllowAnonymous] public ActionResult Register(string userName, string displayName, string password, string description) { var result = UserHelper.RegisterUser(userName, displayName, password, description); if (result) { return Redirect("/Content/html/RegResult.html"); } else return View(); } } }