3 <title>fedi-block-api{% if domain %} {{domain}}{% endif %}</title>
4 <link rel="alternate" type="application/rss+xml" title="RSS Feed for {{base_url}}" href="{base_url}/rss" />
7 background-color: #000022;
13 background-color: #1c1c3c;
20 background-color: #1c1c3c;
28 background-color: #2d2d4d;
31 table tr:nth-of-type(2n) {
32 background-color: #1c1c3c;
37 .block_level table td:nth-of-type(1), .block_level table td:nth-of-type(2),
38 .block_level table td:nth-of-type(4), .block_level table td:nth-of-type(5) {
42 background-color: #2d2d4d;
50 text-decoration: none;
56 input[type="text"], input[type="submit"] {
64 input[type="text"]:hover {
68 input[type="submit"] {
72 input[type="submit"]:hover {
77 text-decoration: underline dotted;
84 <h1>Top {{blockers}} defederating instances</h1>
86 <h1>Top {{blocked}} defederated instances</h1>
88 <h1>Top {{reference}} referencing instances</h1>
90 <div class="scoreboard">
94 <th>{% if reference %}References{% else %}Blocks{% endif %}</th>
95 {% for entry in scores %}
97 <td>{{loop.index}}</td>
99 <img src="https://proxy.duckduckgo.com/ip3/{{entry['domain']}}.ico" width="16" />
100 <b><a href="../?{% if blockers %}reverse{% elif blocked %}domain{% endif %}={{entry['domain']}}" rel="nofollow noopener noreferrer">{{entry['domain']}}</a></b>
101 <a class="listlink" href="https://{{entry['domain']}}" rel="external" target="_blank">↗</a>
103 <td>{{entry['highscore']}}</td>
108 {% elif reason or domain or reverse %}
110 <h1>Instances that use "{{reason}}" in their reason</h1>
112 <h1>Instances that are blocked by {{reverse}}</h1>
114 <h1>Instances that block {{domain}}</h1>
116 {% for block_level in blocks %}
117 <div class="block_level" id="{{block_level}}">
118 <h2>{{block_level}} ({{blocks[block_level]|length}})</h2>
121 <th>{% if block_level == 'accept' %}Accepted{% else %}Blocked{% endif %}</th>
125 {% for block in blocks[block_level] %}
128 <b><a href="https://{{block['blocker']}}" rel="nofollow noopener noreferrer">{{block['blocker']}}</a></b>
129 {% if reason or domain %}<a class="listlink" href="./?reverse={{block['blocker']}}">↘</a>{% endif %}
132 <b><a href="https://{{domain or block['blocked']}}" rel="nofollow noopener noreferrer">{{block['blocked']}}</a></b>
133 {% if reason or reverse %}<a class="listlink" href="./?domain={{domain or block['blocked']}}">↘</a>{% endif %}
135 <td>{{block['reason']}}</td>
136 <td>{{block['first_added']}}</td>
137 <td>{{block['last_seen']}}</td>
144 <h1>Enter a Domain</h1>
146 <input type="text" name="domain" placeholder="example.com" required="required" />
147 <input type="submit" value="Submit" />
149 <h1>Enter a Reason</h1>
151 <input type="text" name="reason" placeholder="free speech" required="required" />
152 <input type="submit" value="Submit" />
154 <h1>Reverse search</h1>
156 <input type="text" name="reverse" placeholder="example.com" required="required" />
157 <input type="submit" value="Submit" />
160 <a href="./scoreboard?blockers=50">top 50 defederating</a> /
161 <a href="./scoreboard?blocked=50">defederated instances</a> /
162 <a href="./scoreboard?reference=50">referencing instances</a>
165 known instances: {{info.known_instances}}<br/>
166 indexed instances: {{info.indexed_instances}}<br/>
167 blocks recorded: {{info.blocks_recorded}}<br/>
168 source code: <a href="https://git.mxchange.org/?p=fba.git;a=summary" rel="source" target="_blank">git.mxchange.org</a><br /><br />