Bitcoin_QR_Popup.Form1.fetch_bitcoin_rate C# (CSharp) Method

fetch_bitcoin_rate() private method

private fetch_bitcoin_rate ( ) : void
return void
        private void fetch_bitcoin_rate()
        {
            int refetch_interval_minutes = 60;
            bool need_to_fetch = false;
            if (!exchange_rates.Keys.Contains("BTC"))
            {
                exchange_rates["BTC"] = new exchange_rate();
                need_to_fetch = true;
            }
            else if (exchange_rates["BTC"].time_fetched.AddMinutes(refetch_interval_minutes) < DateTime.Now)
            {
                need_to_fetch = true;
            }
            if (need_to_fetch)
            {
                string url = "http://www.bitcoincharts.com/t/weighted_prices.json";
                string data = urlread(url);
                JObject j = JsonConvert.DeserializeObject<JObject>(data);
                exchange_rates["BTC"].rate = 1.0 / Convert.ToDouble(j["USD"]["24h"].ToString());
                exchange_rates["BTC"].time_fetched = DateTime.Now;
                save_exchange_rates_in_settings();
            }
        }