Exemple #1
0
        public List <IRasporedEmisija> IspisPremaVrsti(TvProgrami program, DanComposite dan, int vrsta)
        {
            List <IRasporedEmisija> prikaz   = Komponenta.IspisPremaVrsti(program, dan, vrsta);
            IAbstractIterator       iterator = new ConcreateIteratorVrsta(prikaz, vrsta);

            if (iterator.hasNext())
            {
                if (!postaviZaglavlje)
                {
                    Console.Write(new string('-', 122) + "\n");
                    Console.Write($"|{"Program",-20}|{"Dan",-15}|{"Naziv Emisije",-40}|{"Pocetak",20}|{"Kraj",20}\n");
                    Console.Write(new string('-', 122) + "\n");
                    postaviZaglavlje = true;
                }
            }

            IRasporedEmisija raspored = iterator.First();

            while (!iterator.IsDone)
            {
                Console.Write($"|{program.Naziv,-20}|{dan.Dan.Naziv,-15}|{((EmisijaLeaf) raspored).Emisija.Emisija.naziv,-40}|{((EmisijaLeaf) raspored).Emisija.Pocetak,20}|{((EmisijaLeaf) raspored).Emisija.Kraj,20}\n");
                raspored = iterator.Next();
            }
            return(null);
        }
        public void emisijeSPocetkom(List <Program> listaProgram, List <EmitiranjeEmisija> listaEmisija)
        {
            for (int i = 1; i <= 7; i++)
            {
                List <EmitiranjeEmisija> listaObrisanih          = new List <EmitiranjeEmisija>();
                List <Program>           emisijeSDanimaIPocetkom = listaProgram.Where(e => e.DaniUTjednu != null && e.Pocetak != TimeSpan.Zero && e.DaniUTjednu.Contains(i)).OrderBy(e => e.Pocetak).ToList();

                List <Program> emisijeSDanimaBezPocetka = listaProgram.Where(e => e.DaniUTjednu != null && e.Pocetak == TimeSpan.Zero && e.DaniUTjednu.Contains(i)).OrderBy(e => e.Pocetak).ToList();

                List <Program> emisijeBezDanaIBezPocetka = listaProgram.Where(e => e.DaniUTjednu == null && e.Pocetak == TimeSpan.Zero).ToList();

                DanComposite dan = ((TvProgrami)RasporedEmisija).getDan(i);
                if (emisijeSDanimaBezPocetka.Count != 0 || emisijeSDanimaIPocetkom.Count != 0)
                {
                    DodajEmisijeDanu(listaEmisija, emisijeSDanimaIPocetkom, dan, listaObrisanih);
                    DodajEmisijeDanu(listaEmisija, emisijeSDanimaBezPocetka, dan, listaObrisanih);
                    DodajEmisijeBezDana(listaEmisija, emisijeBezDanaIBezPocetka, dan);
                }
                else
                {
                    foreach (var emisija in emisijeBezDanaIBezPocetka.ToList())
                    {
                        EmitiranjeEmisija _emisija = listaEmisija.FirstOrDefault(e => e.Emisija.Id == emisija.Id);
                        _emisija.Pocetak = TvKucaSingleton.GetInstance().dohvatiPocetak();
                        _emisija.Kraj    = _emisija.Pocetak + TimeSpan.FromMinutes(_emisija.Emisija.trajanje);
                        dan.Add(_emisija);
                        listaEmisija.Remove(_emisija);
                        emisijeBezDanaIBezPocetka.Remove(emisija);
                    }
                }
            }
        }
        public List <IRasporedEmisija> IspisPremaVrsti(TvProgrami program, DanComposite dan, int vrsta)
        {
            List <IRasporedEmisija> prikaz = Komponenta.IspisPremaVrsti(program, dan, vrsta);
            List <IRasporedEmisija> lista  = new List <IRasporedEmisija>();
            bool dodanaEmisija             = false;

            foreach (EmitiranjeEmisija emisija in prikaz)
            {
                if (vrsta == emisija.Emisija.VrstaEmisije)
                {
                    lista.Add(emisija);
                    dodanaEmisija = true;
                }
            }
            IAbstractIterator iterator = new ConcreateIteratorVrsta(lista);

            if (iterator.hasNext())
            {
                if (!postaviZaglavlje)
                {
                    Console.Write(new string('-', 122) + "\n");
                    Console.Write($"|{"Program",-20}|{"Dan",-15}|{"Naziv Emisije",-40}|{"Pocetak",20}|{"Kraj",20}\n");
                    Console.Write(new string('-', 122) + "\n");
                    postaviZaglavlje = true;
                }
            }
            IRasporedEmisija raspored = iterator.First();

            while (!iterator.IsDone)
            {
                Console.Write($"|{program.Naziv,-20}|{dan.Dan.Naziv,-15}|{((EmitiranjeEmisija) raspored).Emisija.naziv,-40}|{((EmitiranjeEmisija) raspored).Pocetak,20}|{((EmitiranjeEmisija) raspored).Kraj,20}\n");
                raspored = iterator.Next();
            }
            return(null);
        }
