public ActionResult BuyTokens() { bool check = checkLoginUser(); if (check) { int orderID; DateTime datumKreiranja = DateTime.Now; string status = "čekanje na obradu"; using (var context = new IEPVebAukcijaEntities7()) { var newNarudzbina = new Narudzbina() { CenaTokena = null, BrojTokena = 5, DatumPravljenja = datumKreiranja, Status = status, KorisnikID = (int)Session["userID"] }; context.Narudzbinas.Add(newNarudzbina); context.SaveChanges(); orderID = newNarudzbina.NarudzbinaID; } string encodedID = Base64Encode("kljuc_" + orderID); using (var context = new IEPVebAukcijaEntities7()) { Narudzbina narudzbina = context.Narudzbinas.Find(orderID); Korisnik korisnik = context.Korisniks.Find(narudzbina.KorisnikID); narudzbina.CenaTokena = (decimal)5; narudzbina.BrojTokena = 20; narudzbina.Status = "realizovana"; korisnik.BrojTokena += 20; context.Entry(narudzbina).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); context.Entry(korisnik).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); } var CentiliLink = "https://stage.centili.com/payment/widget?apikey=c1b12df447e0a198c459bc2505960ca7"; return(Redirect(CentiliLink)); // return RedirectToAction("ViewProfile", "Account"); } return(RedirectToAction("Index", "Home")); }
public string AuctionOver(int id) { string result = ""; Aukcija aukcija; using (var context = new IEPVebAukcijaEntities7()) { aukcija = context.Aukcijas.Find(id); } if (aukcija != null) { if (!aukcija.Status.Equals("OPEN")) { result = aukcija.Status; } else { Nullable <int> lastBid = aukcija.BidID; if (lastBid != null) { aukcija.Status = "SOLD"; } else { aukcija.Status = "EXPIRED"; } result = aukcija.Status; using (var context = new IEPVebAukcijaEntities7()) { context.Entry(aukcija).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); if (result == "SOLD") { Bid bid = context.Bids.Find(aukcija.BidID); Korisnik korisnik = context.Korisniks.Find(bid.KorisnikID); korisnik.Aukcijas.Add(aukcija); context.SaveChanges(); logger.Error("AUCTION OVER: AuctionID: " + aukcija.AukcijaID + ", AuctionStatus: " + aukcija.Status); } } } } return(result); }
public ActionResult EndPoint(string clientid, string status, int amount, double enduserprise) { string decodedID = Base64Decode(clientid); string[] splitedWords = decodedID.Split('_'); int id = Int32.Parse(splitedWords[0]); using (var context = new IEPVebAukcijaEntities7()) { if (status.Equals("success")) { Narudzbina narudzbina = context.Narudzbinas.Find(id); Korisnik korisnik = context.Korisniks.Find(narudzbina.KorisnikID); narudzbina.CenaTokena = (decimal)enduserprise; narudzbina.BrojTokena = amount; narudzbina.Status = "realizovana"; korisnik.BrojTokena += amount; context.Entry(narudzbina).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); context.Entry(korisnik).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); } else { Narudzbina narudzbina = context.Narudzbinas.Find(id); narudzbina.Status = "poništena"; context.Entry(narudzbina).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); } } return(ViewProfile()); }
public ActionResult ChangePassword(string oldPassword, string newPassword) { bool check = checkLoginUser(); if (check) { try { if ((oldPassword.Equals("")) || (oldPassword == null) || (newPassword.Equals("")) || (newPassword == null)) { ModelState.AddModelError("", "*Niste uneli vrednosti u polja."); return(RedirectToAction("ViewProfile", "Account")); } Korisnik editKorisnik; int id = (int)Session["userID"]; using (var context = new IEPVebAukcijaEntities7()) { editKorisnik = context.Korisniks.Find(id); } if (editKorisnik != null) { if (!Base64Decode(editKorisnik.Lozinka).Equals(oldPassword)) { ModelState.AddModelError("", "*Stara lozinka se ne poklapa."); return(RedirectToAction("ViewProfile", "Account")); } editKorisnik.Lozinka = Base64Encode(newPassword); } using (var context = new IEPVebAukcijaEntities7()) { context.Entry(editKorisnik).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); } } catch (Exception) { Console.WriteLine("Unable to change email."); ModelState.AddModelError("", "*Neispravna nova lozinka."); } return(RedirectToAction("ViewProfile", "Account")); } return(RedirectToAction("Index", "Home")); }
public ActionResult Delete(int?id) { if (checkAdmin()) { return(RedirectToAction("Login", "Account")); } else { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } try { Aukcija editAukcija; using (var context = new IEPVebAukcijaEntities7()) { editAukcija = context.Aukcijas.Find(id); } if (editAukcija != null) { editAukcija.Status = "DRAFT"; } using (var context = new IEPVebAukcijaEntities7()) { context.Entry(editAukcija).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); logger.Error("DELETE AUCTION: AuctionID: " + editAukcija.AukcijaID + ", AuctionStatus: " + editAukcija.Status); } } catch (Exception) { Console.WriteLine("Unable to delete auction"); } return(RedirectToAction("Index", "Admin", new { id = id })); } }
public void OpenAuction(int?id) { if (id == null) { return; } try { Aukcija editAukcija; using (var context = new IEPVebAukcijaEntities7()) { editAukcija = context.Aukcijas.Find(id); } if (editAukcija != null) { DateTime startTime = DateTime.Now; DateTime endTime = startTime.AddSeconds((int)editAukcija.Trajanje); editAukcija.Status = "OPEN"; editAukcija.VremeOtvaranja = startTime; editAukcija.VremeZatvaranja = endTime; } using (var context = new IEPVebAukcijaEntities7()) { context.Entry(editAukcija).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); logger.Error("AUCTION OPEN: AuctionID: " + editAukcija.AukcijaID + ", AuctionStatus: " + editAukcija.Status); } } catch (Exception) { Console.WriteLine("Unable to delete auction"); } // return RedirectToAction("Index", "Admin", new { id = id }); }
public ActionResult ChangeLastName(string newLastName) { bool check = checkLoginUser(); if (check) { try { Korisnik editKorisnik; int id = (int)Session["userID"]; using (var context = new IEPVebAukcijaEntities7()) { editKorisnik = context.Korisniks.Find(id); } if (editKorisnik != null) { editKorisnik.Prezime = newLastName; } using (var context = new IEPVebAukcijaEntities7()) { context.Entry(editKorisnik).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); } } catch (Exception) { Console.WriteLine("Unable to change last name."); ModelState.AddModelError("", "*Neispravno uneto prezime."); } return(RedirectToAction("ViewProfile", "Account")); } return(RedirectToAction("Index", "Home")); }
public void ChangePrice(int?id, string newPrice) { try { double doubleValue = Convert.ToDouble(newPrice); Aukcija editAukcija; using (var context = new IEPVebAukcijaEntities7()) { editAukcija = context.Aukcijas.Find(id); } if (editAukcija != null) { editAukcija.PocetnaCena = (decimal)doubleValue; editAukcija.TrenutnaCena = (decimal)doubleValue; } using (var context = new IEPVebAukcijaEntities7()) { context.Entry(editAukcija).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); logger.Error("AUCTION PRICE CHANGE: AuctionID: " + editAukcija.AukcijaID + ", AuctionStatus: " + editAukcija.Status + ", AuctionStartPrice: " + editAukcija.PocetnaCena); } } catch (FormatException) { Console.WriteLine("Unable to convert '{0}' to a Double.", newPrice); } catch (OverflowException) { Console.WriteLine("'{0}' is outside the range of a Double.", newPrice); } //return RedirectToAction("Index", "Admin", new { id = id }); }
public void BidAuction(int auctionID, int userID, out string fullUserName, out string newPrice, out bool tokens, out double timeRemaining) { try { Aukcija aukcija = null; Korisnik korisnik = null; using (var context = new IEPVebAukcijaEntities7()) { aukcija = context.Aukcijas.Find(auctionID); korisnik = context.Korisniks.Find(userID); } if ((aukcija != null) && (korisnik != null)) { if ((korisnik.BrojTokena > 0) && (aukcija.Status == "OPEN")) { tokens = false; double newPriceDouble = (double)aukcija.TrenutnaCena + 1; aukcija.TrenutnaCena = (decimal)newPriceDouble; double preostalo = ((DateTime)aukcija.VremeZatvaranja - DateTime.Now).TotalSeconds; DateTime newDate = (DateTime)aukcija.VremeZatvaranja; if (preostalo <= 10) { double increment = preostalo * (-1); increment += 10; newDate = newDate.AddSeconds(increment); } aukcija.VremeZatvaranja = newDate; timeRemaining = aukcija.PreostaloVreme = ((DateTime)aukcija.VremeZatvaranja - DateTime.Now).TotalSeconds; Bid newBid = new Bid() { PonCena = (decimal)newPriceDouble, VremeSlanja = DateTime.Now, KorisnikID = userID, AukcijaID = auctionID }; using (var context = new IEPVebAukcijaEntities7()) { context.Entry(aukcija).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); context.Bids.Add(newBid); context.SaveChanges(); logger.Error("AUCTION BIDED: AuctionID: " + aukcija.AukcijaID + ", AuctionCurrentPrice: " + aukcija.TrenutnaCena + ", UserBidedID: " + userID); fullUserName = korisnik.Ime + " " + korisnik.Prezime; newPrice = "" + newPriceDouble; } } else { fullUserName = newPrice = null; if (aukcija.Status != "OPEN") { tokens = false; timeRemaining = -1; } else { tokens = true; timeRemaining = 1; } } } else { fullUserName = newPrice = null; tokens = true; timeRemaining = -1; } } catch (FormatException) { fullUserName = newPrice = null; tokens = true; timeRemaining = -1; Console.WriteLine("Something went wrong."); } }