Implement network page

This commit is contained in:
2022-07-26 22:15:30 +01:00
parent c993bb9c6e
commit df049f822c
13 changed files with 304 additions and 15 deletions

View File

@@ -17,3 +17,30 @@ def get_irc_networks():
if not networks:
return {}
return networks
def get_irc_network(net):
url = f"irc/network/{net}"
payload = {}
network = threshold_request(url, payload)
if not network:
return {}
return network
def get_irc_relays(net):
url = f"irc/network/{net}/relays"
payload = {}
relays = threshold_request(url, payload)
if not relays:
return []
return relays
def get_irc_channels(net):
url = f"irc/network/{net}/channels"
payload = {}
channels = threshold_request(url, payload)
if not channels:
return []
return channels

View File

@@ -10,7 +10,6 @@ def construct_query(net, nicks):
# Construct the query
query_nicks = [{"match": {"nick": x}} for x in nicks]
query_should = query_nicks
# print("QUERY SHOULD", query_should)
# Get the initial query
query = {
"size": settings.META_QUERY_SIZE,

View File

@@ -11,7 +11,6 @@ def construct_query(net, nicks):
query_nicks = [{"match": {"nick": x}} for x in nicks]
query_users = [{"match": {"user": x}} for x in nicks]
query_should = query_nicks + query_users
# print("QUERY SHOULD", query_should)
# Get the initial query
query = {
"size": settings.NICKTRACE_QUERY_SIZE,

View File

@@ -1,5 +1,7 @@
import logging
from json import dumps
from operator import itemgetter
from typing import OrderedDict
import requests
from django.conf import settings
@@ -27,6 +29,12 @@ def sort_data(data):
for item in data:
if isinstance(data[item], list):
data[item].sort()
elif isinstance(data[item], dict):
# if all([isinstance(x, int) for k, v in
# data[item].items() for x in v.values()]):
sorted_item = sorted(data[item].items(), key=itemgetter(1), reverse=True)
data[item] = OrderedDict({k: v for k, v in sorted_item})
def threshold_request(url, data):