Add removal status for filesystem
This commit is contained in:
@@ -54,6 +54,9 @@ let block_form = {
|
||||
jresp.files_blocked.forEach(file => {
|
||||
message += "<li>pixeldrain.com/u/" + file + "</li>"
|
||||
})
|
||||
jresp.filesystem_nodes_blocked.forEach(file => {
|
||||
message += "<li>pixeldrain.com/d/" + file + "</li>"
|
||||
})
|
||||
message += "</ul>"
|
||||
|
||||
return {success: true, message: message}
|
||||
|
@@ -14,7 +14,9 @@ export let fs_navigator
|
||||
class:button_highlight={state.base_index === i}
|
||||
on:click|preventDefault={() => {fs_navigator.navigate(node.path, true)}}
|
||||
>
|
||||
{#if shared}
|
||||
{#if node.abuse_type !== undefined}
|
||||
<i class="icon small">block</i>
|
||||
{:else if shared}
|
||||
<i class="icon small">share</i>
|
||||
{/if}
|
||||
<div class="node_name" class:base={state.base_index === i}>
|
||||
|
@@ -2,6 +2,7 @@
|
||||
import { createEventDispatcher } from "svelte";
|
||||
import { domain_url } from "../../util/Util.svelte";
|
||||
import CopyButton from "../../layout/CopyButton.svelte";
|
||||
import { formatDate } from "../../util/Formatting.svelte";
|
||||
|
||||
let dispatch = createEventDispatcher()
|
||||
export let shared
|
||||
@@ -41,6 +42,16 @@ const toggle_example = () => {
|
||||
</script>
|
||||
|
||||
<h2>Share this file/directory</h2>
|
||||
|
||||
{#if file.abuse_type !== undefined}
|
||||
<div class="highlight_red">
|
||||
This file or directory has received an abuse report. It cannot be
|
||||
shared.<br/>
|
||||
Type of abuse: {file.abuse_type}<br/>
|
||||
Report time: {formatDate(file.abuse_report_time, true, true, true)}
|
||||
</div>
|
||||
{/if}
|
||||
|
||||
<p>
|
||||
When a file or directory is shared it can be accessed through a
|
||||
unique link. You can get the URL with the 'Copy link' button on
|
||||
|
@@ -6,6 +6,7 @@ import ListView from './ListView.svelte'
|
||||
import GalleryView from './GalleryView.svelte'
|
||||
import Button from '../../layout/Button.svelte';
|
||||
import FileImporter from './FileImporter.svelte';
|
||||
import { formatDate } from '../../util/Formatting.svelte';
|
||||
let dispatch = createEventDispatcher()
|
||||
|
||||
export let fs_navigator
|
||||
@@ -359,6 +360,16 @@ onMount(() => {
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
|
||||
{#if state.base.abuse_type !== undefined}
|
||||
<div class="highlight_red">
|
||||
This directory has received an abuse report. It cannot be
|
||||
shared.<br/>
|
||||
Type of abuse: {state.base.abuse_type}<br/>
|
||||
Report time: {formatDate(state.base.abuse_report_time, true, true, true)}
|
||||
</div>
|
||||
{/if}
|
||||
|
||||
<slot></slot>
|
||||
|
||||
{#if directory_view === "list"}
|
||||
|
@@ -38,7 +38,10 @@ export let large_icons = false
|
||||
{/if}
|
||||
</td>
|
||||
<td class="node_icons">
|
||||
{#if child.id}
|
||||
|
||||
{#if child.abuse_type !== undefined}
|
||||
<i class="icon" title="This file / directory has received an abuse report. It cannot be shared">block</i>
|
||||
{:else if child.id}
|
||||
<a
|
||||
href="/d/{child.id}"
|
||||
on:click|preventDefault|stopPropagation={() => {dispatch("node_share_click", index)}}
|
||||
|
@@ -98,12 +98,14 @@ onMount(() => {
|
||||
<td>
|
||||
{#if row.event === "file_instance_blocked"}
|
||||
<a href="/u/{row.file_id}">{row.file_name}</a>
|
||||
{:else if row.event === "filesystem_node_blocked"}
|
||||
<a href="/d/{row.file_id}">{row.file_name}</a>
|
||||
{:else}
|
||||
{row.file_name}
|
||||
{/if}
|
||||
</td>
|
||||
<td>
|
||||
{#if row.event === "file_instance_blocked"}
|
||||
{#if row.event === "file_instance_blocked" || row.event === "filesystem_node_blocked"}
|
||||
Blocked for abuse
|
||||
{:else if row.event === "file_instance_expired"}
|
||||
Expired
|
||||
|
@@ -26,12 +26,12 @@ func (wc *WebController) serveDirectory(w http.ResponseWriter, r *http.Request,
|
||||
if err != nil {
|
||||
if err.Error() == "not_found" || err.Error() == "path_not_found" {
|
||||
wc.serveNotFound(w, r)
|
||||
return
|
||||
} else if err.Error() == "forbidden" {
|
||||
wc.serveForbidden(w, r)
|
||||
return
|
||||
} else if err.Error() == "authentication_required" {
|
||||
http.Redirect(w, r, "/login", http.StatusSeeOther)
|
||||
} else if err.Error() == "unavailable_for_legal_reasons" {
|
||||
wc.serveUnavailableForLegalReasons(w, r)
|
||||
} else {
|
||||
log.Error("Failed to get path: %s", err)
|
||||
wc.templates.Get().ExecuteTemplate(w, "500", td)
|
||||
|
Reference in New Issue
Block a user