Example #1
0
        // load podcast info & tracklist
        private async void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            var data = (comboBox1.SelectedItem as ComboboxItem);

            button2.Enabled   = false;
            button4.Enabled   = false;
            button5.Enabled   = false;
            button6.Enabled   = false;
            label9.Text       = data.Title;
            label8.Text       = data.Release.ToString();
            label7.Text       = string.Empty;
            Download.FileName = data.Title + ".m4a";
            Download.Id       = data.Id;
            if (data.Url.Contains("http"))
            {
                Download.Url = (comboBox1.SelectedItem as ComboboxItem).Url;
                string json_data = await Tiesto.GetJsonData(PODCAST_TRACK_URL.Replace("$id", Download.Id));

                if (string.IsNullOrWhiteSpace(json_data))
                {
                    MessageBox.Show("Error tidak dapat mendapatkan data!\r\nCek koneksi internet anda...", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Stop);
                    return;
                }

                File.WriteAllText(localdata.TracklistJson, json_data);
                var json = JsonConvert.DeserializeObject <Tiesto.Mix>(json_data);
                listView1.Items.Clear();
                int trackCount = 0;
                foreach (var x in json.mixPodcastTracks)
                {
                    foreach (var y in x.tracks)
                    {
                        trackCount++;
                        ListViewItem item1  = new ListViewItem(y.track.id);
                        var          ts     = TimeSpan.FromSeconds(y.track.starttime);
                        string       durasi = string.Format("{0}:{1}", ts.Minutes.ToString("00"), ts.Seconds.ToString("00"));
                        item1.SubItems.Add(durasi);
                        item1.SubItems.Add(Data.Normalize(y.track.title));
                        listView1.Items.Add(item1);
                    }
                }

                if (trackCount == 0)
                {
                    label7.Text    = "0 Track";
                    isListNotEmpty = false;
                }
                else
                {
                    label7.Text    = $"{trackCount.ToString()} Tracks";
                    isListNotEmpty = true;
                }

                button2.Enabled = true;
                button4.Enabled = isListNotEmpty && (checkBox1.Checked || checkBox2.Checked);
                button5.Enabled = true;
                button6.Enabled = File.Exists("wget.exe");
            }
        }
Example #2
0
        // refresh podcast list
        private async void button1_Click(object sender, EventArgs e)
        {
            button1.Enabled = false;
            button2.Enabled = false;
            button6.Enabled = false;
            string json_data = await Tiesto.GetJsonData(PODCAST_LIST_URL);

            if (string.IsNullOrWhiteSpace(json_data))
            {
                MessageBox.Show("Error tidak dapat mendapatkan data!\r\nCek koneksi internet anda...", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Stop);
                button1.Enabled = true;
                return;
            }

            File.WriteAllText(localdata.PodcastJson, json_data);
            var json = JsonConvert.DeserializeObject <Tiesto.PodcastList>(json_data);

            comboBox1.Enabled = false;
            comboBox1.Items.Clear();
            foreach (var pod in json.podcasts)
            {
                ComboboxItem item = new ComboboxItem();
                item.Id       = pod.podcast.id;
                item.Title    = Data.Normalize(pod.podcast.title);
                item.Episode  = pod.podcast.episodeNumber.ToString();
                item.Duration = pod.podcast.duration;
                item.Url      = pod.podcast.mp4Url;
                double   drelease = Convert.ToDouble(pod.podcast.releaseDate.ToString().Substring(0, 10));
                DateTime release  = Data.UnixTimeStampToDateTime(drelease);
                item.Release = release;
                item.Year    = release.Year.ToString();
                comboBox1.Items.Add(item);
            }
            comboBox1.Enabled       = true;
            comboBox1.SelectedIndex = 0;
            comboBox1.Focus();
            button1.Enabled = true;
        }