public async Task <IActionResult> Edit(int id, [Bind("Id,IdAutora,IdOdobrenOd,IdTipa,Ime,Opis,Url,JeOdobren")] Sadrzaj sadrzaj) { if (id != sadrzaj.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(sadrzaj); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!SadrzajExists(sadrzaj.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction("Index")); } ViewData["IdAutora"] = new SelectList(_context.Korisnik, "Id", "Email", sadrzaj.IdAutora); ViewData["IdOdobrenOd"] = new SelectList(_context.Korisnik, "Id", "Email", sadrzaj.IdOdobrenOd); ViewData["IdTipa"] = new SelectList(_context.TipSadrzaja, "Id", "Ime", sadrzaj.IdTipa); return(View(sadrzaj)); }
//[Authorize] public IHttpActionResult Post(Sadrzaj sadrzaj) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } _repository.Add(sadrzaj); return(CreatedAtRoute("DefaultApi", new { id = sadrzaj.SadrzajId }, sadrzaj)); }
public void Update(Sadrzaj sadrzaj) { db.Entry(sadrzaj).State = System.Data.Entity.EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { throw; } }
public override bool Procitaj() { if (base.Procitaj()) { //return Sadrzaj.IndexOf("Trenutno nema rezultata koji odgovaraju Vašem kriterijumu pretraživanja") == -1; return(Sadrzaj.IndexOf("Trenutno nema rezultata koji odgovaraju Va") == -1); // zbog enkodinga } else { return(true); // ako nije dobro procitao neka vrati true, pa neka cita dalje. } }
public async Task <IActionResult> Create([Bind("Id,IdAutora,IdOdobrenOd,IdTipa,Ime,Opis,Url,JeOdobren")] Sadrzaj sadrzaj) { if (ModelState.IsValid) { _context.Add(sadrzaj); await _context.SaveChangesAsync(); return(RedirectToAction("Index")); } ViewData["IdAutora"] = new SelectList(_context.Korisnik, "Id", "Email", sadrzaj.IdAutora); ViewData["IdOdobrenOd"] = new SelectList(_context.Korisnik, "Id", "Email", sadrzaj.IdOdobrenOd); ViewData["IdTipa"] = new SelectList(_context.TipSadrzaja, "Id", "Ime", sadrzaj.IdTipa); return(View(sadrzaj)); }
private static PrezentacijaDenorm Denormalize(Prezentacija p, Sadrzaj sadrzaj, Kategorija kategorija) { PrezentacijaDenorm prez = new PrezentacijaDenorm(); prez.Id = p.Id; prez.Sirina = p.Sirina; prez.Visina = p.Visina; prez.XKoord = p.XKoord; prez.YKoord = p.YKoord; prez.SetKategorija(kategorija.Vrsta); prez.SetSadrzaj(sadrzaj.Ime); return(prez); }
private static SadrzajDenorm Denormalize(Sadrzaj s, TipSadrzaja tipSadrzaja, Korisnik autor, Korisnik odobren) { SadrzajDenorm sadrzaj = new SadrzajDenorm(); sadrzaj.Id = s.Id; sadrzaj.Ime = s.Ime; sadrzaj.Opis = s.Opis; sadrzaj.Url = s.Url; sadrzaj.SetAutor(autor.KorisnickoIme); sadrzaj.SetOdobrenOd(odobren.KorisnickoIme); sadrzaj.SetTip(tipSadrzaja.Ime); return(sadrzaj); }
public async Task <string> UploadNovogSadrzaja(object sender, SadrzajNewUpload sadrzajNewUpload) // NEDOSTAJE NACIN DA SE PROSLEDI ID!!!!!!!!!!!!!!!!!!!!!!!!!! { var ctx = HttpContext.Current; var root = ctx.Server.MapPath("~/Slike"); var provider = new MultipartFormDataStreamProvider(root); try { await Request.Content .ReadAsMultipartAsync(provider); foreach (var file in provider.FileData) { var name = file.Headers .ContentDisposition .FileName; // remove double quotes from string. name = name.Trim('"'); name = string.Concat(Path.GetFileNameWithoutExtension(name), DateTime.Now.ToString("yyyyMMddHHmmssfff"), Path.GetExtension(name)); // name += DateTime.Now.ToString("yyyyMMddHHmmssfff"); var localFileName = file.LocalFileName; var filePath = Path.Combine(root, name); File.Move(localFileName, filePath); Sadrzaj sadrzaj = new Sadrzaj(); sadrzaj.KosarkasId = sadrzajNewUpload.KosarkasId; sadrzaj.SadrzajTekst = sadrzajNewUpload.SadrzajTekst; sadrzaj.SadrzajArhiviran = false; sadrzaj.SadrzajSlikaLink = name; sadrzaj.SadrzajSlikaLink = "/Slike/" + name; _repository.Add(sadrzaj); } } catch (Exception e) { return($"Error: {e.Message}"); } return("File uploaded!"); }
public async Task <IActionResult> SadrzajCreate([FromBody] SadrzajApiModel model) { if (model != null && ModelState.IsValid) { Sadrzaj sadrzaj = new Sadrzaj { Ime = model.Ime, Opis = model.Opis, Url = model.Url, JeOdobren = model.JeOdobren, IdAutora = model.IdAutora, IdOdobrenOd = model.IdOdobrenOd, IdTipa = model.IdTipa }; _context.Add(sadrzaj); await _context.SaveChangesAsync(); var u = await _context.Sadrzaj .AsNoTracking() .Include(d => d.IdAutoraNavigation) .Include(d => d.IdOdobrenOdNavigation) .Include(d => d.IdTipaNavigation) .LastOrDefaultAsync(); return(new ObjectResult(new SadrzajApiModel { Id = u.Id, Ime = u.Ime, Opis = u.Opis, Url = u.Url, JeOdobren = u.JeOdobren, IdAutora = u.IdAutora, Autor = u.IdAutoraNavigation.Ime + " " + u.IdAutoraNavigation.Prezime, IdOdobrenOd = u.IdOdobrenOd, OdobrenOd = u.IdOdobrenOdNavigation.Ime + " " + u.IdOdobrenOdNavigation.Prezime, IdTipa = u.IdTipa, Tip = u.IdTipaNavigation.Ime })); } return(BadRequest(ModelState)); }
private void PrikaziViseBtn_Clicked(object sender, EventArgs e) { if (!t) { prikaziViseBtn.Text = "PRIKAŽI MANJE"; Sadrzaj.ClearValue(Label.LineBreakModeProperty); Sadrzaj.ClearValue(Label.MaxLinesProperty); t = true; } else { prikaziViseBtn.Text = "PRIKAŽI VIŠE"; Sadrzaj.LineBreakMode = LineBreakMode.WordWrap; Sadrzaj.MaxLines = 4; t = false; } }
public IHttpActionResult Put(int id, Sadrzaj sadrzaj) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != sadrzaj.SadrzajId) { return(BadRequest()); } try { _repository.Update(sadrzaj); } catch { return(BadRequest()); } return(Ok(sadrzaj)); }
public void Delete(Sadrzaj sadrzaj) { db.Sadrzaj.Remove(sadrzaj); db.SaveChanges(); }
public void Add(Sadrzaj sadrzaj) { db.Sadrzaj.Add(sadrzaj); db.SaveChanges(); }
public void Obradi() { if (Sadrzaj != null && !Sadrzaj.Equals(string.Empty)) { HtmlAgilityPack.HtmlDocument dok = new HtmlAgilityPack.HtmlDocument(); try { dok.LoadHtml(Sadrzaj); StringBuilder greske = new StringBuilder(); HtmlAgilityPack.HtmlNodeCollection nodeCol; // provera da li je strana pronadjena nodeCol = dok.DocumentNode.SelectNodes("//*[@id=\"frame\"]/div[2]/div/div[5]/h1"); if (nodeCol != null && nodeCol[0].InnerHtml.Trim().ToUpper().Equals("Stranica nije pronađena".ToUpper())) { automobil = null; return; } //Zaglavlje string naslov = string.Empty; try { nodeCol = dok.DocumentNode.SelectNodes("//*[@id=\"listing\"]/div[1]/h1/div[1]"); if (nodeCol != null) { naslov = nodeCol[0].InnerHtml.Trim(); } else { naslov = "Bez naslova"; } } catch (Exception ex) { greske.AppendLine("Nisam mogao da pročitam polje naslov: " + ex.Message); } float cena = 0; try { string cenaStr = dok.DocumentNode.SelectNodes("//*[@id=\"listing\"]/div[1]/h1/div[2]")[0].InnerHtml.Trim(); if (cenaStr.ToLower().Equals("na upit")) { cena = 0; } else { cena = float.Parse(cenaStr.Substring(0, cenaStr.IndexOf(" ")).Replace(".", "")); } } catch (Exception ex) { greske.AppendLine("Nisam mogao da pročitam polje cena: " + ex.Message); } //Opste string vozilo = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.OpsteInformacije, "vozilo"); string marka = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.OpsteInformacije, "marka"); string model = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.OpsteInformacije, "model"); int godinaProizvodnje = 0; try { godinaProizvodnje = int.Parse(DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.OpsteInformacije, "Godina proizvodnje", "0")); } catch (Exception ex) { greske.AppendLine("Nisam mogao da pročitam polje 'Godina proizvodnje': " + ex.Message); } string karoserija = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.OpsteInformacije, "karoserija"); string gorivo = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.OpsteInformacije, "gorivo"); bool fiksnaCena = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.OpsteInformacije, "Fiksna cena").ToLower() == "da"; bool zamena = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.OpsteInformacije, "zamena").ToLower() == "da"; DateTime datumPostavljanja = DateTime.MinValue;; try { datumPostavljanja = DateTime.Parse(DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.OpsteInformacije, "Datum postavljanja", DateTime.MinValue.ToShortDateString()).TrimEnd('.')); } catch (Exception ex) { greske.AppendLine("Nisam mogao da pročitam polje 'Datum postavljanja': " + ex.Message); } int brojOglasa = 0; try { brojOglasa = int.Parse(DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.OpsteInformacije, "Broj oglasa")); } catch (Exception ex) { greske.AppendLine("Nisam mogao da pročitam polje 'Broj oglasa': " + ex.Message); } // Dodatne informacije int kubikaza = 0; try { kubikaza = int.Parse(DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.DodatneInformacije, new string[] { "Kubikaža (cm3)", "Kubika" }, "0")); } catch (Exception ex) { greske.AppendLine("Nisam mogao da pročitam polje 'Kubikaža': " + ex.Message); } int snagaKW = 0; int snagaKS = 0; try { snagaKW = int.Parse(DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.DodatneInformacije, "Snaga", "0").Replace(".", "")) / 100; snagaKS = SnagaKWUKS(snagaKW); } catch (Exception ex) { greske.AppendLine("Nisam mogao da pročitam polje 'Snaga': " + ex.Message); } int kilometraza = 0; try { kilometraza = int.Parse(DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.DodatneInformacije, new string[] { "Kilometraža", "Kilometra" })); } catch (Exception ex) { greske.AppendLine("Nisam mogao da pročitam polje 'Kilometraža': " + ex.Message); } string emisionaKlasa = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.DodatneInformacije, "Emisiona klasa motora"); string pogon = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.DodatneInformacije, "Pogon"); string menjac = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.DodatneInformacije, "Menjač"); string brojVrata = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.DodatneInformacije, "Broj vrata").Replace(" vrata", ""); string brojSedistaStr = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.DodatneInformacije, "Broj sedišta", "0"); byte brojSedista = 0; try { if (brojSedistaStr.IndexOf(' ') > 0) { brojSedista = byte.Parse(brojSedistaStr.Remove(brojSedistaStr.IndexOf(' '))); } else if (!brojSedistaStr.Equals(string.Empty)) { brojSedista = byte.Parse(brojSedistaStr); } } catch (Exception ex) { greske.AppendLine("Nisam mogao da pročitam polje 'Broj sedišta': " + ex.Message); } string stranaVolana = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.DodatneInformacije, "Strana volana"); string klima = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.DodatneInformacije, "Klima"); string boja = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.DodatneInformacije, "Boja"); DateTime registrovanDo = DateTime.MinValue; try { string regDoStr = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.DodatneInformacije, "Registrovan do", DateTime.MinValue.ToShortDateString()).TrimEnd('.'); DateTime.TryParse(regDoStr, out registrovanDo); } catch (Exception ex) { greske.AppendLine("Nisam mogao da pročitam polje 'Registrovan do': " + ex.Message); } string porekloVozila = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.DodatneInformacije, "Poreklo vozila"); // Sigurnost // Oprema // Opis string opis = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.Opis); //kontakt string kontakt = DajPodatakIzDokumenta(ref dok, PodaciOAutomobilu.Kontakt).Replace("(Pogledajte mapu)\r\n", ""); automobil = new Automobil(brojOglasa, naslov, cena, adresa, vozilo, marka, model, godinaProizvodnje, karoserija, gorivo, fiksnaCena, zamena, datumPostavljanja, kubikaza, snagaKW, snagaKS, kilometraza, emisionaKlasa, pogon, menjac, brojVrata, brojSedista, stranaVolana, klima, boja, registrovanDo, porekloVozila, opis, kontakt); if (greske.Length > 0) { string upozorenje = string.Format("Greške pri parsiranju oglasa {0}, URL: {1}\n", automobil.BrojOglasa, automobil.URL) + greske; Dnevnik.PisiSaThredomUpozorenje(upozorenje); Dnevnik.PisiSaThredomUpozorenje("Sadržaj strane: " + Sadrzaj); //EventLogger.WriteEventWarning(upozorenje); } } catch (Exception ex) { EventLogger.WriteEventError("Greška pri parsiranju strane oglasa: " + adresa, ex); } } else { throw new StranaNijeProcitanaException(); } }