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