private static void InitialSeed(ProcurementContext db, UnitOfWorkProcurement unit) { var roles = new List <Role>() { new Role() { Name = "Admin" }, new Role() { Name = "Custumer" }, new Role() { Name = "Supplier" } }; IRepositoryRole repRole = new RepositoryRole(db, unit); repRole.InsertRange(roles); unit.SaveChanges(); User admin = new User() { Name = "Admin", UserType = Model.Enums.UserType.Admin, Password = "******", Email = "*****@*****.**", Login = "******" }; IRepositoryUser repUser = new RepositoryUser(db, unit); repUser.Insert(admin); AdminInfo adminInfo = new AdminInfo() { User = admin }; IRepositoryAdminInfo repAdminInfo = new RepositoryAdminInfo(db, unit); repAdminInfo.Insert(adminInfo); unit.SaveChanges(); Role roleAdmin = repRole.Queryable().Where(r => r.Name == "Admin").FirstOrDefault(); roleAdmin.Users.Add(admin); repRole.Update(roleAdmin); unit.SaveChanges(); }
public ActionResult Register(RegisterModel model, bool captchaValid, string returnUrl) { if (ModelState.IsValid && captchaValid) { // Attempt to register the user RepositoryUser repoUser = new RepositoryUser(Server.MapPath("~/App_Data/FrmBlog.db"), DbType.SqLite); if (repoUser.IsRecordUser(model.Email)) { ModelState.AddModelError("Email", "Email başka bir kullanıcıya ait"); return(View(model)); } User user = new Models.User(); user.Email = model.Email; user.RoleId = Role.Member.RoleId; user.Name = model.UserName; user.Password = model.Password; user.PicturePath = new FrmBlog.Avatar.Avatar().GetRandomAvatar(); user.DisplayName = model.UserName; repoUser.Insert(user); IFormsAuthentication auth = new FormsAuthenticationWrapper(); auth.SetAuthCookie(user.Email, true); if (Url.IsLocalUrl(returnUrl) && returnUrl.Length > 1 && returnUrl.StartsWith("/") && !returnUrl.StartsWith("//") && !returnUrl.StartsWith("/\\")) { return(Redirect(returnUrl)); } else { return(RedirectToAction("Index", "Home")); } } if (!captchaValid) { ModelState.AddModelError("", "Doğrulama kodu yanlış"); } // If we got this far, something failed, redisplay form return(View(model)); }
public ModelViewUser Insert(ModelViewUser model) { var objRepository = new RepositoryUser(); var objSecurity = new BusinessSecurity(); bool salir = false; string token = ""; while (!salir) { token = objSecurity.GenerateToken(); if (objRepository.GetToken(token) == null) { salir = true; } } string clave = objSecurity.GeneratePassword(8); if (objRepository.GetEmail(model.Email) != null) { throw new Exception("DuplicateEmail"); } if (objRepository.GetUserName(model.UserName) != null) { throw new Exception("DuplicateUser"); } EntityUser data = new EntityUser() { UserID = model.UserID, ProfileID = model.ProfileID, UserName = model.UserName, Name = model.Name, Password = new BusinessCryptoMD5(GlobalConfiguration.CryptoKey).CryptoString(clave), Token = token, ChangePassword = true, Email = model.Email, Status = true, DateLastAccess = DateTime.UtcNow, DateCreate = DateTime.UtcNow, DateModification = DateTime.UtcNow }; data = objRepository.Insert(data); model.UserID = data.UserID; List <string> arr = new List <string>(); arr.Add(model.Email); string sb = File.ReadAllText(GlobalConfiguration.LocateBodyMail + "NotificationUserBodyContent.txt"); sb = sb.Replace("#%NombreUsuario%#", data.UserName); sb = sb.Replace("#%ClaveTemporal%#", clave); sb = sb.Replace("#%Nombre%#", data.Name); //Nombre de usuario, usuario, pass, //new BusinessNotification().SendMails(arr, "Mabe - Registro de usuario ServiPlus", sb); new BusinessNotification().SendMailExchange(GlobalConfiguration.exchangeUser, GlobalConfiguration.exchangePwd, arr, "Mabe - Registro de usuario ServiPlus", sb); return(model); }
public ActionResult Detay(long id, string title, FormCollection frmCol, bool captchaValid) { ViewBag.isPostBack = "1"; if (Request.IsAuthenticated) { FrmViewData frm = new FrmViewData(); User user = _repoUser.GetUserByEmail(HttpContext.User.Identity.Name); bool createAnswer = true; if (string.IsNullOrEmpty(frmCol["description"]) || frmCol["description"].Length < 17) { //ModelState.AddModelError("desciption", "Detaylı Açıklama Boş olamaz ve en az 10 karekter uzunluğunda olması gerekli"); ModelState.AddModelError("", "Detaylı Açıklama boş olamaz ve en az 10 karekter uzunluğunda olması gerekli"); createAnswer = false; } //if (!captchaValid) //{ // ModelState.AddModelError("valid", "Doğrulama kodu yanlış."); // createAnswer = false; //} if (createAnswer) { Answer answer = new Answer(); answer.BestReply = false; answer.Date = DateTime.Now; answer.IPAddress = GetIpAddress(); answer.Reply = frmCol["description"].Replace("'", "%t%").Replace("@", "@@"); answer.State = State.Yayinda; answer.User = user; answer.UserId = user.UserId; answer.QuestionId = id; _repoAns.Insert(answer); } frm.Question = _repoQues.GetById(id); frm.Tags = _repoTag.GetListByQuestionId(id); frm.Answers = _repoAns.GetListByQuestionId(id); List <Question> benzerSorular = BulBenzerSorulari <long>(frm); frm.Questions = benzerSorular; ViewBag.Title = frm.Question.Title; return(View(frm)); } else { bool createUser = true; if (string.IsNullOrEmpty(frmCol["description"]) || frmCol["description"].Length < 17) { //ModelState.AddModelError("desciption", "Detaylı Açıklama Boş olamaz ve en az 10 karekter uzunluğunda olması gerekli"); ModelState.AddModelError("", "Detaylı Açıklama boş olamaz ve en az 10 karekter uzunluğunda olması gerekli"); createUser = false; } ValiDateUser(frmCol, ref createUser); if (!captchaValid) { ModelState.AddModelError("valid", "Doğrulama kodu yanlış"); ModelState.AddModelError("", "Doğrulama kodu yanlış"); createUser = false; } if (createUser) { User user = new Models.User(); user.Email = frmCol["RegisterModel.Email"]; user.RoleId = Role.Member.RoleId; user.Name = frmCol["RegisterModel.UserName"]; user.Password = frmCol["RegisterModel.Password"]; user.PicturePath = new FrmBlog.Avatar.Avatar().GetRandomAvatar(); _repoUser.Insert(user); IFormsAuthentication auth = new FormsAuthenticationWrapper(); auth.SetAuthCookie(user.Email, true); Answer answer = new Answer(); answer.BestReply = false; answer.Date = DateTime.Now; answer.IPAddress = GetIpAddress(); answer.Reply = frmCol["description"].Replace("'", "%t%"); answer.State = State.Yayinda; answer.User = _repoUser.GetUserByEmail(user.Email); answer.UserId = answer.User.UserId; answer.QuestionId = id; _repoAns.Insert(answer); } FrmViewData frm = new FrmViewData(); frm.Question = _repoQues.GetById(id); frm.Tags = _repoTag.GetListByQuestionId(id); frm.Answers = _repoAns.GetListByQuestionId(id); List <Question> benzerSorular = BulBenzerSorulari <long>(frm); frm.Questions = benzerSorular; ViewBag.Title = frm.Question.Title; return(RedirectToAction("Detay", new { id = id, title = title })); } }
public ActionResult LogOnPostAssertion(string openid_openidAuthData) { IAuthenticationResponse response; if (!string.IsNullOrEmpty(openid_openidAuthData)) { var auth = new Uri(openid_openidAuthData); var headers = new WebHeaderCollection(); foreach (string header in Request.Headers) { headers[header] = Request.Headers[header]; } // Always say it's a GET since the payload is all in the URL, even the large ones. HttpRequestInfo clientResponseInfo = new HttpRequestInfo("GET", auth, auth.PathAndQuery, headers, null); response = RelyingParty.GetResponse(clientResponseInfo); } else { response = RelyingParty.GetResponse(); } if (response != null) { switch (response.Status) { case AuthenticationStatus.Authenticated: string alias = response.FriendlyIdentifierForDisplay; var sreg = response.GetExtension <ClaimsResponse>(); if (sreg != null && sreg.MailAddress != null) { RepositoryUser userRepo = new RepositoryUser("", DbType.SqLite); if (!userRepo.IsRecordUser(sreg.MailAddress.Address.Trim())) { FrmBlog.Models.User user = new FrmBlog.Models.User(); user.DisplayName = sreg.MailAddress.DisplayName; user.Email = sreg.MailAddress.Address; user.RecordDate = DateTime.Now; user.RoleId = FrmBlog.Models.Role.Member.RoleId; user.Name = sreg.MailAddress.User; user.PicturePath = new FrmBlog.Avatar.Avatar().GetRandomAvatar(); userRepo.Insert(user); } else { var user = userRepo.GetUserByEmail(sreg.MailAddress.Address); } //FormsAuthenticationTicket authTicket = new //FormsAuthenticationTicket(1, //version //response.ClaimedIdentifier, // user name //DateTime.Now, //creation //DateTime.Now.AddMonths(12), //Expiration //true, //Persistent //sreg.MailAddress.Address); // string encTicket = FormsAuthentication.Encrypt(authTicket); // this.Response.Cookies.Add(new HttpCookie(FormsAuthentication.FormsCookieName, encTicket)); // alias = sreg.MailAddress.User; FormsAuthentication.SetAuthCookie(sreg.MailAddress.Address, true); } //if (sreg != null && !string.IsNullOrEmpty(sreg.FullName)) //{ // alias = sreg.FullName; //} //FormsAuthenticationTicket authTicket = new // FormsAuthenticationTicket(1, //version // response.ClaimedIdentifier, // user name // DateTime.Now, //creation // DateTime.Now.AddDays(365), //Expiration // false, //Persistent // alias); //string encTicket = FormsAuthentication.Encrypt(authTicket); //this.Response.Cookies.Add(new HttpCookie(FormsAuthentication.FormsCookieName, encTicket)); string returnUrl = Request.Form["returnUrl"]; if (!String.IsNullOrEmpty(returnUrl)) { return(Redirect(returnUrl)); } else { return(RedirectToAction("Index", "Home")); } case AuthenticationStatus.Canceled: ModelState.AddModelError("OpenID", "It looks like you canceled login at your OpenID Provider."); break; case AuthenticationStatus.Failed: ModelState.AddModelError("OpenID", response.Exception.Message); break; } } // If we're to this point, login didn't complete successfully. // Show the LogOn view again to show the user any errors and // give another chance to complete login. return(View("LogOn")); }