public async Task <IActionResult> Edit(int id, [Bind("Id,VaziDo,BrojKartice,CVV,TipKarticeID")] KreditneKartice kreditneKartice) { if (id != kreditneKartice.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(kreditneKartice); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!KreditneKarticeExists(kreditneKartice.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["TipKarticeID"] = new SelectList(_context.TipKartice, "Id", "Naziv", kreditneKartice.TipKarticeID); return(View(kreditneKartice)); }
public async Task <IActionResult> Create([Bind("Id,VaziDo,BrojKartice,CVV,TipKarticeID")] KreditneKartice kreditneKartice) { if (ModelState.IsValid) { _context.Add(kreditneKartice); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["TipKarticeID"] = new SelectList(_context.TipKartice, "Id", "Naziv", kreditneKartice.TipKarticeID); return(View(kreditneKartice)); }
public IActionResult GetKreditnuKarticu(int GostId, int RezID) { Gosti gost = db.Gosti.Include(x => x.KreditneKartica).FirstOrDefault(x => x.Id == GostId); ViewData["TipKarticeID"] = new SelectList(db.TipKartice, "Id", "Naziv"); ViewData["GostID"] = GostId; ViewData["RezIDD"] = RezID; if (gost.KreditneKartica != null) { return(PartialView("KreditnaKartica", gost.KreditneKartica)); } KreditneKartice nova = new KreditneKartice(); return(PartialView("KreditnaKartica", null)); }
public IActionResult _DodajKarticu([Bind("VaziDo,BrojKartice,CVV,TipKarticeID")] KreditneKartice kartica, int GostID, int RezID) { if (ModelState.IsValid) { int mjesec = 0; int godina = 0; string[] datum = kartica.VaziDo.Split('/'); mjesec = int.Parse(datum[0]); godina = int.Parse(datum[1]); DateTime novi = new DateTime(godina, mjesec, 1); kartica.VaziDoDatum = novi; db.Add(kartica); db.SaveChanges(); Gosti gost = db.Gosti.FirstOrDefault(x => x.Id == GostID); gost.KreditneKarticaId = kartica.Id; db.Gosti.Update(gost); db.SaveChanges(); //RedirectToAction("Index", "Rezervacije"); KreditneKartice uspjehKartica = db.KreditneKartice.Include(x => x.TipKartice).SingleOrDefault(x => x.Id == kartica.Id); ViewData["TipKarticeID"] = new SelectList(db.TipKartice, "Id", "Naziv"); ViewData["GostID"] = GostID; ViewData["RezIDD"] = RezID; return(PartialView("KreditnaKartica", uspjehKartica)); } ViewData["TipKarticeID"] = new SelectList(db.TipKartice, "Id", "Naziv"); ViewData["GostID"] = GostID; ViewData["RezIDD"] = RezID; return(PartialView("KreditnaKartica", kartica)); }
protected override ValidationResult IsValid( object value, ValidationContext validationContext) { KreditneKartice kartica = (KreditneKartice)validationContext.ObjectInstance; if (string.IsNullOrEmpty(kartica.VaziDo)) { return(new ValidationResult("Vazi do je obavezno polje ")); } string VaziDo = kartica.VaziDo; //Regex regex = new Regex("@[0-9]{2}/[0-9]{2,4}"); Regex regex = new Regex(@"^(0[1-9]|1[0-2])\/(([0-9]{4}|[0-9]{2})$)"); Match match = regex.Match(VaziDo); if (!match.Success) { return(new ValidationResult("Vazi do nije validan, prihvaćeni format je MM/GG ili MM/GGGG")); } int mjesec = 0; int godina = 0; string[] datum = kartica.VaziDo.Split('/'); if (datum[0].Length != 2) { return(new ValidationResult("Mjesec nije validan")); } if (datum[1].Length < 2 || datum[1].Length == 3 || datum[1].Length > 4) { return(new ValidationResult("Godina nije validan")); } mjesec = int.Parse(datum[0]); godina = int.Parse(datum[1]); if (mjesec > 12 || mjesec < 1) { return(new ValidationResult("Mjesec nije validan")); } if (godina < 100) { godina += 2000; } if (godina < DateTime.Now.Year) { return(new ValidationResult("Godina nije validna, kreditna kratica je istekla")); } DateTime sad = DateTime.Now.AddYears(25); if (godina > sad.Year) { return(new ValidationResult("Godina nije validna, kreditna kratica traje predugo")); } DateTime novi = new DateTime(godina, mjesec, 1); return(ValidationResult.Success); }