public ActionResult EventChange(RootData root) { if (Request.Form["command"] != null && Request.Form["command"].ToLower() == "launch") { if (root.OnDeckSelection != null && root.OnDeckSelection.Trim().Length > 0 && root.OnDeckSelection.Contains('\t')) { string[] ods = root.OnDeckSelection.Split('\t'); string singer = ods[0].Trim(); int round = Utility.GetInt(ods[1]); if (singer.Length > 0 && round > 0) { XmlDocument doc = SessionBag.Current.RoundXml as XmlDocument; if (doc != null) { XmlNode n = doc.SelectSingleNode(string.Format("/Root/Data[SingerKey='{0}' and QueueRound='{1}']", singer, round)); if (n != null) { string path = Utility.GetXmlString(n, "QueueLink"); if (path.Length > 0) { new LaunchForm(path).Launch(); } } } } } } else { string eventvenuekey = ""; if (root.EventSelection != null && root.EventSelection.Length > 0 && root.EventSelection.IndexOf('\t') > 0) { eventvenuekey = root.EventSelection.Substring(root.EventSelection.IndexOf('\t') + 1); } if (eventvenuekey.Length > 0) { InitData d = new InitData(); InitHelper h = new InitHelper(); XmlDocument doc = SessionBag.Current.EventsXml as XmlDocument; if (doc != null) { d.EventsXml = doc.OuterXml; } doc = SessionBag.Current.VenuesXml as XmlDocument; if (doc != null) { d.VenuesXml = doc.OuterXml; } doc = SessionBag.Current.SingersXml as XmlDocument; if (doc != null) { d.SingersXml = doc.OuterXml; } h.InitialLoad(d, eventvenuekey); } } return(View(root)); }
public void InitialLoad() { InitData d = new InitData(); SingingClubClient client = new SingingClubClient(); client.Open(); d.VenuesXml = client.GeneralStore("TSCVenues", "GET", (new TSCVenues()).GetDataXml()); d.EventsXml = client.GeneralStore("TSCEvents", "GET", (new TSCEvents()).GetDataXml()); d.SingersXml = client.GeneralStore("TSCSingers", "GET", (new TSCSingers()).GetDataXml()); client.Close(); string eventvenueKey = GetLatestEventKey(d); InitialLoad(d, eventvenueKey); }
private string GetLatestEventKey(InitData d) { try { string xml = d.EventsXml; if (xml != null && xml.Trim().Length > 0) { XmlDocument doc = new XmlDocument(); doc.LoadXml(xml); XmlNodeList nodes = doc.SelectNodes("/Root/Data"); string eventkey = ""; string venuekey = ""; DateTime maxdt = DateTime.MinValue; foreach (XmlNode node in nodes) { DateTime dt = Utility.GetXmlDateTime(node, "EventDate"); if (dt > maxdt) { string evt = Utility.GetXmlString(node, "EventKey"); string vnu = Utility.GetXmlString(node, "VenueKey"); if (evt.Trim().Length > 0) { maxdt = dt; eventkey = evt.Trim(); venuekey = vnu.Trim(); } } } if (maxdt > DateTime.MinValue) { return(eventkey + '\t' + venuekey); } } } catch { } return(""); }
public void InitialLoad(InitData d, string eventvenueKey) { SingingClubClient client = new SingingClubClient(); client.Open(); d.RoundXml = ""; string eventkey = ""; string venuekey = ""; if (eventvenueKey.Trim().Length > 0) { string[] keys = eventvenueKey.Split('\t'); if (keys.Length == 2) { eventkey = keys[0].Trim(); venuekey = keys[1].Trim(); } if (eventkey.Length > 0 && venuekey.Length > 0) { SessionBag.Current.EventKey = eventkey; SessionBag.Current.VenueKey = venuekey; TSCQueue q = new TSCQueue(); q.EventKey = eventkey; q.QueueRound = -1; d.RoundXml = client.GeneralStore("TSCQueue", "GET", q.GetDataXml()); } } client.Close(); XmlDocument VenuesXml = new XmlDocument(); XmlDocument EventsXml = new XmlDocument(); XmlDocument SingersXml = new XmlDocument(); XmlDocument RoundXml = new XmlDocument(); XmlDocument VenuesXmlReference = new XmlDocument(); XmlDocument EventsXmlReference = new XmlDocument(); XmlDocument SingersXmlReference = new XmlDocument(); XmlDocument RoundXmlReference = new XmlDocument(); if (d.VenuesXml != null && d.VenuesXml.Trim().Length > 0) { VenuesXml.LoadXml(d.VenuesXml); } if (d.EventsXml != null && d.EventsXml.Trim().Length > 0) { EventsXml.LoadXml(d.EventsXml); } if (d.SingersXml != null && d.SingersXml.Trim().Length > 0) { SingersXml.LoadXml(d.SingersXml); } if (d.RoundXml != null && d.RoundXml.Trim().Length > 0) { RoundXml.LoadXml(d.RoundXml); } if (d.VenuesXml != null && d.VenuesXml.Trim().Length > 0) { VenuesXmlReference.LoadXml(d.VenuesXml); } if (d.EventsXml != null && d.EventsXml.Trim().Length > 0) { EventsXmlReference.LoadXml(d.EventsXml); } if (d.SingersXml != null && d.SingersXml.Trim().Length > 0) { SingersXmlReference.LoadXml(d.SingersXml); } if (d.RoundXml != null && d.RoundXml.Trim().Length > 0) { RoundXmlReference.LoadXml(d.RoundXml); } SessionBag.Current.VenuesXml = VenuesXml; SessionBag.Current.EventsXml = EventsXml; SessionBag.Current.SingersXml = SingersXml; SessionBag.Current.RoundXml = RoundXml; SessionBag.Current.VenuesXmlReference = VenuesXmlReference; SessionBag.Current.EventsXmlReference = EventsXmlReference; SessionBag.Current.SingersXmlReference = SingersXmlReference; SessionBag.Current.RoundXmlReference = RoundXmlReference; }
// GET: Songs private void GetSongs() { if (SessionBag.Current.SongsPageOffset == null) { SessionBag.Current.SongsPageOffset = 0; } InitData d = new InitData(); SingingClubClient client = new SingingClubClient(); try { client.Open(); TSCSongs songs = new TSCSongs(); songs.PageOrder = SessionBag.Current.SongsPageOrder; songs.PageByDisk = SessionBag.Current.SongsPageByDisk; songs.PageOffset = SessionBag.Current.SongsPageOffset; songs.PageReturn = SessionBag.Current.SongsPageReturn; //songs.PageSearchString = SessionBag.Current.SongsSearchString; string whereclause = Utility.SqlString(SessionBag.Current.SongsPageSearchString); if (whereclause != null && whereclause.Length > 0) { string srch = "title"; if (songs.PageByDisk == true) { srch = "disk"; } else if (songs.PageOrder.ToLower().Contains("artist")) { srch = "artist"; } if (whereclause.Length > 0) { if (whereclause.Length == 1) { songs.WhereClause = string.Format("{0} > '{1}'", srch, whereclause); } else { songs.WhereClause = string.Format("{0} like '%{1}%'", srch, whereclause); } } } if (songs.WhereClause.Trim().Length > 0) { songs.WhereClause += " and IsHelper = 'No'"; } else { songs.WhereClause = "IsHelper = 'No'"; } d.SongsXml = client.GeneralStore("TSCSongList_Main", "GET", songs.GetDataXml()); XmlDocument SongsXml = new XmlDocument(); XmlDocument SongsXmlReference = new XmlDocument(); if (d.SongsXml != null && d.SongsXml.Trim().Length > 0) { SongsXml.LoadXml(d.SongsXml); XmlNodeList nodes = SongsXml.SelectNodes("/Root/Data"); if (nodes.Count > 0) { SongsXmlReference.LoadXml(d.SongsXml); SetSongsPageRef(); SessionBag.Current.SongsXml = SongsXml; SessionBag.Current.SongsXmlReference = SongsXmlReference; } else { SessionBag.Current.SongsPageOffset = SessionBag.Current.SongsPageOffsetRef; } } else { SessionBag.Current.SongsPageOffset = SessionBag.Current.SongsPageOffsetRef; } client.Close(); } catch {} finally { if (client != null) { client.Close(); } } }