Remove porn report category

This commit is contained in:
2024-10-25 11:24:19 +02:00
parent 5917222d86
commit 4059f45996
6 changed files with 29 additions and 29 deletions

View File

@@ -61,7 +61,6 @@ let set_status = async (action, report_type) => {
</div>
<div class="type_list">
<button on:click={() => {set_status("grant", "copyright")}}>copyright</button>
<button on:click={() => {set_status("grant", "porn")}}>porn</button>
<button on:click={() => {set_status("grant", "terrorism")}}>terrorism</button>
<button on:click={() => {set_status("grant", "gore")}}>gore</button>
<button on:click={() => {set_status("grant", "child_abuse")}}>child_abuse</button>

View File

@@ -16,7 +16,6 @@ let block_form = {
type: "radio",
radio_values: [
"copyright",
"porn",
"child_abuse",
"zoophilia",
"terrorism",

View File

@@ -13,7 +13,6 @@ const abuse_types = [
"malware",
"doxing",
"revenge_porn",
"porn",
]
let loading = true

View File

@@ -8,6 +8,7 @@ $: update_peers(peers)
let update_peers = (peers) => {
for (let peer of peers) {
peer.avg_network_total = peer.avg_network_tx + peer.avg_network_rx
peer.usage_percent = (peer.avg_network_tx / peer.port_speed) * 100
peer.network_ratio = Math.max(peer.avg_network_tx, peer.avg_network_rx) / Math.min(peer.avg_network_tx, peer.avg_network_rx)
if (peer.network_ratio === NaN) {
peer.network_ratio = 1
@@ -55,7 +56,6 @@ let sort = (field) => {
<thead>
<tr>
<td><SortButton field="hostname" active_field={sort_field} asc={asc} sort_func={sort}>Hostname</SortButton></td>
<td><SortButton field="ip" active_field={sort_field} asc={asc} sort_func={sort}>Address</SortButton></td>
<td><SortButton field="unreachable_count" active_field={sort_field} asc={asc} sort_func={sort}>Err</SortButton></td>
<td><SortButton field="load_15_min" active_field={sort_field} asc={asc} sort_func={sort}>Load</SortButton></td>
<td><SortButton field="latency" active_field={sort_field} asc={asc} sort_func={sort}>Ping</SortButton></td>
@@ -63,6 +63,7 @@ let sort = (field) => {
<td><SortButton field="avg_network_rx" active_field={sort_field} asc={asc} sort_func={sort}>RX</SortButton></td>
<td><SortButton field="network_ratio" active_field={sort_field} asc={asc} sort_func={sort}>Rat</SortButton></td>
<td><SortButton field="avg_network_total" active_field={sort_field} asc={asc} sort_func={sort}>Tot</SortButton></td>
<td><SortButton field="usage_percent" active_field={sort_field} asc={asc} sort_func={sort}>Use%</SortButton></td>
<td><SortButton field="free_space" active_field={sort_field} asc={asc} sort_func={sort}>Free</SortButton></td>
<td><SortButton field="min_free_space" active_field={sort_field} asc={asc} sort_func={sort}>Min free</SortButton></td>
</tr>
@@ -77,7 +78,6 @@ let sort = (field) => {
animate:flip={{duration: 1000}}
>
<td>{peer.hostname}</td>
<td>{peer.ip}</td>
<td>{peer.unreachable_count}</td>
<td>{peer.load_1_min.toFixed(1)} / {peer.load_5_min.toFixed(1)} / {peer.load_15_min.toFixed(1)}</td>
<td>{(peer.latency/1000).toFixed(3)}</td>
@@ -85,13 +85,14 @@ let sort = (field) => {
<td>{formatDataVolume(peer.avg_network_rx, 3)}/s</td>
<td>{peer.network_ratio.toFixed(2)}</td>
<td>{formatDataVolume(peer.avg_network_total, 3)}/s</td>
<td>{Math.round(peer.usage_percent)}%</td>
<td>{formatDataVolume(peer.free_space, 4)}</td>
<td>{formatDataVolume(peer.min_free_space, 3)}</td>
</tr>
{/each}
<tr>
<td colspan="2">Total ({peers.length})</td>
<td>Total ({peers.length})</td>
<td>{peers.reduce((acc, val) => acc += val.unreachable_count, 0)}</td>
<td>
{peers.reduce((acc, val) => acc += val.load_1_min, 0).toFixed(1)} /
@@ -103,11 +104,12 @@ let sort = (field) => {
<td>{formatDataVolume(peers.reduce((acc, val) => acc += val.avg_network_rx, 0), 3)}/s</td>
<td>{peers.reduce((acc, val) => acc += val.network_ratio, 0).toFixed(2)}</td>
<td>{formatDataVolume(peers.reduce((acc, val) => acc += val.avg_network_total, 0), 3)}/s</td>
<td>{Math.round(peers.reduce((acc, val) => acc += val.usage_percent, 0))}%</td>
<td>{formatDataVolume(peers.reduce((acc, val) => acc += val.free_space, 0), 4)}</td>
<td>{formatDataVolume(peers.reduce((acc, val) => acc += val.min_free_space, 0), 3)}</td>
</tr>
<tr>
<td colspan="2">Average</td>
<td>Average</td>
<td></td>
<td>
{(peers.reduce((acc, val) => acc += val.load_1_min, 0) / peers.length).toFixed(1)} /
@@ -119,6 +121,7 @@ let sort = (field) => {
<td>{formatDataVolume(peers.reduce((acc, val) => acc += val.avg_network_rx, 0) / peers.length, 3)}/s</td>
<td>{(peers.reduce((acc, val) => acc += val.network_ratio, 0) / peers.length).toFixed(2)}</td>
<td>{formatDataVolume(peers.reduce((acc, val) => acc += val.avg_network_total, 3) / peers.length, 4)}/s</td>
<td>{Math.round(peers.reduce((acc, val) => acc += val.usage_percent, 0) / peers.length)}%</td>
<td>{formatDataVolume(peers.reduce((acc, val) => acc += val.free_space, 0) / peers.length, 4)}</td>
<td>{formatDataVolume(peers.reduce((acc, val) => acc += val.min_free_space, 0) / peers.length, 3)}</td>
</tr>

View File

@@ -31,38 +31,41 @@ const filter_app = type => {
const abuse_categories = [
{
type: "porn", name: "Porn",
desc: `Sexually explicit videos or images`,
filter: filter_visual,
}, {
type: "terrorism", name: "Terrorism",
type: "terrorism",
name: "Terrorism",
desc: `Videos, images or audio fragments showing or promoting the use
of intentional violence to achieve political aims`,
filter: filter_audiovisual,
}, {
type: "gore", name: "Gore",
type: "gore",
name: "Gore",
desc: `Graphic and shocking videos or images depicting severe harm to
humans (or animals)`,
filter: filter_visual,
}, {
type: "child_abuse", name: "Child abuse",
type: "child_abuse",
name: "Child abuse",
desc: `Videos or images depicting inappropriate touching or nudity of
children under 18 years old`,
}, {
type: "zoophilia", name: "Zoophilia",
type: "zoophilia",
name: "Zoophilia",
desc: `Videos or images depicting of sexual acts being performed on
animals`,
}, {
type: "revenge_porn", name: "Revenge porn",
desc: `The distribution of sexually explicit images or videos of
individuals without their consent`,
type: "revenge_porn",
name: "Revenge porn",
desc: `Sexually explicit images or videos of individuals without their
consent and blackmail content`,
}, {
type: "doxing", name: "Doxing",
type: "doxing",
name: "Doxing",
desc: `Personally identifiable information being shared without the
consent of the owner. This includes things like passport scans,
e-mail addresses, telephone numbers and passwords`,
}, {
type: "malware", name: "Malware",
type: "malware",
name: "Malware",
desc: `Software programs designed to cause harm to computer systems`,
filter: filter_app,
},
@@ -197,8 +200,7 @@ const report_description = () => {
<div class="highlight_yellow" style="text-align: initial;">
<p>
The child abuse category is only for cases where real
children were abused. This is not for fictional works. Use
the 'porn' category in case of animated porn.
children were abused. This is not for fictional works.
</p>
</div>
<br/>

View File

@@ -37,13 +37,11 @@ let file = {
{/if}
</p>
{#if file.abuse_type !== "porn"}
<p>
Pixeldrain has zero tolerance towards abuse. The IP address this file
originated from has been banned and is no longer able to upload files to
pixeldrain.
</p>
{/if}
<p>
Pixeldrain has zero tolerance towards abuse. The IP address this file
originated from has been banned and is no longer able to upload files to
pixeldrain.
</p>
</TextBlock>
{#if file.can_download}