refactor: Avoid importing all js functions.
This commit is contained in:
		
							parent
							
								
									ef0f5ea1ea
								
							
						
					
					
						commit
						eb30369bd4
					
				@ -33,20 +33,8 @@ from .basicswap_util import (
 | 
			
		||||
    strAddressType,
 | 
			
		||||
)
 | 
			
		||||
from .js_server import (
 | 
			
		||||
    js_coins,
 | 
			
		||||
    js_error,
 | 
			
		||||
    js_wallets,
 | 
			
		||||
    js_offers,
 | 
			
		||||
    js_sentoffers,
 | 
			
		||||
    js_bids,
 | 
			
		||||
    js_sentbids,
 | 
			
		||||
    js_network,
 | 
			
		||||
    js_revokeoffer,
 | 
			
		||||
    js_smsgaddresses,
 | 
			
		||||
    js_rates_list,
 | 
			
		||||
    js_rates,
 | 
			
		||||
    js_rate,
 | 
			
		||||
    js_index,
 | 
			
		||||
    js_url_to_function,
 | 
			
		||||
)
 | 
			
		||||
from .ui.util import (
 | 
			
		||||
    PAGE_LIMIT,
 | 
			
		||||
@ -665,22 +653,7 @@ class HttpHandler(BaseHTTPRequestHandler):
 | 
			
		||||
        if len(url_split) > 1 and url_split[1] == 'json':
 | 
			
		||||
            try:
 | 
			
		||||
                self.putHeaders(status_code, 'text/plain')
 | 
			
		||||
                func = js_index
 | 
			
		||||
                if len(url_split) > 2:
 | 
			
		||||
                    func = {
 | 
			
		||||
                        'coins': js_coins,
 | 
			
		||||
                        'wallets': js_wallets,
 | 
			
		||||
                        'offers': js_offers,
 | 
			
		||||
                        'sentoffers': js_sentoffers,
 | 
			
		||||
                        'bids': js_bids,
 | 
			
		||||
                        'sentbids': js_sentbids,
 | 
			
		||||
                        'network': js_network,
 | 
			
		||||
                        'revokeoffer': js_revokeoffer,
 | 
			
		||||
                        'smsgaddresses': js_smsgaddresses,
 | 
			
		||||
                        'rate': js_rate,
 | 
			
		||||
                        'rates': js_rates,
 | 
			
		||||
                        'rateslist': js_rates_list,
 | 
			
		||||
                    }.get(url_split[2], js_index)
 | 
			
		||||
                func = js_url_to_function(url_split)
 | 
			
		||||
                return func(self, url_split, post_string, is_json)
 | 
			
		||||
            except Exception as ex:
 | 
			
		||||
                if self.server.swap_client.debug is True:
 | 
			
		||||
 | 
			
		||||
@ -389,3 +389,22 @@ def js_rate(self, url_split, post_string, is_json):
 | 
			
		||||
 | 
			
		||||
def js_index(self, url_split, post_string, is_json):
 | 
			
		||||
    return bytes(json.dumps(self.server.swap_client.getSummary()), 'UTF-8')
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def js_url_to_function(url_split):
 | 
			
		||||
    if len(url_split) > 2:
 | 
			
		||||
        return {
 | 
			
		||||
            'coins': js_coins,
 | 
			
		||||
            'wallets': js_wallets,
 | 
			
		||||
            'offers': js_offers,
 | 
			
		||||
            'sentoffers': js_sentoffers,
 | 
			
		||||
            'bids': js_bids,
 | 
			
		||||
            'sentbids': js_sentbids,
 | 
			
		||||
            'network': js_network,
 | 
			
		||||
            'revokeoffer': js_revokeoffer,
 | 
			
		||||
            'smsgaddresses': js_smsgaddresses,
 | 
			
		||||
            'rate': js_rate,
 | 
			
		||||
            'rates': js_rates,
 | 
			
		||||
            'rateslist': js_rates_list,
 | 
			
		||||
        }.get(url_split[2], js_index)
 | 
			
		||||
    return js_index
 | 
			
		||||
 | 
			
		||||
@ -22,31 +22,31 @@
 | 
			
		||||
 | 
			
		||||
{% if ws_url %}
 | 
			
		||||
<script>
 | 
			
		||||
    var ws = new WebSocket("{{ ws_url }}"),
 | 
			
		||||
        floating_div = document.createElement('div');
 | 
			
		||||
        floating_div.classList.add('floatright');
 | 
			
		||||
        messages = document.createElement('ul');
 | 
			
		||||
        messages.setAttribute('id', 'ul_updates');
 | 
			
		||||
    ws.onmessage = function (event) {
 | 
			
		||||
        let json = JSON.parse(event.data);
 | 
			
		||||
var ws = new WebSocket("{{ ws_url }}"),
 | 
			
		||||
    floating_div = document.createElement('div');
 | 
			
		||||
    floating_div.classList.add('floatright');
 | 
			
		||||
    messages = document.createElement('ul');
 | 
			
		||||
    messages.setAttribute('id', 'ul_updates');
 | 
			
		||||
ws.onmessage = function (event) {
 | 
			
		||||
    let json = JSON.parse(event.data);
 | 
			
		||||
 | 
			
		||||
        let event_message = 'Unknown event';
 | 
			
		||||
        if (json['event'] == 'new_offer') {
 | 
			
		||||
            event_message = '<a href=/offer/' + json['offer_id'] + '>New offer</a>';
 | 
			
		||||
        } else
 | 
			
		||||
        if (json['event'] == 'new_bid') {
 | 
			
		||||
            event_message = '<a href=/bid/' + json['bid_id'] + '>New bid</a> on offer <a href=/offer/' + json['offer_id'] + '>' + json['offer_id'] + '</a>';
 | 
			
		||||
        } else
 | 
			
		||||
        if (json['event'] == 'bid_accepted') {
 | 
			
		||||
            event_message = '<a href=/bid/' + json['bid_id'] + '>Bid accepted</a>';
 | 
			
		||||
        }
 | 
			
		||||
    let event_message = 'Unknown event';
 | 
			
		||||
    if (json['event'] == 'new_offer') {
 | 
			
		||||
        event_message = '<a href=/offer/' + json['offer_id'] + '>New offer</a>';
 | 
			
		||||
    } else
 | 
			
		||||
    if (json['event'] == 'new_bid') {
 | 
			
		||||
        event_message = '<a href=/bid/' + json['bid_id'] + '>New bid</a> on offer <a href=/offer/' + json['offer_id'] + '>' + json['offer_id'] + '</a>';
 | 
			
		||||
    } else
 | 
			
		||||
    if (json['event'] == 'bid_accepted') {
 | 
			
		||||
        event_message = '<a href=/bid/' + json['bid_id'] + '>Bid accepted</a>';
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
        let messages = document.getElementById('ul_updates'),
 | 
			
		||||
            message = document.createElement('li');
 | 
			
		||||
        message.innerHTML = event_message;
 | 
			
		||||
        messages.appendChild(message);
 | 
			
		||||
    };
 | 
			
		||||
    floating_div.appendChild(messages);
 | 
			
		||||
    document.body.appendChild(floating_div);
 | 
			
		||||
    let messages = document.getElementById('ul_updates'),
 | 
			
		||||
        message = document.createElement('li');
 | 
			
		||||
    message.innerHTML = event_message;
 | 
			
		||||
    messages.appendChild(message);
 | 
			
		||||
};
 | 
			
		||||
floating_div.appendChild(messages);
 | 
			
		||||
document.body.appendChild(floating_div);
 | 
			
		||||
</script>
 | 
			
		||||
{% endif %}
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user