public async Task <ActionResult> Create([Bind(Include = "Price,RoomCount,BedRoom,BathRoom,RoomArea,CreatedAt,Description,IsVip,IsNew,Photo,RentTypeId,UserId,CityId,Address")] Advert advert)
        {
            ViewBag.Cities   = _context.Cities.ToList();
            ViewBag.RentType = _context.RentTypes.ToList();
            var CurrentUser = Session["lguser"] as FinalProj.Models.User;

            if (!ModelState.IsValid)
            {
                return(View(advert));
            }

            if (advert.Photo == null)
            {
                ModelState.AddModelError("Photo", "Şəkli Daxil Edin!");
                return(View(advert));
            }

            if (!advert.Photo.IsImage())
            {
                ModelState.AddModelError("Photo", "Şəkli Daxil Edin!");
                return(View(advert));
            }

            advert.Image     = advert.Photo.SaveImage("homes");
            advert.CreatedAt = DateTime.Now;
            advert.UserId    = CurrentUser.Id;
            _context.Adverts.Add(advert);
            await _context.SaveChangesAsync();

            return(RedirectToAction("Index", "User"));
        }
        public async Task <ActionResult> Privacy(string oldpass, string newpass, string confpass, string accblock)
        {
            if (oldpass != null && newpass != null && confpass != null && accblock != null)
            {
                return(HttpNotFound());
            }

            var dbuser   = Session["lguser"] as FinalProj.Models.User;
            var mainuser = _context.Users.Find(dbuser.Id);

            if (oldpass != null && newpass != null && confpass != null)
            {
                if (!Crypto.VerifyHashedPassword(dbuser.Password, oldpass))
                {
                    return(Json(new { statuscode = "400", errormessage = "Kohnə parol duzgun deyil" }, JsonRequestBehavior.AllowGet));
                }

                if (newpass.Trim().Length <= 7)
                {
                    return(Json(new { statuscode = "400", errormessage = "Parol ən az 8 sinvol olmalıdır!" }, JsonRequestBehavior.AllowGet));
                }
                if (newpass.Trim() != confpass.Trim())
                {
                    return(Json(new { statuscode = "400", errormessage = "Yeni parolla təsdiq parolu uyğun deyil" }, JsonRequestBehavior.AllowGet));
                }

                mainuser.ConfirmPassword = mainuser.Password = Crypto.HashPassword(newpass);
                await _context.SaveChangesAsync();

                dbuser.ConfirmPassword = dbuser.Password = mainuser.Password;
                return(Json(new { statuscode = "200", data = Url.Action("Index", "Home") }, JsonRequestBehavior.AllowGet));
            }

            if (oldpass != null || newpass != null || confpass != null)
            {
                return(HttpNotFound());
            }

            if (accblock == null)
            {
                return(Json(new { statuscode = "400", errormessage = "Parolu daxil edin!" }, JsonRequestBehavior.AllowGet));
            }

            if (!Crypto.VerifyHashedPassword(mainuser.Password, accblock))
            {
                return(Json(new { statuscode = "400", errormessage = "Parolu Düzgün Deyil!" }, JsonRequestBehavior.AllowGet));
            }

            mainuser.Status = true;
            await _context.SaveChangesAsync();

            Session.Clear();

            return(Json(new { statuscode = "200", data = Url.Action("Index", "Home") }, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 3
0
        public async Task <ActionResult> DeleteAdvert(int?deleteid)
        {
            var dbuser = Session["lguser"] as FinalProj.Models.User;

            if (deleteid == null)
            {
                return(Json(new { status = "400" }, JsonRequestBehavior.AllowGet));
            }

            var delitem = _context.Adverts.Find(deleteid);

            if (delitem == null)
            {
                return(Json(new { status = "400" }, JsonRequestBehavior.AllowGet));
            }

            if (delitem.UserId != dbuser.Id)
            {
                return(Json(new { status = "400" }, JsonRequestBehavior.AllowGet));
            }

            DeleteImage("~/Images", delitem.Image);
            _context.Adverts.Remove(delitem);
            await _context.SaveChangesAsync();

            return(Json(new { status = "200", data = Url.Action("Index", "User") }, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 4
0
        public async Task <ActionResult> Login(string email, string password, bool?asAdmin = false)
        {
            if (string.IsNullOrEmpty(email.Trim()) || string.IsNullOrEmpty(password.Trim()))
            {
                ModelState.AddModelError("loginError", "Email və ya Parol Yanlışdır");
                return(View());
            }

            try
            {
                MailAddress mailAddress = new MailAddress(email);
            }
            catch (Exception)
            {
                ModelState.AddModelError("loginError", "Duzgun Email Daxil Edin");
                return(View());
            }

            var dbuser = _context.Users.FirstOrDefault(m => m.Email == email.Trim());

            if (dbuser == null)
            {
                ModelState.AddModelError("loginError", "Email və ya Parol Yanlışdır");
                return(View());
            }

            if (!Crypto.VerifyHashedPassword(dbuser.Password, password.Trim()))
            {
                ModelState.AddModelError("loginError", "Email və ya Parol Yanlışdır");
                return(View());
            }
            if (dbuser.Status == true)
            {
                dbuser.Status = false;
                await _context.SaveChangesAsync();
            }

            Session["lguser"] = dbuser;


            return(RedirectToAction("Index", "Home"));
        }
      public async Task <ActionResult> Admindelete(int?deleteadv)
      {
          if (deleteadv == null)
          {
              return(Json(new { status = "400" }, JsonRequestBehavior.AllowGet));
          }
          ;
          var dbdel = _context.Adverts.Find(deleteadv);

          if (dbdel == null)
          {
              return(Json(new { status = "400" }, JsonRequestBehavior.AllowGet));
          }
          ;
          DeleteImage("~/Images", dbdel.Image);
          _context.Adverts.Remove(dbdel);
          await _context.SaveChangesAsync();

          return(Json(new { status = "200", data = Url.Action("Index", "Adverts") }, JsonRequestBehavior.AllowGet));
      }
        // GET: LikeAdvert
        public async Task <ActionResult> Index(int likeid)
        {
            var dbadvert = _context.Adverts.Find(likeid);

            if (dbadvert == null)
            {
                return(Json(new { status = "400" }, JsonRequestBehavior.AllowGet));
            }
            User user = Session["lguser"] as User;

            var dblikedadv = _context.Likes.FirstOrDefault(m => m.AdvertId == likeid && m.UserId == user.Id);

            if (dblikedadv != null)
            {
                return(Json(new { status = "400" }, JsonRequestBehavior.AllowGet));
            }

            _context.Likes.Add(new Like {
                UserId = user.Id, AdvertId = likeid
            });
            await _context.SaveChangesAsync();

            return(Json(new { status = "200" }, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 7
0
        public async Task <ActionResult> lform(string Name, string Email, string Title, string Content, Message message)
        {
            message.Name      = Name;
            message.Email     = Email;
            message.Title     = Title;
            message.Content   = Content;
            message.isRead    = false;
            message.CreatedAt = DateTime.Now;

            if (!ModelState.IsValid)
            {
                return(Json(new { status = "400", messag = "Məlumatlar düzgün daxil edilməyib" }, JsonRequestBehavior.AllowGet));
            }

            _context.Messages.Add(message);
            await _context.SaveChangesAsync();

            return(Json(new { status = "200", data = Url.Action("Index", "Home") }, JsonRequestBehavior.AllowGet));
        }