better handling of very small fiat numbers and mBTC
authorDarrin Daigle <darrin@daiglefamily.org>
Mon, 24 Mar 2014 04:17:20 +0000 (23:17 -0500)
committerDarrin Daigle <darrin@daiglefamily.org>
Mon, 24 Mar 2014 04:17:20 +0000 (23:17 -0500)
plugins/exchange_rate.py

index 06a5822..a43e699 100644 (file)
@@ -563,17 +563,19 @@ class Plugin(BasePlugin):
         if not d.exec_():
             return
 
-        fiat = self.gui.main_window.read_amount(str(fiat_e.text()))
+        fiat = str(fiat_e.text())
 
-        if str(fiat) == "None" or str(fiat) == "0":
-            self.gui.main_window.amount_e.setText( "" )
-            return
+        if str(fiat) == "" or str(fiat) == ".":
+            fiat = "0"
 
         r = {}
         self.set_quote_text(100000000, r)
         quote = r.get(0)
         quote = quote[:-4]
-        quote = str(Decimal(fiat) / (Decimal(quote)*100000000))
+        btcamount = Decimal(fiat) / Decimal(quote)
+        if str(self.gui.main_window.base_unit()) == "mBTC":
+            btcamount = btcamount * 1000
+        quote = "%.8f"%btcamount
         if quote:
             self.gui.main_window.amount_e.setText( quote )