public ActionResult MakaleYaz(Makale makale, HttpPostedFileBase Resim, String etiketler) { if (makale != null) { // membership kullandım : veri tabanına asp.net membership ini ekledim // developer command prompt a aspnet_regsql yazdım ve adımları takip etttim // asp.net tarafında kaydolmamış birini kullanıcı olarak kaydedemek için : aspnet users tablsoun pk'ini kulllancici tablosunun pk'sine bağlıyorum // :\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config dosyasından membership, profie, rolmanager taglarini alıp projemin webconfig dosyasında system web içerisine yapıştırıyorum ve isteğime göre özellikleri değiştiriyorum. // provider ın başına <clear/> ekliyorum Kullanici aktif = Session["Kullanici"] as Kullanici; makale.YayinTarihi = DateTime.Now; makale.MakaleTipID = 1; makale.YazarID = aktif.Id; makale.KapakResimID = ResimKaydet(Resim, HttpContext); db.Makale.Add(makale); db.SaveChanges(); string[] etikets = etiketler.Split(','); foreach (string etiket in etikets) { MakaleEtiket etk = db.MakaleEtiket.FirstOrDefault(x => x.Etiket.Adi.ToLower() == etiket.ToLower().Trim()); if (etk != null) { // Etiket var makale.MakaleEtiket.Add(etk); db.SaveChanges(); } else { // Etiket yok etk = new MakaleEtiket(); etk.Etiket.Adi = etiket; db.Etiket.Add(etk.Etiket); db.SaveChanges(); makale.MakaleEtiket.Add(etk); db.SaveChanges(); } } } return(View()); }
public ActionResult makaleEkle(Makale temp, HttpPostedFileBase foto, string Etiketler) { string resimAd = Guid.NewGuid().ToString(); if (temp.Baslik == null || temp.Icerik == null) { Session["makaleSorun"] = "Lütfen makalenin adını veya içeriğini boş bırakmayınız."; return(RedirectToAction("makaleEkle")); } if (foto == null) { Session["makaleSorun"] = "Lütfen makaleye resim yükleyiniz."; return(RedirectToAction("makaleEkle")); } else { Image rsm = Image.FromStream(foto.InputStream); Bitmap btOrta = new Bitmap(rsm, Tools.OrtaBoyutSize.Width, Tools.OrtaBoyutSize.Height); Bitmap btBuyuk = new Bitmap(rsm, Tools.BuyukBoyutSize.Width, Tools.BuyukBoyutSize.Height); string ortaYol = "/Uploads/MakaleResim/Orta/" + resimAd + Path.GetExtension(foto.FileName); string buyukYol = "/Uploads/MakaleResim/Buyuk/" + resimAd + Path.GetExtension(foto.FileName); btOrta.Save(Server.MapPath(ortaYol)); btBuyuk.Save(Server.MapPath(buyukYol)); Fotograf ft = new Fotograf(); //MAAKE RESMI =3 ft.ResimTurID = 3; ft.Orta = ortaYol; ft.Buyuk = buyukYol; ft.Aktif = true; ft.Onay = true; if (!fotograf.Insert(ft)) { Session["makaleSorun"] = "Resim yüklenemedi lütfen tekrar deneyiniz"; return(RedirectToAction("makaleEkle")); } int yuklenenResimID = fotograf.Select().FirstOrDefault(x => x.Orta.Contains(resimAd)).Id; temp.FotoID = yuklenenResimID; temp.Aktif = true; temp.Begenme = 0; temp.Okunma = 0; temp.OlusturmaTarihi = DateTime.Now; temp.UyeID = Convert.ToInt32(Session["aktifUyeId"]); if (!makale.Insert(temp)) { Session["makaleSorun"] = "Makale yüklenemedi lütfen tekrar deneyiniz"; return(RedirectToAction("makaleEkle")); } int makaleID = makale.Select().FirstOrDefault(x => x.FotoID == yuklenenResimID).Id; if (!string.IsNullOrEmpty(Etiketler)) { string[] etikets = Etiketler.Split(','); foreach (var etk in etikets) { Etiket et = new Etiket() { Adi = etk }; et.Aktif = true; etiket.Insert(et); int etiketID = etiket.Select().FirstOrDefault(x => x.Adi == etk).Id; MakaleEtiket me = new MakaleEtiket(); me.EtiketID = etiketID; me.MakaleID = makaleID; me.Aktif = true; makaleetiket.Insert(me); } } } Session["makaleSorun"] = "Makale başarıyla eklendi.."; return(RedirectToAction("makaleEkle")); }
public ActionResult MakaleDuzenle(Makale mk, int?id, string etiketler, HttpPostedFileBase Foto) { if (ModelState.IsValid) { if (mk == null || mk.Icerik.Length < 100 || mk.Icerik.Length > 1000 || mk.Baslik.Length < 5 || mk.Baslik.Length > 500) { TempData["fotoboyutbuyuk"] = "İçerik 100-1000,başlık 5-500 karakter arası olmalı..."; return(View()); } else { if (id == null) { return(RedirectToAction("Hata404", "Home")); } var makale = db.Makale.FirstOrDefault(x => x.MakaleID == id); if (makale == null) { return(RedirectToAction("Hata404", "Home")); } if (Foto != null) { System.IO.File.Delete(Server.MapPath(makale.Foto)); WebImage img = new WebImage(Foto.InputStream); byte[] boyut = img.GetBytes(); if (boyut.Length > 2097152) { TempData["fotoboyutbuyuk"] = "Yüklediğiniz fotoğraf boyutu 2MB'tan fazla olamaz."; return(View()); } FileInfo fotoinfo = new FileInfo(Foto.FileName); string newfoto = Guid.NewGuid().ToString() + fotoinfo.Extension; img.Resize(700, 350); img.Save("~/Uploads/MakaleFoto/" + newfoto); makale.Foto = "/Uploads/MakaleFoto/" + newfoto; } makale.Icerik = mk.Icerik; makale.Baslik = mk.Baslik; makale.KategoriID = mk.KategoriID; makale.Tarih = mk.Tarih; db.SaveChanges(); if (etiketler != null) { var etikets = db.MakaleEtiket.Where(x => x.MakaleID == makale.MakaleID).ToList(); foreach (MakaleEtiket item in etikets) { db.MakaleEtiket.Remove(item); } string[] etiketdizi = etiketler.Split(','); foreach (var i in etiketdizi) { var yenietiket = new Etiket { EtiketAdi = i }; db.Etiket.Add(yenietiket); db.SaveChanges(); MakaleEtiket me = new MakaleEtiket(); me.MakaleID = makale.MakaleID; me.EtiketID = yenietiket.EtiketID; makale.MakaleEtiket.Add(me); } } db.SaveChanges(); TempData["makaleduzenlemebasarili"] = "Makaleniz başarıyla düzenlendi."; } } return(RedirectToAction("Makaleler", "Admin")); }
public ActionResult MakaleYeni(Makale mk, string etiketler, HttpPostedFileBase Fotograf) { if (ModelState.IsValid) { if (mk == null || mk.Icerik.Length < 100 || mk.Icerik.Length > 1000 || mk.Baslik.Length < 5 || mk.Baslik.Length > 500) { return(RedirectToAction("Hata404", "Home")); } else { if (Fotograf == null) { mk.Foto = "/Uploads/MakaleFoto/avatar.png"; } else { WebImage img = new WebImage(Fotograf.InputStream); byte[] boyut = img.GetBytes(); if (boyut.Length > 2097152) { TempData["fotoboyutbuyuk"] = "Yüklediğiniz fotoğraf boyutu 2MB'tan fazla olamaz."; return(View()); } //getbytes ile boyutu büyük dosyada hata verdir. FileInfo fotoinfo = new FileInfo(Fotograf.FileName); string newfoto = Guid.NewGuid().ToString() + fotoinfo.Extension; //Resim boyutlandırma problemli. img.Resize(700, 350); img.Save("~/Uploads/MakaleFoto/" + newfoto); mk.Foto = "/Uploads/MakaleFoto/" + newfoto; } //var captcha = Request.Form["g-recaptcha-response"]; //const string secret = "{SECRETKEY}"; //var restUrl = string.Format("https://www.google.com/recaptcha/api/siteverify?secret={0}&response={1}", secret, captcha); //WebRequest req = WebRequest.Create(restUrl); //HttpWebResponse resp = req.GetResponse() as HttpWebResponse; //JsonSerializer serializer = new JsonSerializer(); //CaptchaResult result = null; //using (var reader = new StreamReader(resp.GetResponseStream())) //{ // string resultObject = reader.ReadToEnd(); // result = JsonConvert.DeserializeObject<CaptchaResult>(resultObject); //} //if (!result.Success) //{ // TempData["captchahata"] = "Lütfen bir robot olmadığınızı doğrulayın."; //} //else //{ mk.Okunma = 0; mk.UyeID = Convert.ToInt32(Session["uyeid"]); mk.Durum = true; mk.OnayDurum = true; mk.Tarih = DateTime.Now; db.Makale.Add(mk); db.SaveChanges(); if (etiketler != null) { string[] etiketdizi = etiketler.Split(','); foreach (var i in etiketdizi) { var yenietiket = new Etiket { EtiketAdi = i }; db.Etiket.Add(yenietiket); db.SaveChanges(); MakaleEtiket me = new MakaleEtiket(); me.MakaleID = mk.MakaleID; me.EtiketID = yenietiket.EtiketID; mk.MakaleEtiket.Add(me); } } db.SaveChanges(); TempData["makaleeklemebasarili"] = "Makaleniz başarıyla oluşturuldu."; return(RedirectToAction("Makaleler", "Admin")); //} } } return(View(mk)); }