Exemple #4
0
        public void emisijeSPocetkom(List <Program> listaProgram, List <EmitiranjeEmisija> listaEmisija)
        {
            for (int i = 1; i <= 7; i++)
            {
                List <EmitiranjeEmisija> listaObrisanih          = new List <EmitiranjeEmisija>();
                List <Program>           emisijeSDanimaIPocetkom = listaProgram.Where(e => e.DaniUTjednu != null && e.Pocetak != TimeSpan.Zero && e.DaniUTjednu.Contains(i)).OrderBy(e => e.Pocetak).ToList();

                List <Program> emisijeSDanimaBezPocetka = listaProgram.Where(e => e.DaniUTjednu != null && e.Pocetak == TimeSpan.Zero && e.DaniUTjednu.Contains(i)).OrderBy(e => e.Pocetak).ToList();

                List <Program> emisijeBezDanaIBezPocetka = listaProgram.Where(e => e.DaniUTjednu == null && e.Pocetak == TimeSpan.Zero).ToList();

                DanComposite dan = ((TvProgrami)RasporedEmisija).getDan(i);

                DodajEmisijeDanu(listaEmisija, emisijeSDanimaIPocetkom, dan, listaObrisanih);
                DodajEmisijeDanu(listaEmisija, emisijeSDanimaBezPocetka, dan, listaObrisanih);
                DodajEmisijeBezDana(listaEmisija, emisijeBezDanaIBezPocetka, dan);
            }
        }
        public List <IRasporedEmisija> IspisCijelogRasporeda(TvProgrami program, DanComposite dan)
        {
            List <IRasporedEmisija> prikaz   = Komponenta.IspisCijelogRasporeda(program, dan);
            IAbstractIterator       iterator = new ConcreateIterator(prikaz);

            if (iterator.hasNext())
            {
                if (!postaviZaglavlje)
                {
                    Console.Write(new string('-', 132) + "\n");
                    Console.Write($"|{"Program",-20}|{"Dan",-15}|{"Naziv Emisije",-40}|{"Pocetak",20}|{"Kraj",20}|{"Redni broj",10}|\n");
                    Console.Write(new string('-', 132) + "\n");
                    postaviZaglavlje = true;
                }
            }
            IRasporedEmisija raspored = iterator.First();

            while (!iterator.IsDone)
            {
                Console.Write($"|{program.Naziv,-20}|{dan.Dan.Naziv,-15}|{((EmitiranjeEmisija)raspored).Emisija.naziv,-40}|{((EmitiranjeEmisija)raspored).Pocetak,20}|{((EmitiranjeEmisija)raspored).Kraj,20}|{((EmitiranjeEmisija)raspored).RedniBroj,10}\n");
                raspored = iterator.Next();
            }
            return(null);
        }
Exemple #6
0
        private static void DodajEmisijeDanu(List <EmitiranjeEmisija> listaEmisija, List <Program> emisijeSDanimaIPocetkom, DanComposite dan,
                                             List <EmitiranjeEmisija> listaObrisanih)
        {
            foreach (var emisija in emisijeSDanimaIPocetkom)
            {
                EmitiranjeEmisija _emisija = listaEmisija.FirstOrDefault(e => e.Emisija.Id == emisija.Id);

                dan.Add(new EmisijaLeaf(_emisija));
                listaObrisanih.Add(_emisija);
                listaEmisija.Remove(_emisija);
            }

            listaEmisija.AddRange(listaObrisanih);
        }
Exemple #7
0
 private static void DodajEmisijeBezDana(List <EmitiranjeEmisija> listaEmisija, List <Program> emisijeBezDanaIBezPocetka, DanComposite dan)
 {
     if (emisijeBezDanaIBezPocetka.Count != 0)
     {
         foreach (var emisija in emisijeBezDanaIBezPocetka.ToList())
         {
             EmitiranjeEmisija _emisija = listaEmisija.FirstOrDefault(e => e.Emisija.Id == emisija.Id);
             if (_emisija != null)
             {
                 dan.Add(new EmisijaLeaf(_emisija));
                 listaEmisija.Remove(_emisija);
                 emisijeBezDanaIBezPocetka.Remove(emisija);
             }
         }
     }
 }