Towards mypy cleanliness.
[kiosk.git] / stock_renderer.py
index 2ff6895cbd30d69bb1151c7e99e5d03471fd6aed..16273858ad3353e426f42ddfbe6b4670633adcb4 100644 (file)
@@ -11,10 +11,14 @@ class stock_quote_renderer(renderer.debuggable_abstaining_renderer):
     """Render the stock prices page."""
 
     def __init__(
-        self, name_to_timeout_dict: Dict[str, int], symbols: List[str]
+            self,
+            name_to_timeout_dict: Dict[str, int],
+            symbols: List[str],
+            display_subs: Dict[str, str] = None,
     ) -> None:
         super(stock_quote_renderer, self).__init__(name_to_timeout_dict, False)
         self.symbols = symbols
+        self.display_subs = display_subs
 
     def debug_prefix(self) -> str:
         return "stock"
@@ -68,7 +72,6 @@ class stock_quote_renderer(renderer.debuggable_abstaining_renderer):
             f.write("<TABLE WIDTH=99%>")
             symbols_finished = 0
             for symbol in self.symbols:
-                # print(f"--- Symbol: {symbol} ---")
                 ticker = yf.Ticker(symbol)
                 print(type(ticker))
                 # print(ticker.get_info())
@@ -90,13 +93,15 @@ class stock_quote_renderer(renderer.debuggable_abstaining_renderer):
                         f.write("</TR>")
                         f.write("<TR>")
                 symbols_finished += 1
+                if self.display_subs is not None and symbol in self.display_subs:
+                    symbol = self.display_subs[symbol]
                 f.write(
                     f"""
 <TD WIDTH=20% HEIGHT=150 BGCOLOR="{cell_color}">
   <!-- Container -->
   <DIV style="position:relative;
               height:150px;">
-    <!-- Symbol -->
+    <!-- Symbol {symbol} -->
     <DIV style="position:absolute;
                 bottom:50;
                 right:-20;
@@ -125,7 +130,6 @@ class stock_quote_renderer(renderer.debuggable_abstaining_renderer):
             f.write("</TR></TABLE>")
         return True
 
-
 # Test
-# x = stock_quote_renderer({}, ["MSFT", "GOOG", "GBTC", "OPTAX", "VNQ"])
-# x.periodic_render(None)
+#x = stock_quote_renderer({}, ["MSFT", "GOOG", "BTC-USD", "OPTAX", "GC=F", "VNQ"], { "BTC-USD": "BTC", "GC=F": "GOLD" })
+#x.periodic_render(None)