public void MarcarComoLido(Episodio v_objEpisodio)
        {
            int i = RetornarEpisodioListaIndice(v_objEpisodio);

            if (i > -1)
            {
                p_objLista[i].Novo = "N";
                Gravar(EnumAcaoEpisodio.MarcarComoLido);
            }
        }
        private int RetornarEpisodioListaIndice(Episodio v_objEpisodio)
        {
            int i = 0;

            foreach (Episodio p in p_objLista)
            {
                if (p.Titulo.ToLower() == v_objEpisodio.Titulo.ToLower())
                {
                    return(i);
                }
                i++;
            }
            return(-1);
        }
        private void EventoFeed_AoLerFeedEpisodio(List <FeedEpisodio> v_objListaFeedEpisodio)
        {
            string sPrimeiraImagemAdicionada = "";
            int    iQtdeEpisodiosNovos       = 0;

            Episodio objUltimoEpisodioBaixado = null;

            if (p_objLista.Count > 0)
            {
                objUltimoEpisodioBaixado = p_objLista[0];
            }

            foreach (FeedEpisodio e in v_objListaFeedEpisodio)
            {
                if (objUltimoEpisodioBaixado != null) // primeira vez que baixa qualquer episódio
                {
                    if (e.Titulo.ToLower() == objUltimoEpisodioBaixado.Titulo.ToLower())
                    {
                        break;
                    }
                }
                else
                {
                    iQtdeEpisodiosNovos += 1;
                    if (String.IsNullOrEmpty(sPrimeiraImagemAdicionada) == true)
                    {
                        sPrimeiraImagemAdicionada = e.URLImagem;
                    }
                    Episodio objNovoEp = new Episodio();
                    objNovoEp.Titulo         = e.Titulo;
                    objNovoEp.URLSite        = e.URLSite;
                    objNovoEp.URLMp3         = e.URLMp3;
                    objNovoEp.URLImagem      = e.URLImagem;
                    objNovoEp.Duracao        = e.Duracao;
                    objNovoEp.DataPublicacao = e.DataPublicacao;
                    objNovoEp.Descricao      = e.Descricao;
                    objNovoEp.Novo           = "S";
                    p_objLista.Add(objNovoEp);
                }
            }
            if (AoObterEpisodiosNovos != null)
            {
                AoObterEpisodiosNovos(p_objPodcast, iQtdeEpisodiosNovos, sPrimeiraImagemAdicionada);
            }
            Gravar(EnumAcaoEpisodio.NovosEpisodiosAdicionados);
        }
Example #4
0
        private void StackPanelEpisodio_PointerReleased(object sender, PointerRoutedEventArgs e)
        {
            var stack = sender as StackPanel;

            if (stack != null)
            {
                Classes.Episodio epi = stack.DataContext as Classes.Episodio;
                if (epi == null)
                {
                    ExibirMensagem("Falha ao recuperar o episódio selecionado.");
                }
                else
                {
                    p_objEpisodioSelecionadoLista = epi;
                    ExibirPopupEpisodio();
                }
            }
            else
            {
                ExibirMensagem("Falha ao recuperar o episódio selecionado. (2)");
            }
        }
        public async void LerTodos(Podcast v_objPodcast)
        {
            /// inicializa lista
            InicializarObjetoListaEpisodios();
            // abre arquivo de episodios
            StorageFile objArquivo = await ApplicationData.Current.LocalFolder.CreateFileAsync(p_sNomeArquivoXml, CreationCollisionOption.OpenIfExists);

            string sXMLCompleto = await FileIO.ReadTextAsync(objArquivo);

            //lê o arquivo
            XDocument objXML    = new XDocument();
            Stream    objStream = await objArquivo.OpenStreamForReadAsync();

            if (objStream.Length > 0)
            {
                objXML = XDocument.Load(objStream);
                //faz uma consulta linq
                var objConsulta = from p in objXML.Elements("episodios").Elements("item")
                                  select p;
                foreach (var objRegistro in objConsulta)
                {
                    Episodio objEp = new Episodio();
                    objEp.Titulo         = objRegistro.Element("titulo").Value.ToString();
                    objEp.URLSite        = objRegistro.Element("urlsite").Value.ToString();
                    objEp.URLMp3         = objRegistro.Element("urlmp3").Value.ToString();
                    objEp.URLImagem      = objRegistro.Element("urlimagem").Value.ToString();
                    objEp.Duracao        = objRegistro.Element("duracao").Value.ToString();
                    objEp.DataPublicacao = objRegistro.Element("datapublicacao").Value.ToString();
                    objEp.Descricao      = objRegistro.Element("descricao").Value.ToString();
                    objEp.Novo           = objRegistro.Element("novo").Value.ToString();
                    p_objLista.Add(objEp);
                }
            }
            if (AoLerTodos != null)
            {
                AoLerTodos(p_objLista);
            }
        }
 public void Adicionar(Episodio v_objEpisodio)
 {
     p_objLista.Add(v_objEpisodio);
 }