This commit is contained in:
@@ -64,16 +64,6 @@ def _parse_js_string_value(text: str, variable: str) -> str | None:
|
|||||||
return match.group(2).strip()
|
return match.group(2).strip()
|
||||||
|
|
||||||
|
|
||||||
def _parse_bool_value(text: str, variable: str) -> bool | None:
|
|
||||||
match = re.search(
|
|
||||||
rf"var\s+{re.escape(variable)}\s*=\s*(true|false)\s*;",
|
|
||||||
text,
|
|
||||||
)
|
|
||||||
if not match:
|
|
||||||
return None
|
|
||||||
return match.group(1) == "true"
|
|
||||||
|
|
||||||
|
|
||||||
def _parse_sites(text: str) -> list[str]:
|
def _parse_sites(text: str) -> list[str]:
|
||||||
match = re.search(r"var\s+sites\s*=\s*\[(.*?)\]\s*;", text, re.S)
|
match = re.search(r"var\s+sites\s*=\s*\[(.*?)\]\s*;", text, re.S)
|
||||||
if not match:
|
if not match:
|
||||||
@@ -114,8 +104,7 @@ def _compute_ring_payload(text: str) -> dict:
|
|||||||
raise ValueError(f"site not found in ring: {EURORING_SITE_URL}")
|
raise ValueError(f"site not found in ring: {EURORING_SITE_URL}")
|
||||||
|
|
||||||
ring_name = _parse_js_string_value(text, "ringName") or "Webring"
|
ring_name = _parse_js_string_value(text, "ringName") or "Webring"
|
||||||
use_index = _parse_bool_value(text, "useIndex")
|
index_url = _parse_js_string_value(text, "indexPage")
|
||||||
index_url = _parse_js_string_value(text, "indexPage") if use_index else None
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"enabled": True,
|
"enabled": True,
|
||||||
|
|||||||
@@ -88,11 +88,7 @@ block content
|
|||||||
a.block(href="https://ctp-webr.ing/" rel="external") Catppuccin webring
|
a.block(href="https://ctp-webr.ing/" rel="external") Catppuccin webring
|
||||||
a.block(href="https://ctp-webr.ing/lair/next" rel="external next") →
|
a.block(href="https://ctp-webr.ing/lair/next" rel="external next") →
|
||||||
|
|
||||||
if euroring.prev_url and euroring.next_url
|
|
||||||
.webring
|
.webring
|
||||||
a.block(href=euroring.prev_url rel="external prev") ←
|
a.block(href=euroring.prev_url rel="external prev") ←
|
||||||
if euroring.index_url
|
|
||||||
a.block(href=euroring.index_url rel="external") Euroring
|
a.block(href=euroring.index_url rel="external") Euroring
|
||||||
else
|
|
||||||
span.block= euroring.ring_name
|
|
||||||
a.block(href=euroring.next_url rel="external next") →
|
a.block(href=euroring.next_url rel="external next") →
|
||||||
|
|||||||
Reference in New Issue
Block a user