コード例 #1
0
ファイル: HomeController.cs プロジェクト: dmooring52/MySource
 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));
 }
コード例 #2
0
        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);
        }
コード例 #3
0
 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("");
 }
コード例 #4
0
        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;
        }
コード例 #5
0
        // 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();
                }
            }
        }