/// <summary>
        /// Yeni üye olan kullanıcıya onay mesajı gönder.
        /// </summary>
        /// <param name="user"></param>
        /// <param name="ConfirmationUrl"></param>
        /// <returns>Email send success status</returns>
        public bool SendConfirmationMail(User user, string ConfirmationUrl)
        {
            var status = false;
            string confirmationId = user.ConfirmationId.ToString();
            ConfirmationUrl += "/Account/ConfirmUser?confirmationId=" + confirmationId;

            var message = new MailMessage("*****@*****.**", user.Email)
            {
                Subject = "Lütfen e-posta adresinizi onaylayınız.",
                Body = ConfirmationUrl
            };

            var client = new SmtpClient();
            try
            {
                client.Send(message);
                status = true;
            }
            catch (System.Exception)
            {
                return status;
            }

            return status;
        }
 /// <summary>
 /// Kullanıcı güncelle.
 /// </summary>
 /// <param name="user"></param>
 public void Update(User user)
 {
     _userRepository.Update(user);
 }
 /// <summary>
 /// Kullanıcı ekle.
 /// </summary>
 /// <param name="user"></param>
 public void Insert(User user)
 {
     _userRepository.Insert(user);
 }
        public ActionResult Register(RegisterModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var user = new User();

                    if (model.Img != null && model.Img.ContentLength > 0)
                    {
                        var image = model.Img;
                        var fileName = model.UserName + "_" + Guid.NewGuid() + System.IO.Path.GetExtension(image.FileName);

                        var imageDirectory = Server.MapPath("~/Content/Images/uploads/Users/" + model.UserName);
                        var imageDirectoryBig = Server.MapPath("~/Content/Images/uploads/Users/" + model.UserName + "/Big");
                        var imageDirectoryMiddle = Server.MapPath("~/Content/Images/uploads/Users/" + model.UserName + "/Middle");
                        var imageDirectorySmall = Server.MapPath("~/Content/Images/uploads/Users/" + model.UserName + "/Small");

                        // dizin yoksa oluştur.
                        if (!Directory.Exists(imageDirectory))
                        {
                            Directory.CreateDirectory(imageDirectory);
                            Directory.CreateDirectory(imageDirectoryBig);
                            Directory.CreateDirectory(imageDirectoryMiddle);
                            Directory.CreateDirectory(imageDirectorySmall);
                        }

                        // resmi sunucuya kaydet
                        image.SaveAs(Path.Combine(imageDirectory, fileName));

                        // resmi küçük boyutta kaydet
                        ImageManager.SaveResizedImage(Image.FromFile(Path.Combine(imageDirectory, fileName)), new Size(150, 150), imageDirectorySmall, fileName);
                        ImageManager.SaveResizedImage(Image.FromFile(Path.Combine(imageDirectory, fileName)), new Size(450, 450), imageDirectoryMiddle, fileName);
                        ImageManager.SaveResizedImage(Image.FromFile(Path.Combine(imageDirectory, fileName)), new Size(750, 750), imageDirectoryBig, fileName);

                        user.ImgUrl = Path.Combine("Content/Images/uploads/Users/" + model.UserName + "/", fileName);
                        user.ImgUrlBig = Path.Combine("Content/Images/uploads/Users/" + model.UserName + "/Big/", fileName);
                        user.ImgUrlMiddle = Path.Combine("Content/Images/uploads/Users/" + model.UserName + "/Middle/", fileName);
                        user.ImgUrlSmall = Path.Combine("Content/Images/uploads/Users/" + model.UserName + "/Small/", fileName);
                    }

                    user.ConfirmationId = Guid.NewGuid();
                    user.IsConfirmed = true;
                    user.LastLoginDate = DateTime.Now;
                    user.LastLoginIP = Request.UserHostAddress;
                    user.Password = model.Password;
                    user.Email = model.Email;
                    user.UserName = model.UserName;
                    user.IsActive = true;
                    user.InsertDate = DateTime.Now;
                    user.UpdateDate = DateTime.Now;
                    user.InsertUserId = 0;
                    user.UpdateUserId = 0;
                    user.Description = model.Description;
                    user.RealName = String.IsNullOrEmpty(model.RealName) ? model.UserName : model.RealName;
                    user.Website = model.Website;

                    _membershipService.Insert(user);
                    _uow.SaveChanges();
                    //_membershipService.SendConfirmationMail(user, Request.Url.GetLeftPart(UriPartial.Authority));

                    FormsAuthentication.SetAuthCookie(model.UserName, true);

                    return RedirectToAction("Index", "Home");
                }
                catch (Exception ex)
                {
                    ModelState.AddModelError("", "Kullanıcı oluşturma başarısız! Hata: " + ex.Message);
                }
            }

            return View(model);
        }