-
Notifications
You must be signed in to change notification settings - Fork 7
Conversation
This adds a new user interface to the client. Specifically, it gives charts that show number of tickets purchased, fees prices, ticket prices, and number of tickets in mempool. A sample configuration file was also added. The HTTP server is turned on by setting the port with --httpsvrport.
I haven't tested extensively, but at least at first pass both the glide stuff and the web UI seem to be OK. |
If we eventually want to package it with the other binaries, it would make sense to embed the external files so no external data is needed. For javascript: // License for javascript plugin
<script type="text/javascript">
// paste javascript here
</script> The decred logo can be base64 encoded: <img src="data:image/png;base64,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"> Then the webui directory can default to ~/.dcrticketbuyer/webui and the csv files can be written there. |
Yeah, I thought about jamming this into Golang as constants but thought it seemed ugly. Normally the browser would cache the libs and images too, which I'm not sure will happen if they're directly written to the HTML files. I'll think about it. For now it's good to go in. |
@cjepson cool, I'll merge and open an issue for us to consider some form of consolidating those files. |
This adds a new user interface to the client. Specifically, it gives
charts that show number of tickets purchased, fees prices, ticket
prices, and number of tickets in mempool. A sample configuration
file was also added. The HTTP server is turned on by setting the port
with --httpsvrport.