Ejemplo n.º 1
0
        public void UpdateTvShowList()
        {
            loadingLabel.Text    = "Betöltés...";
            queryLabel.Text      = "";
            programList.Enabled  = false;
            FilterButton.Enabled = false;
            List <string> selectedChannels = new List <string>();

            foreach (string item in channelSelector.CheckedItems)
            {
                selectedChannels.Add(item);
            }
            ProgramDisplay display = programDisplay;

            if (onlyReserverProgramsCheckBox.Checked)
            {
                display = ProgramDisplay.OnlyReserved;
            }
            string   channel   = channelSelector.Text;
            DateTime startTime = datePickerStart.Value;
            DateTime endTime   = datePickerEnd.Value;
            Tuple <DateTime, DateTime> dateRange = new Tuple <DateTime, DateTime>(startTime, endTime);

            Task.Run(() =>
            {
                List <TvProgram> programs = ProgramManager.RetrieveTvPrograms(dateRange, selectedChannels, display, TvProgramManager.AllAgeLimit());
                ProgramsReveiced?.Invoke(null, new TvProgramReceivedEventArgs()
                {
                    Programs = programs
                });
            });
        }
Ejemplo n.º 2
0
        ///<summary>
        ///Visszaadja a Tv műsorokat egy List adatszerekezetben.
        ///</summary>
        public List <TvProgram> RetrieveTvPrograms(DateTime time, string channel)
        {
            ProgramDisplay programDisplay = ProgramDisplay.OnlyFree | ProgramDisplay.OnlyReserved;
            AgeLimit       limit          = AgeLimit.Above12 | AgeLimit.Above16 | AgeLimit.Above18 | AgeLimit.Above6 | AgeLimit.NoLimit;

            return(RetrieveTvPrograms(time, channel, programDisplay, limit));
        }
Ejemplo n.º 3
0
        ///<summary>
        ///Visszaadja a Tv műsorokat egy List adatszerekezetben.
        ///</summary>
        public List <TvProgram> RetrieveTvPrograms(DateTime time, string channel, ProgramDisplay display, AgeLimit ageLimit)
        {
            using (TvContext context = new TvContext())
            {
                //Alap lekérés
                var shows = from p in context.Programs
                            where
                            System.Data.Entity.Core.Objects.EntityFunctions.DiffDays(p.StartTime, time) == 0
                            &&
                            (channel == null ? true : p.TvChannel == channel)
                            &&
                            ((p.AgeLimit & ageLimit) != 0)
                            select p;
                //Ha mindkettő be van pipálva akkor ne variáljunk.
                if (!((display & ProgramDisplay.OnlyFree) != 0 && (display & ProgramDisplay.OnlyReserved) != 0))
                {
                    //Szabad időpontok
                    if ((display & ProgramDisplay.OnlyFree) != 0)
                    {
                        shows = from p in shows
                                where p.Reserved == null
                                select p;
                    }
                    //Ffoglalt időpontok
                    if ((display & ProgramDisplay.OnlyReserved) != 0)
                    {
                        shows = from p in shows
                                where p.Reserved != null
                                select p;
                    }
                    //Ha egyik sincs kipipálva
                    if (display == 0)
                    {
                        shows = from p in shows
                                where false
                                select p;
                    }
                }

                //Tv Műsorok visszaadása
                List <TvProgram> programs = new List <TvProgram>();
                foreach (TvProgram item in shows)
                {
                    programs.Add(item);
                }
                return(programs);
            }
        }
        private void UpdateDisplayChart()
        {
            TimerChart displayChart = UserData.GetChartViaIndex(chartIndex);

            ChartDateDisplay.Content = displayChart.recordedDate.ToLongDateString();

            ProgramDisplay[] displayArray = new ProgramDisplay[programs.Length + 1];
            lock (programs)
            {
                for (int i = 0; i < programs.Length; i++)
                {
                    displayArray[i] = new ProgramDisplay(programs[i].customName, displayChart.GetProgramTime(programs[i]));
                }
                displayArray[displayArray.Length - 1] = new ProgramDisplay("All Applications", displayChart.GetTotalTime());
            }

            MainDisplay.ItemsSource = displayArray;
        }
Ejemplo n.º 5
0
 private void UpdateProgramDisplay(object sender, EventArgs e)
 {
     if (reserveProgramDisplayMenuItem.Checked)
     {
         programDisplay = programDisplay | ProgramDisplay.OnlyReserved;
     }
     else
     {
         programDisplay = programDisplay & ~ProgramDisplay.OnlyReserved;
     }
     if (freeProgramDisplayMenuItem.Checked)
     {
         programDisplay = programDisplay | ProgramDisplay.OnlyFree;
     }
     else
     {
         programDisplay = programDisplay & ~ProgramDisplay.OnlyFree;
     }
     UpdateTvShowList();
 }
Ejemplo n.º 6
0
        public List <TvProgram> RetrieveTvPrograms(Tuple <DateTime, DateTime> dateRange, List <string> channels, ProgramDisplay display, AgeLimit ageLimit)
        {
            LinkedList <TvProgram> list = new LinkedList <TvProgram>();
            DateTime startDay           = dateRange.Item1.Date;
            DateTime endDay             = dateRange.Item2.Date;

            while (startDay.Date <= endDay.Date)
            {
                foreach (string channel in channels)
                {
                    foreach (TvProgram program in RetrieveTvPrograms(startDay, channel, display, ageLimit))
                    {
                        list.AddFirst(program);
                    }
                    startDay.AddDays(1);
                }
                startDay = startDay.AddDays(1);
            }

            return(list.ToList());
        }
Ejemplo n.º 7
0
        ///<summary>
        ///Visszaadja a Tv műsorokat egy List adatszerekezetben.
        ///</summary>
        public List <TvProgram> RetrieveTvPrograms(DateTime time, string channel, AgeLimit ageLimit)
        {
            ProgramDisplay programDisplay = ProgramDisplay.OnlyFree | ProgramDisplay.OnlyReserved;

            return(RetrieveTvPrograms(time, channel, programDisplay, ageLimit));
        }
Ejemplo n.º 8
0
        ///<summary>
        ///Visszaadja a Tv műsorokat egy List adatszerekezetben.
        ///</summary>
        public List <TvProgram> RetrieveTvPrograms(DateTime time, string channel, ProgramDisplay display)
        {
            AgeLimit limit = AgeLimit.Above12 | AgeLimit.Above16 | AgeLimit.Above18 | AgeLimit.Above6 | AgeLimit.NoLimit;

            return(RetrieveTvPrograms(time, channel, display, limit));
        }