JDSHG6Q3GBJBEMIQRIDLYSCRUIH6PZD5P2DF6VGXAW5RRZAK73FQC DSOQZYPHBDUFWKMMDXJZCHLPP7GRHW6PS7EGTF42M6OKZCEXSY3AC FBQOBNZ6JJQXSHYQK7MCFA4U7NBNB47FXED7Y7HPRTOQVXJFIAGAC XIHPYOWDLQY2MVMVUQPH23O3TBALRG4G2CHSLWSCAYMY5NVJ32WQC IFBRAMVLQ4Z6BAEMWDIXD2V5HSZK4DHRWYZNB32IBY7ZRTNZJVCQC 3YR56Y65UIAL3J7PUXWVJMOOHYZYDIX4V54OT2TJPZ25WQ6MXHCQC UIMZBURR7KOWSREO4GDH5C2LZDUTEZBKQNYWBYSFGUTRYJ4GKSNQC 6FJACP6KUOZ4HWK4PSS5PFPGDYXZSCAWSKIARWBDGCZTPJWXA62AC EZMX4SYFEBYNJVQETRVAYONU5MIMQYTTSA5DRMTQET5B7CL6CI6AC ZD3G3BCXBEXELHH3KMXMDUQUJ4BXIF4ZSZKFIJJCRO7IDK4XPOWAC NUYITHNW2PMOOUBX2ZT3JHSK3MQUFP4W3GEZ5HFJFDOMT56R4QSAC JPN37V6Q35ZAW7A2DTGX2WJ3IJ66BAGHXHWXOGHQRHGFAOETFQ7AC THSENT35O3PIXQ343QPPE3DJGR4YVULN6YPS5ETW5PXSVGZZQIZAC 5GQNHICLSFAA7ZUFXUCNACCPAIIGK4DV2QPTONDNXLS4TJJTOFHAC J64KBLKALQ3HQCY4HJU5H6WBXTATS7TKBYNNUUSNJE7JLWLYO66QC 476KTQSS5NXVCTVLVZQRGSYD5OAFBYG75VTSWBN26Q45RSMRT5YQC JJ4SMY257MAHSJSZH5PJZMLBH3GJX5VKH2ZZSBGWLL7FWP7OA7TQC BSPWOOHZMN3RAOHGJ2A3XKUOUCFFAOXS7YR67E3AARPPPIA5YPDAC LUJ3HQBUNLRIQILJ2MU43XU46E4KLHQQ25JXLL56UJVLWA3QXJJQC Y6BVNXQ747WQKVB4JO3AHYOMBWNNJNPC6SG2UUCCZRIIXDMXJYDQC ZYS43ILR4OXI7S2AYNGYSTK3IU2UVELIWVCCWDS7RVZQDSNJMDHQC H5MQEP35FJNDLARTAB7J5GEHRNBSL6RTHFUGURG5HIVGLCG4FGUAC for subscription in &state.subscriptions {if re_pod.is_match(&subscription.title) {let podcast = Podcast::from_title(&subscription.title).chain_err(|| UNABLE_TO_RETRIEVE_PODCAST_BY_TITLE)?;let episodes = podcast.episodes();episodes[episodes.len() - ep_num].download(podcast.title()).chain_err(|| "unable to download episode")?;
if let Ok(ep_num) = e_search.parse::<usize>() {for subscription in &state.subscriptions {if re_pod.is_match(&subscription.title) {let podcast = Podcast::from_title(&subscription.title).chain_err(|| UNABLE_TO_RETRIEVE_PODCAST_BY_TITLE)?;let episodes = podcast.episodes();episodes[episodes.len() - ep_num].download(podcast.title()).chain_err(|| "unable to download episode")?;}
let ep_num: usize = ep_num_string.parse::<usize>().unwrap();let mut path: PathBuf = get_xml_dir()?;if let Err(err) = DirBuilder::new().recursive(true).create(&path) {eprintln!("Couldn't create directory: {}\nReason: {}",path.to_str().unwrap(),err);return Ok(());}for subscription in &state.subscriptions {if re_pod.is_match(&subscription.title) {let mut filename: String = subscription.title.clone();filename.push_str(".xml");path.push(filename);
if let Ok(ep_num) = ep_num_string.parse::<usize>() {let mut path: PathBuf = get_xml_dir()?;if let Err(err) = DirBuilder::new().recursive(true).create(&path) {eprintln!("Couldn't create directory: {}\nReason: {}",path.to_str().unwrap(),err);return Ok(());}for subscription in &state.subscriptions {if re_pod.is_match(&subscription.title) {let mut filename: String = subscription.title.clone();filename.push_str(".xml");path.push(filename);
let mut file: File = File::open(&path).unwrap();let mut content: Vec<u8> = Vec::new();file.read_to_end(&mut content).unwrap();
let mut file: File = File::open(&path).unwrap();let mut content: Vec<u8> = Vec::new();file.read_to_end(&mut content).unwrap();
let podcast = Podcast::from(Channel::read_from(content.as_slice()).unwrap());let episodes = podcast.episodes();let episode = episodes[episodes.len() - ep_num].clone();
let podcast = Podcast::from(Channel::read_from(content.as_slice()).unwrap());let episodes = podcast.episodes();let episode = episodes[episodes.len() - ep_num].clone();
filename = episode.title().unwrap();filename.push_str(episode.extension().unwrap());path = get_podcast_dir()?;path.push(podcast.title());path.push(filename);if path.exists() {launch_player(path.to_str().chain_err(|| UNABLE_TO_CONVERT_TO_STR)?)?;} else {launch_player(episode.url().chain_err(|| "unable to retrieve episode url")?,)?;
filename = episode.title().unwrap();filename.push_str(episode.extension().unwrap());path = get_podcast_dir()?;path.push(podcast.title());path.push(filename);if path.exists() {launch_player(path.to_str().chain_err(|| UNABLE_TO_CONVERT_TO_STR)?)?;} else {launch_player(episode.url().chain_err(|| "unable to retrieve episode url")?,)?;}return Ok(());