private ScenarioResult Create(TicketEntry ticket) { using (SQLiteConnection sqlconn = new SQLiteConnection("Data Source=ticketdata.sqlite")) { sqlconn.Open(); ScenarioResult result = new ScenarioResult(); SQLiteCommand insertSQL = new SQLiteCommand("INSERT INTO TicketEntry (TicketID, TicketNo, Name, PhoneNumber, Email, Address, Status, Priority, Category, Resolver, Description,EntryDate,DueDate)" + " VALUES (@ticketID,@ticketNo,@Name,@phoneNumber,@email,@address,@status,@priority,@category,@resolver,@description,@entryDate,@dueDate)", sqlconn); insertSQL.Parameters.AddWithValue("@ticketID", ticket.TicketID); insertSQL.Parameters.AddWithValue("@ticketNo", ticket.TicketNo); insertSQL.Parameters.AddWithValue("@Name", ticket.Name); insertSQL.Parameters.AddWithValue("@phoneNumber", ticket.PhoneNumber); insertSQL.Parameters.AddWithValue("@email", ticket.Email); insertSQL.Parameters.AddWithValue("@address", ticket.Address); insertSQL.Parameters.AddWithValue("@status", ticket.Status); insertSQL.Parameters.AddWithValue("@priority", ticket.Priority); insertSQL.Parameters.AddWithValue("@category", ticket.Category); insertSQL.Parameters.AddWithValue("@resolver", ticket.Resolver); insertSQL.Parameters.AddWithValue("@description", ticket.Description); insertSQL.Parameters.AddWithValue("@entryDate", ticket.EntryDate); insertSQL.Parameters.AddWithValue("@dueDate", ticket.DueDate); try { insertSQL.ExecuteNonQuery(); result.Success = true; } catch (Exception ex) { result.ErrorMessage = ex.Message; } return(result); } }
public ScenarioResult UpdateTicketEntry(TicketEntry original, TicketEntry updated) { using (SQLiteConnection sqlconn = new SQLiteConnection("Data Source=ticketdata.sqlite")) { sqlconn.Open(); ScenarioResult result = new ScenarioResult(); SQLiteCommand updateSQL = new SQLiteCommand("Update TicketEntry Set TicketNo=@ticketNo" + ", Name=@Name , PhoneNumber=@phoneNumber, Email=@email, Address=@address, Status=@status, " + "Priority=@priority, Category=@category, Resolver=@resolver, Description=@description" + ",EntryDate=@entryDate,DueDate=@dueDate where TicketID=@ticketID", sqlconn); updateSQL.Parameters.AddWithValue("@ticketID", original.TicketID); updateSQL.Parameters.AddWithValue("@ticketNo", updated.TicketNo); updateSQL.Parameters.AddWithValue("@Name", updated.Name); updateSQL.Parameters.AddWithValue("@phoneNumber", updated.PhoneNumber); updateSQL.Parameters.AddWithValue("@email", updated.Email); updateSQL.Parameters.AddWithValue("@address", updated.Address); updateSQL.Parameters.AddWithValue("@status", updated.Status); updateSQL.Parameters.AddWithValue("@priority", updated.Priority); updateSQL.Parameters.AddWithValue("@category", updated.Category); updateSQL.Parameters.AddWithValue("@resolver", updated.Resolver); updateSQL.Parameters.AddWithValue("@description", updated.Description); updateSQL.Parameters.AddWithValue("@entryDate", updated.EntryDate); updateSQL.Parameters.AddWithValue("@dueDate", updated.DueDate); try { updateSQL.ExecuteNonQuery(); result.Success = true; } catch (Exception ex) { result.ErrorMessage = ex.Message; } return(result); } }
public ActionResult Reply([Bind(Include = "TicketID,ReplyText")] ReplyToConsultationTicket reply) { OrcaContext db = new OrcaContext(); if (ModelState.IsValid) { TicketEntry newTicketEntry = new TicketEntry(); //int oid = int.Parse(Session["OrcaUserID"].ToString()); int oid = Convert.ToInt32(Session["OrcaUserID"].ToString()); DateTime dt = DateTime.Now; newTicketEntry.TicketID = reply.TicketID; newTicketEntry.OrcaUserID = oid; newTicketEntry.EntryDTStamp = dt; newTicketEntry.EntryText = reply.ReplyText; db.TicketEntries.Add(newTicketEntry); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(reply)); }
private TicketEntry getTicketDetails() { TicketEntry ticketEntry = new TicketEntry(); ticketEntry.Name = txtName.Text; ticketEntry.Address = txtAddress.Text; ticketEntry.PhoneNumber = txtPhoneNumber.Text; TicketPriority priority = TicketPriority.Normal; Enum.TryParse(cbPriority.Text, out priority); ticketEntry.Priority = priority; ticketEntry.Category = cbCategory.Text; ticketEntry.Description = txtDescription.Text; ticketEntry.EntryDate = dateEntry.Value.Date; ticketEntry.DueDate = dateDue.Value.Date; ticketEntry.Resolver = txtResolver.Text; ticketEntry.TicketNo = txtTicketNo.Text; ticketEntry.Email = txtEmail.Text; TicketStatus status = TicketStatus.New; Enum.TryParse(cbStatus.Text, out status); ticketEntry.Status = status; ticketEntry.TicketID = generateID(); return(ticketEntry); }
public ActionResult AddEntryToTicket([Bind(/*Exclude = "DescriptionName,OrcaUserName,EntryDTStamp",*/ Include = "TicketID,EntryText")] AddEntryToTicket entryToAddToTicket) { OrcaContext db = new OrcaContext(); // the shit gives probs if (ModelState.IsValid) { DateTime dt = DateTime.Now; TicketEntry ticketEntryToCopyToDb = new TicketEntry(); ticketEntryToCopyToDb.TicketID = entryToAddToTicket.TicketID; //ticketEntryToCopyToDb.OrcaUserID = int.Parse(Session["OrcaUserID"].ToString()); ticketEntryToCopyToDb.OrcaUserID = Convert.ToInt32(Session["OrcaUserID"].ToString()); ticketEntryToCopyToDb.EntryDTStamp = dt; ticketEntryToCopyToDb.EntryText = entryToAddToTicket.NewTicketEntry; ////System.Diagnostics.Debug.WriteLine(ticketEntryToCopyToDb.TicketID); ////System.Diagnostics.Debug.WriteLine(ticketEntryToCopyToDb.OrcaUserID); ////System.Diagnostics.Debug.WriteLine(ticketEntryToCopyToDb.EntryDTStamp); ////System.Diagnostics.Debug.WriteLine(ticketEntryToCopyToDb.EntryText); db.TicketEntries.Add(ticketEntryToCopyToDb); db.SaveChanges(); RedirectToAction("EditConsultationTicket", new { entryToAddToTicket.TicketID, id = entryToAddToTicket.TicketID }); } return(View(entryToAddToTicket)); }
public SyncClient() { this.Instance = 0U; this.Lang = ""; this.Ticket = ""; this.Register = false; this.tick = (TicketEntry)null; }
public ActionResult DeleteConfirmed(int id) { TicketEntry ticketEntry = db.TicketEntries.Find(id); db.TicketEntries.Remove(ticketEntry); db.SaveChanges(); return(RedirectToAction("Index")); }
public static TicketEntry GetTicket() { if (Tickets.Count == 0) { return(null); } TicketEntry entry = Tickets[Tickets.Count - 1]; lock (CheckLock) { Tickets.Remove(entry); } return(entry); }
public ActionResult Edit([Bind(Include = "TicketEntryID,TicketID,OrcaUserID,EntryDTStamp,EntryText")] TicketEntry ticketEntry) { if (ModelState.IsValid) { db.Entry(ticketEntry).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.OrcaUserID = new SelectList(db.OrcaUsers, "OrcaUserID", "OrcaUserName", ticketEntry.OrcaUserID); ViewBag.TicketID = new SelectList(db.Tickets, "TicketID", "DescriptionName", ticketEntry.TicketID); return(View(ticketEntry)); }
public List <TicketEntry> GetDataSearchResult(string txtSearchTicketNo, string txtSearchName, string txtSearchPhone) { string finalQuery = generateQuery(txtSearchTicketNo, txtSearchName, txtSearchPhone); List <TicketEntry> ticketEntries = new List <TicketEntry>(); using (SQLiteConnection sqlconn = new SQLiteConnection("Data Source=ticketdata.sqlite")) { sqlconn.Open(); finalQuery = finalQuery.Replace("@ticketNo", txtSearchTicketNo); finalQuery = finalQuery.Replace("@Name", txtSearchName); finalQuery = finalQuery.Replace("@phoneNumber", txtSearchPhone); SQLiteCommand searchQuery = new SQLiteCommand(finalQuery, sqlconn); try { SQLiteDataReader reader = searchQuery.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { TicketEntry ticketEntry = new TicketEntry(); ticketEntry.TicketID = reader["TicketID"].ToString(); ticketEntry.TicketNo = reader["TicketNo"].ToString(); ticketEntry.Name = reader["Name"].ToString(); ticketEntry.PhoneNumber = reader["PhoneNumber"].ToString(); ticketEntry.Email = reader["Email"].ToString(); ticketEntry.Address = reader["Address"].ToString(); ticketEntry.Description = reader["Description"].ToString(); ticketEntry.Category = reader["Category"].ToString(); Enum.TryParse(reader["Status"].ToString(), out TicketStatus status); ticketEntry.Status = status; Enum.TryParse(reader["Priority"].ToString(), out TicketPriority priority); ticketEntry.Priority = priority; ticketEntry.Resolver = reader["Resolver"].ToString(); DateTime.TryParse(reader["EntryDate"].ToString(), out DateTime entryDate); ticketEntry.EntryDate = entryDate; DateTime.TryParse(reader["DueDate"].ToString(), out DateTime dueDate); ticketEntry.DueDate = dueDate; ticketEntries.Add(ticketEntry); } } } catch (Exception ex) { } sqlconn.Close(); } return(ticketEntries); }
public List <TicketEntry> GetTimeSearchResult(DateTime startDate, DateTime endDate) { string finalQuery = "Select * from TicketEntry where EntryDate >= '" + startDate.Date.ToString("yyyy-MM-dd") + "' and EntryDate <= '" + endDate.Date.AddDays(1).ToString("yyyy-MM-dd") + "'"; List <TicketEntry> ticketEntries = new List <TicketEntry>(); using (SQLiteConnection sqlconn = new SQLiteConnection("Data Source=ticketdata.sqlite")) { sqlconn.Open(); SQLiteCommand searchQuery = new SQLiteCommand(finalQuery, sqlconn); try { SQLiteDataReader reader = searchQuery.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { TicketEntry ticketEntry = new TicketEntry(); ticketEntry.TicketID = reader["TicketID"].ToString(); ticketEntry.TicketNo = reader["TicketNo"].ToString(); ticketEntry.Name = reader["Name"].ToString(); ticketEntry.PhoneNumber = reader["PhoneNumber"].ToString(); ticketEntry.Email = reader["Email"].ToString(); ticketEntry.Address = reader["Address"].ToString(); ticketEntry.Description = reader["Description"].ToString(); ticketEntry.Category = reader["Category"].ToString(); Enum.TryParse(reader["Status"].ToString(), out TicketStatus status); ticketEntry.Status = status; Enum.TryParse(reader["Priority"].ToString(), out TicketPriority priority); ticketEntry.Priority = priority; ticketEntry.Resolver = reader["Resolver"].ToString(); DateTime.TryParse(reader["EntryDate"].ToString(), out DateTime entryDate); ticketEntry.EntryDate = entryDate; DateTime.TryParse(reader["DueDate"].ToString(), out DateTime dueDate); ticketEntry.DueDate = dueDate; ticketEntries.Add(ticketEntry); } } } catch (Exception ex) { } sqlconn.Close(); } return(ticketEntries); }
// GET: zzzTESTinCASETicketEntries/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } TicketEntry ticketEntry = db.TicketEntries.Find(id); if (ticketEntry == null) { return(HttpNotFound()); } return(View(ticketEntry)); }
// GET: zzzTESTinCASETicketEntries/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } TicketEntry ticketEntry = db.TicketEntries.Find(id); if (ticketEntry == null) { return(HttpNotFound()); } ViewBag.OrcaUserID = new SelectList(db.OrcaUsers, "OrcaUserID", "OrcaUserName", ticketEntry.OrcaUserID); ViewBag.TicketID = new SelectList(db.Tickets, "TicketID", "DescriptionName", ticketEntry.TicketID); return(View(ticketEntry)); }
private List <int> ChooseJackpotPicks() { if (m_Tickets == null || m_Tickets.Count == 0) { return(null); } List <TicketEntry> entryList = new List <TicketEntry>(); foreach (PowerBallTicket ticket in m_Tickets) { if (ticket.Entries.Count > 0 && ticket.Owner != null) { foreach (TicketEntry entry in ticket.Entries) { if (entry.PowerBall > 0) { entryList.Add(entry); } } } } int random = Utility.Random(entryList.Count); for (int j = 0; j < entryList.Count; ++j) { if (j == random) { TicketEntry entry = entryList[j]; List <int> list = new List <int>(); list.Add(entry.One); list.Add(entry.Two); list.Add(entry.Three); list.Add(entry.Four); list.Add(entry.Five); list.Add(entry.PowerBall); return(list); } } return(null); }
public void OpenConnection() { try { ServerConnection = new SimpleClient(); ClientConnection = new SimpleClient(); ServerConnection.Disconnected += ServerDisconnected; ServerConnection.DataReceived += ServerDataReceived; ServerConnection.Error += SocketError; ClientConnection.Disconnected += ClientDisconnected; ClientConnection.DataReceived += ClientDataReceived; ClientConnection.Error += SocketError; ClientConnection.Start(Sock); if (Client.Silent) { string address = Constants.LoginAddresses[Rnd.Next(0, Constants.LoginAddresses.Length)]; short port = (short)Constants.LoginPorts[Rnd.Next(0, Constants.LoginPorts.Length)]; ServerConnection.Start(address, port); } else { TicketEntry msg = TicketsManager.GetTicket(); Client.AccountName = msg.AccountName; Client.Network.Instance = msg.Instance; string address = Dns.GetHostAddresses(msg.ServerMsg.address)[Rnd.Next(0, Dns.GetHostAddresses(msg.ServerMsg.address).Length)].ToString(); short port = (short)msg.ServerMsg.ports[Rnd.Next(0, msg.ServerMsg.ports.Length)]; ServerConnection.Start(address, port); } } catch (Exception ex) { WindowManager.MainWindow.Logger.Error("[Network] " + ex.Message); } }
private void dataResults_RowEnter(object sender, DataGridViewCellEventArgs e) { TicketEntry ticket = (TicketEntry)dataResults.Rows[e.RowIndex].Tag; if (ticket != null) { gbTicketDetails.Tag = ticket; txtUpdateTicketNo.Text = ticket.TicketNo; txtUpdateName.Text = ticket.Name; txtUpdateDescription.Text = ticket.Description; txtUpdateEmail.Text = ticket.Email; txtUpdateAddress.Text = ticket.Address; txtUpdatePhoneNumber.Text = ticket.PhoneNumber; txtUpdateResolver.Text = ticket.Resolver; cbUpdateStatus.Text = ticket.Status.ToString(); cbUpdatePriority.Text = ticket.Priority.ToString(); cbUpdateCategory.Text = ticket.Category.ToString(); entryDate.Value = ticket.EntryDate.Date; dueDate.Value = ticket.DueDate.Date; } }
private void OnClientDataReceived(object sender, SimpleClient.DataReceivedEventArgs e) { BigEndianReader bigEndianReader = new BigEndianReader(e.Data.Data); NetworkMessage msg = MessageReceiver.BuildMessage((uint)e.Data.MessageId.Value, (IDataReader)bigEndianReader); if (msg == null) { this.Send(e.Data, NetworkDestinationEnum.Server); } else { if (this.Game) { if (msg.MessageId == 110U) { AuthenticationTicketMessage authenticationTicketMessage = (AuthenticationTicketMessage)msg; TicketEntry ticket = TicketsManager.GetTicket(); if (ticket.Address == "" || ticket.Port == (ushort)0) { return; } this.Ticket = authenticationTicketMessage.Ticket; this.Lang = authenticationTicketMessage.Lang; this.Server.Start(ticket.Address, (short)ticket.Port); this.Instance = ticket.Instance; this.Window = ticket.Window; this.Window.UpdateClient(this); } else { this.Send(e.Data, NetworkDestinationEnum.Server); } } else { this.Send(e.Data, NetworkDestinationEnum.Server); } this.OnMessageSent(new SyncClient.MessageSentEventArgs(msg, e.Data)); } }
private void btnSave_Click(object sender, EventArgs e) { TicketEntry ticket = getTicketDetails(); ScenarioResult ValidationResult = ticket.IsValid(); if (ValidationResult.Success) { ScenarioResult saveTicketResult = ticketManager.SaveTicket(ticket); if (saveTicketResult.Success) { MessageBox.Show("Ticket Entry Saved!", "Info", MessageBoxButtons.OK, MessageBoxIcon.Information); setDefaults(); } else { MessageBox.Show("Save Operation Failed :" + saveTicketResult.ErrorMessage, "Database Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show(ValidationResult.ErrorMessage, "Input Error", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }
private void btnUpdate_Click(object sender, EventArgs e) { TicketEntry originalEntry = (TicketEntry)gbTicketDetails.Tag; TicketEntry updatedEntry = getUpdatedEntry(); ScenarioResult scenarioResult = ticketManager.UpdateTicketEntry(originalEntry, updatedEntry); if (scenarioResult.Success) { MessageBox.Show("Ticket Entry Updated!", "Info", MessageBoxButtons.OK, MessageBoxIcon.Information); dataResults.CurrentRow.Tag = updatedEntry; dataResults.CurrentRow.Cells["dTicketNo"].Value = updatedEntry.TicketNo; dataResults.CurrentRow.Cells["dName"].Value = updatedEntry.Name; dataResults.CurrentRow.Cells["dPhone"].Value = updatedEntry.PhoneNumber; dataResults.CurrentRow.Cells["dEmail"].Value = updatedEntry.Email; dataResults.CurrentRow.Cells["dEntryDate"].Value = updatedEntry.EntryDate.Date; dataResults.CurrentRow.Cells["dStatus"].Value = updatedEntry.Status.ToString(); dataResults.CurrentRow.Cells["dPriority"].Value = updatedEntry.Priority.ToString(); } else { MessageBox.Show("Update Operation Failed :" + scenarioResult.ErrorMessage, "Database Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private TicketEntry getUpdatedEntry() { TicketEntry ticketEntry = new TicketEntry(); ticketEntry.Name = txtUpdateName.Text; ticketEntry.Address = txtUpdateAddress.Text; ticketEntry.PhoneNumber = txtUpdatePhoneNumber.Text; TicketPriority priority = TicketPriority.Normal; Enum.TryParse(cbUpdatePriority.Text, out priority); ticketEntry.Priority = priority; ticketEntry.Category = cbUpdateCategory.Text; ticketEntry.Description = txtUpdateDescription.Text; ticketEntry.EntryDate = entryDate.Value.Date; ticketEntry.DueDate = dueDate.Value.Date; ticketEntry.Resolver = txtUpdateResolver.Text; ticketEntry.TicketNo = txtUpdateTicketNo.Text; ticketEntry.Email = txtUpdateEmail.Text; TicketStatus status = TicketStatus.New; Enum.TryParse(cbUpdateStatus.Text, out status); ticketEntry.Status = status; return(ticketEntry); }
public IHttpActionResult PostTicket(TicketEntry tick) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } //create a ticket object to match db model var ticket = new Ticket { ticketNumber = tick.ticketNumber, ticketIssueDate = DateTime.Now, //issue date-time is when created, expires 6 months later by default ticketExpiryDate = DateTime.Now.AddMonths(6), ticketLessonsRemaining = tick.ticketLessonsRemaining, ticketIsValid = tick.ticketIsValid }; db.Ticket.Add(ticket); try { db.SaveChanges(); } catch (DbUpdateException) { if (TicketExists(ticket.ticketNumber)) { return(Conflict()); } throw; } return(Ok(ticket)); }
public ScenarioResult SaveTicket(TicketEntry ticket) { return(Create(ticket)); }
public ActionResult CreateConsultationTicket([Bind(Include = "DescriptionName,DescriptionDetails")] CreateConsultationTicket ticket) { // convnention for making it easier to pass messages between controllers if (TempData["Message"] != null) { ViewBag.Message += (" " + TempData["Message"].ToString()); } if (ModelState.IsValid) { OrcaContext db = new OrcaContext(); int oid = Convert.ToInt32(Session["OrcaUserID"].ToString()); // make sure the user hasn't already created a ticket with the same name if (!db.Tickets.Any(tic => (tic.OrcaUserID == oid && tic.DescriptionName == ticket.DescriptionName))) { Ticket newTicket = new Ticket(); TicketEntry newTicketEntry = new TicketEntry(); DateTime dtStamp = DateTime.Now; // enter the values for the ticket newTicket.OrcaUserID = newTicket.OrcaUserIDLastReplied = Convert.ToInt32(Session["OrcaUserID"].ToString()); newTicket.DTStamp = dtStamp; newTicket.DescriptionName = ticket.DescriptionName; newTicket.IsTicketOpen = true; db.Tickets.Add(newTicket); db.SaveChanges(); // enter the values for the first ticket entry newTicketEntry.TicketID = newTicket.TicketID; newTicketEntry.OrcaUserID = newTicket.OrcaUserID; newTicketEntry.EntryDTStamp = dtStamp; newTicketEntry.EntryText = ticket.DescriptionDetails; db.TicketEntries.Add(newTicketEntry); db.SaveChanges(); return(RedirectToAction("EditConsultationTicket", new { newTicket.TicketID, id = newTicket.TicketID })); // DOUBLE NOTE: Leaving this here for now, this was annoying and still doesn't work as I would like it, or maybe it does. // NOTE: The following RedirectToAction takes me to the right url but the id value is null so I will pass it in TempData and pick it up in the EditConsultationTicket // NOTE: Need to do this differently, but will have to do this workaround for now. I think the RoutConfig.cs needs to be edited in App_Start but I'm not sure. //TempData["TicketID"] = newTicket.TicketID; //return RedirectToAction("EditConsultationTicket", new { id = newTicket.TicketID } ); //("EditConsultationTicket", new RouteValueDictionary( new { Controller = "Consultee", Action = "EditConsultationTicket", Id = newTicket.TicketID }));// //// the following seems to mostly work as needed, but there is something odd //int id = newTicket.TicketID; //return RedirectToAction("EditConsultationTicket", new { id = id , newTicket.TicketID} ); //// the above seems to mostly work as needed, but there is something odd //int id = newTicket.TicketID; //return RedirectToAction("EditConsultationTicket", new { newTicket.TicketID, id = id }); } else { ViewBag.Message += "You have previously created a ticket with the same Short Description/Name. Please, either edit that ticket or change the Short Discription/Name of the new consultation ticket."; } } return(View(ticket)); }
public PowerballTicketGump(PowerBallTicket ticket, Mobile from, bool powerBall) : base(50, 50) { m_Ticket = ticket; m_From = from; if (ticket.Owner == null) { ticket.Owner = from; } int gameNumber = 0; if (PowerBall.Game != null) { gameNumber = PowerBall.Game.GameNumber; } int entries = ticket.Entries.Count; int yoffSet = 25; string title = String.Format("<BASEFONT SIZE=8 COLOR=#FF0000><Center>Powerball</Center></BASEFONT>"); AddBackground(50, 0, 300, 200 + (yoffSet * entries), 9270); AddHtml(65, 170 + (yoffSet * entries), 350, 20, String.Format("<Basefont Size=2>Lotto Association of {0}, All Rights Reserved</Basefont>", ServerList.ServerName), false, false); AddHtml(50, 20, 300, 30, title, false, false); AddLabel(65, 50, labelColor, String.Format("Picks: {0}", entries)); AddLabel(65, 70, labelColor, String.Format("Game: {0}", m_Ticket.GameNumber)); if (ticket.GameNumber == gameNumber && entries < maxEntries) { AddHtml(180, 50, 80, 16, "<BASEFONT COLOR=#FFFFFF>Powerball</BASEFONT>", false, false); AddRadio(260, 50, 0x25F8, 0x25FB, powerBall, 0); AddHtml(180, 80, 80, 16, "<BASEFONT COLOR=#FFFFFF>No Powerball</BASEFONT>", false, false); AddRadio(260, 80, 0x25F8, 0x25FB, !powerBall, 1); AddLabel(245, 120, labelColor, "Quick Picks"); AddButton(321, 123, 0x837, 0x838, 2, GumpButtonType.Reply, 0); //Quick Pick } if (entries > 0) { AddLabel(65, 120, labelColor, "Pick"); for (int i = 0; i < ticket.Entries.Count; ++i) { TicketEntry entry = ticket.Entries[i]; int index = i + 1; List <int> entryList = new List <int>(); entryList.Add(entry.One); entryList.Add(entry.Two); entryList.Add(entry.Three); entryList.Add(entry.Four); entryList.Add(entry.Five); AddLabel(75, 150 + (i * yoffSet), labelColor, String.Format("{0}", index.ToString())); AddHtml(270, 150 + (i * yoffSet), 50, 16, String.Format("<BASEFONT COLOR=#FF0000>{0}</BASEFONT>", entry.PowerBall > 0 ? entry.PowerBall.ToString() : "<B>-</B>"), false, false); AddHtml(310, 150 + (i * yoffSet), 50, 16, entry.Winner ? "<BASEFONT COLOR=#FFFFFF><b>*</b></BASEFONT>" : "", false, false); for (int j = entryList.Count - 1; j >= 0; --j) { AddHtml(105 + (j * 30), 150 + (i * yoffSet), 50, 16, String.Format("<BASEFONT COLOR=#FFFFFF>{0}</BASEFONT>", entryList[j]), false, false); } ColUtility.Free(entryList); } } if (entries < maxEntries && ticket.GameNumber == gameNumber) { int yStart = 130 + (yoffSet * (entries)); AddButton(75, yStart + (yoffSet + 2), 0x837, 0x838, 1, GumpButtonType.Reply, 0); AddTextEntry(100, yStart + yoffSet, 20, 16, labelColor, 1, "*"); AddTextEntry(130, yStart + yoffSet, 20, 16, labelColor, 2, "*"); AddTextEntry(160, yStart + yoffSet, 20, 16, labelColor, 3, "*"); AddTextEntry(190, yStart + yoffSet, 20, 16, labelColor, 4, "*"); AddTextEntry(220, yStart + yoffSet, 20, 16, labelColor, 5, "*"); AddTextEntry(250, yStart + yoffSet, 20, 16, labelColor, 6, "*"); } }
private void DistributeAwards(List <TicketEntry> jackpot, Dictionary <TicketEntry, int> prize) { int pot = m_Profit; if (jackpot != null && jackpot.Count > 0) { foreach (TicketEntry entry in jackpot) { if (entry.Ticket != null && entry.Ticket.Owner != null) { int amount = JackPot / jackpot.Count; m_Jackpot = true; entry.Ticket.Payout += amount; m_Payout += amount; m_Profit -= amount; PowerBall.AddToArchive(entry.Ticket.Owner, amount); m_JackpotWinners++; m_PowerBall.InvalidateProperties(); if (RewardChance > Utility.RandomDouble()) { GiveReward(entry.Ticket.Owner); } } } } if (prize != null && prize.Count > 0) { int award = 0; int match3 = 0; int match4 = 0; int match5 = 0; foreach (KeyValuePair <TicketEntry, int> kvp in prize) { if (kvp.Value == 3) { match3++; } else if (kvp.Value == 4) { match4++; } else { match5++; } } foreach (KeyValuePair <TicketEntry, int> kvp in prize) { TicketEntry entry = kvp.Key; int matches = kvp.Value; if (matches == 3) { award = (pot / 50) / match3; //2% of Pot } else if (matches == 4) { award = (pot / 20) / match4; //5% of Pot } else { award = (pot / 10) / match5; //10% of Pot } entry.Ticket.Payout += award; m_Payout += award; m_Profit -= award; } } }